[data-theme=dark] .icon-moon[data-astro-cid-x3pjskd3]{display:block}[data-theme=dark] .icon-sun[data-astro-cid-x3pjskd3],[data-theme=light] .icon-moon[data-astro-cid-x3pjskd3]{display:none}[data-theme=light] .icon-sun[data-astro-cid-x3pjskd3]{display:block}.theme-toggle--preview[data-astro-cid-x3pjskd3]{cursor:default}.seasonal-switcher[data-astro-cid-chvwhj25]{display:flex;align-items:center;gap:var(--spacing-s)}select[data-astro-cid-chvwhj25]{appearance:none;background:var(--bg-secondary);border:2px solid var(--border);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);padding-right:calc(var(--spacing-lg) + 4px);font-family:var(--font-family-primary);font-size:var(--font-size-metadata);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);border-radius:0;box-shadow:2px 2px 0 0 var(--border);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}select[data-astro-cid-chvwhj25]:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 0 var(--border)}select[data-astro-cid-chvwhj25]:focus{outline:none;border-color:var(--accent);box-shadow:3px 3px 0 0 var(--accent)}.dev-badge[data-astro-cid-chvwhj25]{background:var(--accent);color:var(--text-on-accent);font-size:10px;font-weight:var(--font-weight-bold);padding:2px 6px;letter-spacing:.5px;border-radius:0;border:2px solid var(--border)}@media(max-width:640px){.seasonal-switcher[data-astro-cid-chvwhj25]{display:none}}[data-theme=dark] select[data-astro-cid-chvwhj25]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23f3f4f6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/SpaceGrotesk-Variable.woff2) format("woff2");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/SourceCodePro.woff2) format("woff2");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--spacing-xs: 4px;--spacing-2xs: 6px;--spacing-s: 8px;--spacing-sm: 12px;--spacing-md: 16px;--spacing-md-lg: 20px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xl-2xl: 40px;--spacing-2xl: 48px;--spacing-3xl: 64px;--icon-size-sm: 16px;--icon-size-md: 20px;--icon-size-lg: 24px;--font-family-primary: Space Grotesk;--font-family-mono: Source Code Pro, monospace;--font-family-logo: Source Code Pro, monospace;--font-size-h1: 40px;--font-size-eyebrow: 12px;--font-size-h3: 18px;--font-size-h4: 16px;--font-size-hero-body: 18px;--font-size-body: 15px;--font-size-code: 14px;--font-size-card-body: 15px;--font-size-small: 14px;--font-size-metadata: 13px;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-black: 900;--line-height-h1: 48px;--line-height-eyebrow: 48px;--line-height-h3: 27px;--line-height-h4: 27px;--line-height-body: 27px;--line-height-code: 27px;--line-height-metadata: 20.8px;--line-height-tight: 48px;--border-width-small: 2px;--border-width-standard: 4px;--border-radius-none: 0px;--shadow-offset-card: 4px;--shadow-offset-card-hover: 8px;--container-max-width: 800px;--site-padding-mobile: 24px;--site-padding-desktop: 32px;--transition-fast: .1s;--transition-normal: .3s;--opacity-disabled: .5;--cursor-disabled: not-allowed;--focus-ring-width: 2px;--focus-ring-offset: 2px;--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 300;--z-modal: 400;--z-tooltip: 500;--z-toast: 600;--opacity-0: 0;--opacity-25: .25;--opacity-50: .5;--opacity-75: .75;--opacity-100: 1;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--ease-default: cubic-bezier(.4, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--radius-none: 0;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--radius-full: 9999px;--button-bg: var(--accent);--button-text: var(--text-on-accent);--button-border: var(--accent);--button-bg-hover: var(--accent-hover);--button-text-hover: var(--text-on-accent);--button-bg-disabled: var(--bg-tertiary);--button-text-disabled: var(--text-muted);--card-bg: var(--bg-secondary);--card-border: var(--border);--input-bg: var(--bg-secondary);--input-border: var(--border);--input-border-focus: var(--accent);--input-border-error: var(--color-error);--input-text: var(--text-primary);--input-placeholder: var(--text-muted);--link-color: var(--accent);--link-color-hover: var(--accent-hover);--link-color-visited: var(--accent-secondary);--ds-preview-light-bg: #f3f4f6;--ds-preview-light-text: #111827;--ds-preview-dark-bg: #111111;--ds-preview-dark-text: #f3f4f6;--ds-preview-dark-border: #f3f4f6;--bg-primary: #f3f4f6;--bg-secondary: #ffffff;--bg-tertiary: #e5e7eb;--text-primary: #111827;--text-secondary: #374151;--text-muted: #6b7280;--text-on-accent: #ffffff;--accent: #ff4800;--accent-hover: #000000;--accent-light: #fff7ed;--accent-secondary: #4f46e5;--accent-secondary-hover: #4338ca;--border: #111827;--color-error: #dc2626;--color-error-light: #fef2f2;--color-success: #16a34a;--color-success-light: #f0fdf4;--color-warning: #d97706;--color-warning-light: #fffbeb;--callout-bg: #ffffff;--callout-gradient-opacity: .15;--callout-note: #3b82f6;--callout-note-rgb: 59, 130, 246;--callout-tip: #14b8a6;--callout-tip-rgb: 20, 184, 166;--callout-warning: #f59e0b;--callout-warning-rgb: 245, 158, 11;--callout-important: #a855f7;--callout-important-rgb: 168, 85, 247;--callout-caution: #ef4444;--callout-caution-rgb: 239, 68, 68;--code-bg: var(--bg-primary);--code-border: var(--border);--code-text: var(--accent);--code-block-bg: var(--bg-primary);--code-block-header-bg: var(--bg-secondary);--prompt-block-top-gradient-end: var(--accent-light)}[data-theme=dark]{--bg-primary: #111111;--bg-secondary: #1a1a1a;--bg-tertiary: #262626;--text-primary: #f3f4f6;--text-secondary: #9ca3af;--text-muted: #6b7280;--text-on-accent: #111111;--accent: #bef264;--accent-hover: #ffffff;--accent-light: rgba(190, 242, 100, .1);--accent-secondary: #c084fc;--accent-secondary-hover: #a855f7;--border: #4b5563;--color-error: #f87171;--color-error-light: rgba(248, 113, 113, .1);--color-success: #4ade80;--color-success-light: rgba(74, 222, 128, .1);--color-warning: #fbbf24;--color-warning-light: rgba(251, 191, 36, .1);--callout-bg: #1a1a1a;--callout-gradient-opacity: .2;--callout-note: #60a5fa;--callout-note-rgb: 96, 165, 250;--callout-tip: #2dd4bf;--callout-tip-rgb: 45, 212, 191;--callout-warning: #fbbf24;--callout-warning-rgb: 251, 191, 36;--callout-important: #c084fc;--callout-important-rgb: 192, 132, 252;--callout-caution: #f87171;--callout-caution-rgb: 248, 113, 113;--code-bg: #1e1e1e;--code-border: #3a3a3a;--code-text: #5eead4;--code-block-bg: #242424;--code-block-header-bg: #252525;--prompt-block-top-gradient-end: #0f4c3c}:root{--container-max-width-wide: 1200px;--card-shadow: var(--shadow-offset-card) var(--shadow-offset-card) 0px 0px var(--border);--card-shadow-hover: var(--shadow-offset-card-hover) var(--shadow-offset-card-hover) 0px 0px var(--border);--radius: var(--border-radius-none);--transition-default: .2s;--hero-gradient: radial-gradient(var(--bg-tertiary) 1.5px, transparent 1.5px);--hero-overlay-color: var(--text-primary);--hero-photo-shadow-rgb: 0 0 0;--hero-photo-text-rgb: 255 255 255;--hero-photo-overlay-strong: rgb(var(--hero-photo-shadow-rgb) / .85);--hero-photo-overlay-mid: rgb(var(--hero-photo-shadow-rgb) / .6);--hero-photo-overlay-soft: rgb(var(--hero-photo-shadow-rgb) / .2);--hero-photo-overlay-mobile-strong: rgb(var(--hero-photo-shadow-rgb) / .88);--hero-photo-title: rgb(var(--hero-photo-text-rgb));--hero-photo-text-muted: rgb(var(--hero-photo-text-rgb) / .8);--hero-photo-social-bg: rgb(var(--hero-photo-text-rgb) / .1);--hero-photo-social-border: rgb(var(--hero-photo-text-rgb) / .25);--hero-photo-social-text: rgb(var(--hero-photo-text-rgb) / .9);--hero-photo-social-shadow: rgb(var(--hero-photo-text-rgb) / .3);--hero-photo-greeting-light: var(--accent);--hero-scroll-overlay-strong: rgb(var(--hero-photo-shadow-rgb) / .95);--hero-scroll-indicator-text: rgb(var(--hero-photo-text-rgb) / .6);--hero-scroll-indicator-border: rgb(var(--hero-photo-text-rgb) / .3);--hero-scroll-indicator-bg: rgb(var(--hero-photo-text-rgb) / .05);--header-bg-rgb: 255 255 255;--header-border-rgb: 0 0 0;--header-bg-alpha: .75;--header-border-alpha: .08;--header-bg: rgb(var(--header-bg-rgb) / var(--header-bg-alpha));--header-border: rgb(var(--header-border-rgb) / var(--header-border-alpha));--site-header-block-size: calc(2 * var(--spacing-lg) + 1.5rem)}[data-theme=dark]{--card-shadow: var(--shadow-offset-card) var(--shadow-offset-card) 0px 0px var(--bg-primary);--card-shadow-hover: var(--shadow-offset-card-hover) var(--shadow-offset-card-hover) 0px 0px var(--bg-primary);--hero-gradient: radial-gradient(var(--bg-tertiary) 1.5px, transparent 1.5px);--hero-overlay-color: var(--bg-primary);--header-bg-rgb: 17 17 17;--header-border-rgb: 255 255 255}*{margin:0;padding:0;box-sizing:border-box}html{width:100%;max-width:100vw;position:relative}body{font-family:Space Grotesk,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size-adjust:.52;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;transition:background .3s ease,color .3s ease;width:100%;max-width:100vw;position:relative}img,svg,video,iframe,embed,object{max-width:100%;height:auto}pre,code{max-width:100%}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--spacing-lg);width:100%}.container-wide{max-width:var(--container-max-width-wide);margin:0 auto;padding:0 var(--spacing-lg);width:100%}.u-hidden{display:none!important}.grid-cards{display:grid;gap:var(--grid-gap, var(--spacing-lg));grid-template-columns:repeat(auto-fit,minmax(var(--grid-min-width, 280px),1fr))}.grid-cards--editorial{--grid-min-width: 280px}.grid-cards--compact{--grid-min-width: 200px;--grid-gap: var(--spacing-md)}.card{display:flex;flex-direction:column;position:relative;background:var(--card-bg);padding:var(--card-padding, var(--spacing-lg));border:var(--border-width-small) solid var(--card-border);border-radius:var(--border-radius-none);box-shadow:var(--card-shadow);transition:transform var(--transition-fast),box-shadow var(--transition-fast);text-decoration:none;color:inherit;cursor:pointer}.card:hover{transform:translate(-2px,-2px);box-shadow:var(--card-shadow-hover)}a.card{--card-link-tilt: -1.2deg;transform:rotate(var(--card-link-tilt));transform-origin:center;transition:transform var(--transition-normal) var(--ease-out),box-shadow var(--transition-fast)}a.card:nth-of-type(4n+2){--card-link-tilt: .8deg}a.card:nth-of-type(4n+3){--card-link-tilt: -.6deg}a.card:nth-of-type(4n+4){--card-link-tilt: 1.1deg}a.card:hover{transform:translate(-2px,-2px) rotate(0)}.card--compact{--card-padding: var(--spacing-md)}.card-title{font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:var(--font-weight-bold);line-height:1.3;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.card-description{font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--text-secondary);margin-bottom:var(--spacing-md)}.card-footer{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:auto;padding-top:var(--spacing-md);border-top:var(--border-width-small) solid var(--card-border);font-size:var(--font-size-metadata);color:var(--text-muted)}.card-footer--borderless{border-top:none;padding-top:0}.card-meta,.post-meta{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:auto;font-size:var(--font-size-metadata);color:var(--text-muted)}.badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-metadata);font-weight:var(--font-weight-semibold);line-height:1;border:var(--border-width-small) solid var(--border);border-radius:var(--border-radius-none);white-space:nowrap}.badge-default{background-color:var(--bg-secondary);color:var(--text-primary)}.badge-accent{background-color:var(--accent);color:var(--bg-primary)}.badge-outline{background-color:transparent;color:var(--text-secondary);border-style:dashed}.badge-tag{font-family:var(--font-family-mono);font-size:var(--font-size-eyebrow);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em;color:var(--accent);background:var(--accent-light);padding:var(--spacing-2xs) var(--spacing-s);border-color:var(--accent)}[data-theme=dark] .badge-accent{color:var(--bg-primary)}.post-list-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-lg) 0;border-bottom:var(--border-width-small) solid var(--border);text-decoration:none;color:inherit}.post-list-item:first-child{border-top:var(--border-width-small) solid var(--border)}.post-list-item:hover .post-list-title{color:var(--accent)}.post-list-title{font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:var(--font-weight-bold);color:var(--text-primary);line-height:1.3;transition:color var(--transition-fast)}.post-list-excerpt{font-size:var(--font-size-body);color:var(--text-secondary);line-height:var(--line-height-body);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.post-list-meta{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-xs);font-size:var(--font-size-metadata);color:var(--text-muted);font-family:var(--font-family-mono)}.post-list-meta-item{display:flex;align-items:center;gap:var(--spacing-xs)}.post-list-tags{display:flex;gap:var(--spacing-xs);flex-wrap:wrap;margin-top:var(--spacing-xs)}.post-header-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-md)}@media(max-width:640px){.post-list-item{padding:var(--spacing-md) 0}}header{padding:var(--spacing-lg) 0;border-bottom:1px solid var(--header-border, var(--border));position:sticky;top:0;background:var(--header-bg, var(--bg-primary));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:100}.header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xl);min-width:0}.logo{font-family:Source Code Pro,monospace;font-size:1.5rem;font-weight:900;color:var(--text-primary);text-decoration:none;letter-spacing:-1px;display:flex;align-items:center}.logo:after{content:".dev";color:var(--accent)}.header-actions{display:flex;align-items:center;gap:var(--spacing-md);min-width:0;flex-shrink:0}.theme-toggle{background:none;border:none;cursor:pointer;padding:var(--spacing-s);transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:40px;height:40px}.theme-toggle:hover i[data-lucide],.theme-toggle:hover svg{transform:scale(1.2);color:var(--accent);filter:drop-shadow(0 0 4px var(--accent))}.theme-toggle i[data-lucide],.theme-toggle svg{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--text-secondary);transition:transform .2s ease,color .2s ease,filter .2s ease}.theme-toggle-disabled{display:flex;align-items:center;gap:var(--spacing-s);padding:var(--spacing-s) var(--spacing-sm);border-radius:var(--border-radius-none);opacity:.6;cursor:not-allowed}.theme-toggle-label{font-size:.75rem;color:var(--text-muted);letter-spacing:.5px;font-weight:500}.theme-toggle-disabled i[data-lucide],.theme-toggle-disabled svg{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--text-muted)}.back-link{display:flex;align-items:center;gap:var(--spacing-2xs);font-size:.875rem;color:var(--text-secondary);text-decoration:none;padding:var(--spacing-s) var(--spacing-sm);border-radius:var(--border-radius-none);transition:all var(--transition-fast)}.back-link:hover{background:var(--bg-tertiary);color:var(--accent)}.back-link i[data-lucide],.back-link svg{width:var(--icon-size-sm);height:var(--icon-size-sm);stroke-width:2}.header-nav{display:flex;align-items:center;gap:var(--spacing-lg);flex:1;justify-content:flex-end;margin-right:var(--spacing-xl)}.header-nav a{font-size:.9375rem;color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.header-nav a:hover{color:var(--accent)}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--spacing-s);align-items:center;justify-content:center;width:40px;height:40px}.mobile-menu-toggle svg{color:var(--text-secondary);transition:color var(--transition-fast)}.mobile-menu-toggle:hover svg{color:var(--accent)}.mobile-menu-toggle .icon-menu-close,.mobile-menu-toggle[aria-expanded=true] .icon-menu-open{display:none}.mobile-menu-toggle[aria-expanded=true] .icon-menu-close{display:block}.mobile-nav{display:none;flex-direction:column;gap:0;padding:0 var(--spacing-md);border-top:1px solid var(--header-border, var(--border));background:var(--header-bg, var(--bg-primary));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.mobile-nav a{display:block;padding:var(--spacing-md) 0;font-size:1rem;font-weight:500;color:var(--text-secondary);text-decoration:none;border-bottom:1px solid var(--header-border, var(--border));transition:color var(--transition-fast)}.mobile-nav a:last-child{border-bottom:none}.mobile-nav a:hover{color:var(--accent)}.mobile-nav[aria-hidden=false]{display:flex}@media(max-width:640px){body.page-post header{position:static}.header-content{gap:var(--spacing-sm)}.header-actions{gap:var(--spacing-s)}.seasonal-switcher,.header-nav{display:none}.mobile-menu-toggle{display:flex}}.hero-wrapper{margin:0;padding:0;position:relative;overflow:hidden;width:100vw;max-width:100vw;box-sizing:border-box;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;background-size:cover;background-position:center 20%;background-repeat:no-repeat;background-color:var(--bg-primary)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,var(--hero-photo-overlay-strong) 0%,var(--hero-photo-overlay-mid) 40%,var(--hero-photo-overlay-soft) 70%,transparent 100%);z-index:1;pointer-events:none}.hero-content-wrap{position:relative;z-index:2;display:flex;align-items:flex-end;min-height:100vh;min-height:100dvh;padding:0 var(--spacing-2xl) var(--spacing-3xl);max-width:var(--container-max-width-wide);margin:0 auto}.hero{padding:0 0 var(--spacing-2xl);position:relative;width:100%}.hero-text{max-width:600px}.hero-greeting{font-size:.875rem;color:var(--accent);font-weight:600;margin-bottom:8px;letter-spacing:2px;text-transform:uppercase}[data-theme=light] .hero-wrapper .hero-greeting{color:var(--hero-photo-greeting-light)}.hero-title{font-size:clamp(3rem,8vw,5rem);font-weight:700;margin-bottom:16px;letter-spacing:-2px;color:var(--hero-photo-title);line-height:1.05}.hero-description{font-size:clamp(1rem,2vw,1.25rem);color:var(--hero-photo-text-muted);margin-bottom:32px;max-width:480px;line-height:1.7}.social-links{display:flex;align-items:center;gap:var(--spacing-sm)}.social-links .hero-social-btn{display:inline-flex;align-items:center;justify-content:center;gap:0;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;background:var(--hero-photo-social-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:var(--border-width-small) solid var(--hero-photo-social-border);color:var(--hero-photo-social-text)}.social-links .hero-social-btn .btn-label,.social-links .hero-social-btn .btn-icon-right{display:none}.social-links .hero-social-btn .btn-icon-left{width:20px;height:20px;margin:0}.social-links .hero-social-btn:hover{border-color:var(--accent);color:var(--bg-primary);background:var(--accent);box-shadow:4px 4px 0 0 var(--hero-photo-social-shadow)}.social-links .hero-social-btn .btn-icon :global(svg){display:block;width:20px;height:20px;stroke-width:2}.section{padding:var(--spacing-2xl) 0;border-top:1px solid var(--border)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-title{font-size:.75rem;font-weight:600;letter-spacing:1px;color:var(--text-muted);display:inline-flex;align-items:center;gap:var(--spacing-s);width:fit-content;border-bottom:var(--border-width-standard) solid var(--accent);padding-bottom:var(--spacing-xs)}.section-icon{flex-shrink:0;width:16px;height:16px;stroke-width:2}.section-icon i[data-lucide]{width:100%;height:100%}.section-link{font-size:.875rem;color:var(--accent);text-decoration:none;font-weight:500}.section-link:hover{text-decoration:underline}.posts-search-wrapper{margin-bottom:var(--spacing-xl)}.posts-search-field{position:relative}.posts-search{width:100%;padding:var(--spacing-sm) var(--spacing-lg);padding-left:calc(var(--spacing-lg) + 20px + var(--spacing-sm));background:var(--bg-secondary);border:var(--border-width-small) solid var(--border);border-radius:var(--border-radius-none);font-family:var(--font-family-primary);font-size:var(--font-size-body);color:var(--text-primary);box-shadow:var(--card-shadow);transition:box-shadow var(--transition-fast),border-color var(--transition-fast);box-sizing:border-box}.posts-search::placeholder{color:var(--text-muted)}.posts-search:focus{outline:none;border-color:var(--accent);box-shadow:var(--card-shadow-hover)}.posts-search-icon{position:absolute;left:var(--spacing-lg);top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;display:flex;align-items:center;justify-content:center;width:16px;height:16px;line-height:0}.posts-search-icon svg{display:block;width:16px;height:16px}.posts-count{font-size:var(--font-size-small);color:var(--text-muted);margin-top:var(--spacing-xs);font-family:var(--font-family-mono)}.posts-list{display:flex;flex-direction:column;gap:0}.posts-empty{padding:var(--spacing-xl);text-align:center;color:var(--text-muted);background:var(--bg-secondary);border:2px dashed var(--text-primary)}.posts-no-results{padding:var(--spacing-xl) 0;text-align:center;color:var(--text-muted);font-family:var(--font-family-mono);font-size:var(--font-size-body);border-top:var(--border-width-small) solid var(--border);border-bottom:var(--border-width-small) solid var(--border)}.posts-no-results strong{color:var(--text-primary)}.posts-skeleton{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md)}.post-card-skeleton{padding:var(--spacing-md-lg);background:var(--bg-secondary);border:var(--border-width-small) solid var(--border);border-radius:0;box-shadow:var(--card-shadow)}.skeleton-line{background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--border) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:0;height:1em;margin-bottom:12px}.skeleton-title{width:70%;height:1.5rem;margin-bottom:12px}.skeleton-excerpt{width:100%;height:.9375rem}.skeleton-excerpt:last-of-type{width:80%}.skeleton-meta{width:40%;height:.8125rem;margin-top:8px;margin-bottom:0}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.load-more-container{display:flex;justify-content:center;margin-top:var(--spacing-xl);padding-top:24px}.load-more-icon{width:16px;height:16px;transition:transform .2s ease}.btn:hover .load-more-icon{transform:translateY(2px)}.project-icon{width:24px;height:24px;margin-bottom:var(--spacing-md);color:var(--accent)}.project-icon i[data-lucide],.project-icon svg{width:100%;height:100%;stroke-width:2}.podcast-page-hero,.podcast-episode-page{padding-top:var(--spacing-xl)}.podcast-show-bar{display:grid;gap:var(--spacing-xs);padding-bottom:var(--spacing-lg);border-bottom:var(--border-width-small) solid var(--border)}.podcast-show-bar-title{margin:0;font-size:1.125rem;font-weight:var(--font-weight-semibold);line-height:1.35;color:var(--text-primary)}.podcast-show-bar-desc{margin:0;max-width:52ch;color:var(--text-secondary);font-size:var(--font-size-body);line-height:var(--line-height-body)}.podcast-show-bar-footer{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm) var(--spacing-md);margin-top:var(--spacing-xs);font-family:var(--font-family-mono);font-size:var(--font-size-metadata)}.podcast-show-bar-meta{color:var(--text-muted)}.podcast-show-bar-link{color:var(--text-secondary);text-decoration:none}.podcast-show-bar-link:hover{color:var(--accent);text-decoration:underline}.podcast-episode-index{margin:0;font-family:var(--font-family-mono);font-size:var(--font-size-metadata);color:var(--text-muted)}.podcast-cover,.podcast-episode-artwork{width:100%;border:var(--border-width-small) solid var(--card-border);aspect-ratio:1;object-fit:cover;border-radius:var(--border-radius-none);box-shadow:var(--card-shadow)}.podcast-kicker,.podcast-episode-label{margin:0 0 var(--spacing-sm);font-size:var(--font-size-eyebrow);font-family:var(--font-family-mono);font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.podcast-title,.podcast-episode-title{margin:0 0 var(--spacing-md);font-size:var(--font-size-h1);line-height:var(--line-height-h1);text-transform:none;letter-spacing:-.02em}.podcast-description,.podcast-episode-summary{max-width:60ch;margin:0;color:var(--text-secondary);font-size:var(--font-size-body);line-height:var(--line-height-body)}.podcast-actions,.podcast-card-actions,.podcast-episode-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.podcast-featured-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-metadata);color:var(--text-muted)}.podcast-featured-meta span{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.podcast-episode-feed,.podcast-home-feed{display:flex;flex-direction:column;border:var(--border-width-small) solid var(--border);background:var(--bg-secondary);box-shadow:var(--card-shadow)}.podcast-episode-card--row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:var(--spacing-md);align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:var(--border-width-small) solid var(--border);transition:background-color var(--transition-fast)}.podcast-episode-card--row:last-child{border-bottom:none}.podcast-episode-card--row:hover{background:var(--bg-tertiary)}.podcast-episode-card--featured{display:grid;grid-template-columns:minmax(140px,200px) minmax(0,1fr);gap:var(--spacing-lg);align-items:start;cursor:default}.podcast-episode-card--featured:hover{transform:none;box-shadow:var(--card-shadow)}.podcast-episode-card-artwork-link{display:block;color:inherit;text-decoration:none;flex-shrink:0}.podcast-episode-card-artwork{display:block;width:72px;height:72px;object-fit:cover;border:var(--border-width-small) solid var(--border);border-radius:var(--border-radius-none);box-shadow:var(--shadow-offset-card) var(--shadow-offset-card) 0 0 var(--border);background:var(--bg-primary)}.podcast-episode-card-artwork--featured{width:100%;height:auto;aspect-ratio:1;max-width:200px}.podcast-episode-card-body{display:grid;gap:var(--spacing-xs);min-width:0}.podcast-episode-card-title{margin:0;font-size:clamp(1rem,2vw,1.125rem);font-weight:var(--font-weight-semibold);line-height:1.35;color:var(--text-primary)}.podcast-episode-card--featured .podcast-episode-card-title{font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:var(--font-weight-bold)}.podcast-episode-card-title a{color:inherit;text-decoration:none}.podcast-episode-card-title a:hover{color:var(--accent)}.podcast-episode-card-summary{margin:0;color:var(--text-secondary);font-size:var(--font-size-body);line-height:var(--line-height-body);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.podcast-episode-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-sm) var(--spacing-md);font-family:var(--font-family-mono);font-size:var(--font-size-metadata);color:var(--text-muted)}.podcast-episode-card-meta span{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.podcast-episode-card-meta span:first-child{color:var(--text-muted)}.podcast-episode-card--featured .podcast-episode-actions{margin-top:var(--spacing-sm);margin-bottom:0}.podcast-episode-card-play.podcast-episode-actions{margin:0;width:auto}.podcast-episode-actions--play-only{flex-wrap:nowrap}.podcast-episode-action-icon--play{width:44px;height:44px;background:var(--bg-primary);box-shadow:var(--shadow-offset-card) var(--shadow-offset-card) 0 0 var(--border);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.podcast-episode-action-icon--play:hover{transform:translate(-2px,-2px);box-shadow:var(--card-shadow-hover);color:var(--accent)}.podcast-copy,.podcast-episode-body{display:grid;gap:var(--spacing-md)}.podcast-episode-header{display:grid;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.podcast-showcase{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:var(--spacing-xl);align-items:center}.podcast-player-block{display:grid;gap:var(--spacing-sm);width:100%;margin-bottom:var(--spacing-xl)}.podcast-player-kicker,.podcast-sticky-kicker{margin:0;font-size:var(--font-size-eyebrow);font-family:var(--font-family-mono);font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.podcast-player{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md);width:100%;margin-bottom:0;padding:var(--spacing-md) var(--spacing-lg);background:var(--card-bg);border:var(--border-width-small) solid var(--card-border);box-shadow:var(--card-shadow)}.podcast-player-play{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:0;border:var(--border-width-small) solid var(--card-border);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:var(--shadow-offset-card) var(--shadow-offset-card) 0 0 var(--border)}.podcast-player-play:hover{transform:translate(-2px,-2px);box-shadow:var(--card-shadow-hover)}.podcast-player-play:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.podcast-player-icon{display:inline-flex}.podcast-player-icon--pause,.podcast-player-play.is-playing .podcast-player-icon--play{display:none}.podcast-player-play.is-playing .podcast-player-icon--pause{display:inline-flex}.podcast-player-seek{flex:1 1 180px;min-width:0;height:6px;margin:0;appearance:none;background:var(--border);border:var(--border-width-small) solid var(--card-border);cursor:pointer}.podcast-player-seek::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border:var(--border-width-small) solid var(--card-border);background:var(--accent);cursor:pointer}.podcast-player-seek::-moz-range-thumb{width:14px;height:14px;border:var(--border-width-small) solid var(--card-border);background:var(--accent);cursor:pointer}.podcast-player-seek:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.podcast-player-time{flex-shrink:0;min-width:7ch;font-family:var(--font-family-mono);font-size:var(--font-size-metadata);color:var(--text-muted);text-align:right}.podcast-player--compact{flex:1 1 220px;min-width:0;padding:0;background:transparent;border:0;box-shadow:none}.podcast-sticky-player{position:fixed;inset-inline:0;bottom:0;z-index:120;border-top:var(--border-width-small) solid var(--card-border);background:var(--card-bg);box-shadow:0 -4px 0 0 var(--border);transform:translateY(100%);transition:transform var(--transition-fast);pointer-events:none}.podcast-sticky-player.is-visible{transform:translateY(0);pointer-events:auto}#podcast-global-audio{display:none}body.podcast-sticky-visible{padding-bottom:96px}.podcast-sticky-player-inner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md);width:min(1100px,100%);margin-inline:auto;padding:var(--spacing-md) var(--spacing-lg)}.podcast-sticky-artwork{width:48px;height:48px;flex-shrink:0;border:var(--border-width-small) solid var(--card-border);object-fit:cover}.podcast-sticky-copy{flex:1 1 160px;min-width:0}.podcast-sticky-title{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.podcast-sticky-link{flex-shrink:0;font-family:var(--font-family-mono);font-size:var(--font-size-metadata);color:var(--accent);text-decoration:none}.podcast-sticky-link:hover{text-decoration:underline}@media(max-width:700px){.podcast-sticky-player-inner{display:grid;grid-template-columns:48px 1fr;grid-template-areas:"art copy" "controls controls" "link link"}.podcast-sticky-artwork{grid-area:art}.podcast-sticky-copy{grid-area:copy}.podcast-sticky-player .podcast-player--compact{grid-area:controls;width:100%}.podcast-sticky-link{grid-area:link}}.podcast-episode-actions{width:100%;flex-wrap:wrap;align-items:center;justify-content:flex-start;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md)}.podcast-episode-action-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;padding:0;border:var(--border-width-small) solid var(--card-border);border-radius:var(--border-radius-none);background:transparent;color:var(--text-muted);text-decoration:none;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.podcast-episode-action-icon:hover{color:var(--accent);border-color:var(--accent)}.podcast-episode-action-icon:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.podcast-showcase,.podcast-episode-card.podcast-episode-card--featured,.podcast-episode-detail{cursor:default}.podcast-episode-detail:hover,.podcast-showcase:hover{transform:none;box-shadow:var(--card-shadow)}.podcast-copy{align-content:center}.podcast-episode-layout .podcast-episode-summary{max-width:58ch;margin:0}.podcast-episode-layout{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:var(--spacing-xl);align-items:start}.podcast-episode-layout .podcast-copy{align-content:start}@media(max-width:900px){.podcast-showcase,.podcast-episode-card--featured,.podcast-episode-layout{grid-template-columns:1fr}.podcast-episode-card--featured .podcast-episode-card-artwork--featured{max-width:200px;margin-inline:auto}.podcast-episode-card--row{grid-template-columns:64px minmax(0,1fr) auto;padding:var(--spacing-md)}.podcast-episode-card-artwork{width:64px;height:64px}.podcast-cover--hero{max-width:240px;margin-inline:auto}.podcast-episode-actions{flex-wrap:wrap}.podcast-episode-actions>*{flex-basis:auto}.podcast-cover,.podcast-episode-artwork{max-width:320px;margin-inline:auto}}@media(max-width:640px){.podcast-title,.podcast-episode-title{font-size:2rem}.podcast-actions{flex-direction:column;align-items:stretch}.podcast-actions :global(.apple-podcasts-link),.podcast-actions :global(.btn){width:100%;justify-content:center}.podcast-featured-meta{flex-direction:column;gap:var(--spacing-sm)}}.about-content{max-width:700px;margin:0 auto}.about-intro{margin-bottom:var(--spacing-3xl);padding-bottom:var(--spacing-lg);border-bottom:var(--border-width-small) solid var(--border)}.about-lead{font-size:1.25rem;line-height:1.6;color:var(--text-primary);font-weight:var(--font-weight-medium);margin:0}.about-lead+.about-lead{margin-top:var(--spacing-md);font-size:1.1rem}.about-section{margin-bottom:var(--spacing-2xl)}.about-section :global(.section-header){margin-bottom:var(--spacing-md)}.about-section p{font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--text-secondary);margin:0 0 var(--spacing-md)}.about-list{list-style:none;padding:0;margin:0}.about-list li{padding:var(--spacing-sm) 0;font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--text-secondary);border-bottom:var(--border-width-small) solid var(--border)}.about-list li:last-child{border-bottom:none}.about-list strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.about-muted{margin-top:var(--spacing-md);color:var(--text-muted);font-size:var(--font-size-metadata)}.about-contact{margin-top:var(--spacing-3xl);padding-top:var(--spacing-xl);border-top:var(--border-width-standard) solid var(--border)}.social-links-about{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-top:var(--spacing-md)}@media(max-width:640px){.about-lead{font-size:1.125rem}.social-links-about{flex-direction:column}.social-links-about .btn{width:100%}}footer{padding:var(--spacing-xl) 0;border-top:1px solid var(--border);text-align:center}.footer-content{display:flex;flex-direction:column;gap:var(--spacing-s);align-items:center}.footer-text{font-size:.875rem;color:var(--text-muted)}.footer-version{font-size:.625rem;color:var(--text-muted);font-family:var(--font-family-logo);opacity:.5;font-weight:300}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl)}.loading-message{color:var(--text-muted);margin-top:var(--spacing-md)}.spinner,.loading-spinner{width:var(--spinner-size, var(--icon-size-lg));height:var(--spinner-size, var(--icon-size-lg));flex-shrink:0;box-sizing:border-box;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.spinner--sm{--spinner-size: var(--icon-size-sm)}@keyframes spin{to{transform:rotate(360deg)}}.anchor-link{position:absolute;width:0;height:0;overflow:hidden;display:block}.breadcrumb{max-width:var(--container-max-width-wide);margin:0 auto;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-metadata);color:var(--text-secondary);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);background:var(--bg-secondary);border-bottom:1px solid var(--border)}.breadcrumb-nav{display:flex;align-items:center;gap:var(--spacing-2xs);flex-wrap:wrap;min-width:0;flex:1}.breadcrumb a{color:var(--text-secondary);text-decoration:none;transition:color .2s ease}.breadcrumb a:hover{color:var(--accent)}.breadcrumb-separator{color:var(--text-tertiary);font-size:var(--font-size-metadata);user-select:none}.breadcrumb-current{color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb-metadata{color:var(--text-secondary);font-size:var(--font-size-metadata);white-space:nowrap;flex-shrink:0}.post-hero-wrapper{position:relative;width:100%;margin:0;overflow:hidden}.post-hero-image{width:100%;height:180px;object-fit:cover;display:block}.post-header{padding:var(--spacing-lg) var(--spacing-lg) 0 var(--spacing-lg);margin-bottom:0;position:relative}.post-meta-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);flex-wrap:wrap;padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--border)}.post-meta-bar-start{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;min-width:0;flex:1}.post-meta-bar-end{display:flex;align-items:center;flex-shrink:0}.post-meta-bar .breadcrumb{max-width:none;margin:0;padding:0;background:transparent;border-bottom:none;gap:var(--spacing-2xs)}.post-meta-date{color:var(--text-secondary);font-size:var(--font-size-metadata);white-space:nowrap}.post-meta-date:before{content:"·";margin-right:var(--spacing-md);color:var(--text-tertiary)}.post-meta-secondary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md);padding-bottom:var(--spacing-md)}.post-title-main{font-size:1.85rem;font-weight:700;line-height:1.2;color:var(--text-primary);margin:0;padding-bottom:var(--spacing-md);letter-spacing:-.5px}.post-source{display:flex;align-items:center;gap:var(--spacing-s);font-size:var(--font-size-metadata);color:var(--text-secondary)}.post-source svg{color:var(--accent)}.source-label{color:var(--text-secondary)}.source-link{color:var(--accent);text-decoration:none;font-weight:500}.source-link:hover{text-decoration:underline}.post-meta-item i[data-lucide],.post-meta-item svg{width:var(--icon-size-sm);height:var(--icon-size-sm);stroke-width:2;color:var(--text-secondary)}.post-meta-item a{color:var(--text-secondary);text-decoration:none;transition:color .2s}.post-meta-item a:hover{color:var(--accent)}.post-content{padding:0;margin-top:0}.post-content-wrapper{background:var(--bg-secondary);border:none;border-radius:0;padding:var(--spacing-xl-2xl) var(--spacing-lg);box-shadow:none;margin-top:0;--post-h2-marker-width: var(--spacing-lg);--post-h2-marker-gap: var(--spacing-sm);--post-h3-inset: var(--spacing-sm);--post-h3-marker-width: var(--spacing-md);--post-h3-marker-gap: var(--spacing-xs);--post-h4-inset: var(--spacing-lg);--post-list-inset: var(--post-h3-inset);--post-list-marker-width: var(--spacing-md);--post-list-marker-gap: var(--spacing-xs);--post-heading-gap-before: var(--spacing-xl-2xl);--post-heading-gap-after: var(--spacing-md-lg);--post-text-inset: var(--spacing-md);font-family:var(--font-family-primary);font-size:var(--font-size-body);line-height:var(--line-height-body)}.post-content-wrapper h1,.post-content-wrapper h2,.post-content-wrapper h3,.post-content-wrapper h4{margin-top:var(--post-heading-gap-before);margin-bottom:var(--post-heading-gap-after);padding-top:var(--spacing-sm);padding-bottom:var(--spacing-xs);font-weight:700;color:var(--text-primary);line-height:1.3;position:relative}.post-content-wrapper>h1:first-child,.post-content-wrapper>h2:first-child,.post-content-wrapper>h3:first-child,.post-content-wrapper>h4:first-child{margin-top:0;padding-top:0}.post-content-wrapper h1{font-size:2rem;border-bottom:2px solid var(--border);padding-bottom:var(--spacing-sm);padding-inline:var(--post-text-inset)}.post-content-wrapper h2{font-size:1.5rem;margin-top:var(--spacing-2xl);margin-bottom:var(--spacing-lg);color:var(--accent);padding-left:calc(var(--post-text-inset) + var(--post-h2-marker-width) + var(--post-h2-marker-gap));padding-right:var(--post-text-inset)}.post-content-wrapper h2:before{content:"//";position:absolute;left:var(--post-text-inset);width:var(--post-h2-marker-width);padding-right:var(--post-h2-marker-gap);box-sizing:border-box;text-align:right;color:var(--accent-hover);opacity:.7;font-family:monospace;font-weight:300;white-space:nowrap}.post-content-wrapper h3{font-size:1.375rem;margin-top:var(--spacing-xl-2xl);margin-bottom:var(--spacing-md-lg);padding-left:calc(var(--post-text-inset) + var(--post-h3-inset) + var(--post-h3-marker-width) + var(--post-h3-marker-gap));padding-right:var(--post-text-inset)}.post-content-wrapper h3:before{content:"#";position:absolute;left:calc(var(--post-text-inset) + var(--post-h3-inset));width:var(--post-h3-marker-width);padding-right:var(--post-h3-marker-gap);box-sizing:border-box;text-align:right;color:var(--accent);font-size:.9em}.post-content-wrapper h3:has(+.code-block-wrapper),.post-content-wrapper h3:has(+.mermaid-wrapper){display:none}.post-content-wrapper h4{font-size:1.25rem;margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);padding-left:calc(var(--post-text-inset) + var(--post-h4-inset));padding-right:var(--post-text-inset);color:var(--text-secondary)}.post-content-wrapper p{margin-bottom:var(--spacing-lg);padding-inline:var(--post-text-inset);color:var(--text-secondary)}.post-content-wrapper ul,.post-content-wrapper ol{margin-bottom:var(--spacing-md-lg);padding-inline:var(--post-text-inset);color:var(--text-secondary)}.post-content-wrapper ul{list-style:none}.post-content-wrapper ul li{position:relative;padding-left:calc(var(--post-list-marker-width) + var(--post-list-marker-gap))}.post-content-wrapper ul li:before{content:"→";position:absolute;left:0;width:var(--post-list-marker-width);padding-right:var(--post-list-marker-gap);box-sizing:border-box;text-align:right;color:var(--accent);font-weight:700}.post-content-wrapper li{margin-bottom:var(--spacing-s);line-height:1.6}.post-content-wrapper .callout,.post-content-wrapper .content-card{margin-inline:var(--post-text-inset)}.post-content-wrapper blockquote{border-left:var(--border-width-standard) solid var(--accent);background:var(--bg-primary);padding:var(--spacing-md) var(--spacing-md-lg);margin:var(--spacing-lg) var(--post-text-inset);color:var(--text-secondary);font-style:italic;line-height:1.6;border-radius:0 var(--radius-lg) var(--radius-lg) 0}.post-content-wrapper code{background:var(--bg-primary);border:1px solid var(--text-primary);border-radius:0;padding:2px 6px;font-size:.875em;font-family:Monaco,Menlo,Ubuntu Mono,monospace;color:var(--accent)}[data-theme=dark] .post-content-wrapper code{background:var(--code-bg);border-color:var(--code-border);color:var(--code-text)}.post-content-wrapper .code-block-wrapper{position:relative;margin:var(--spacing-lg) var(--post-text-inset);border-radius:0;overflow:hidden;background:var(--bg-primary);border:var(--border-width-small) solid var(--border);box-shadow:var(--card-shadow)}[data-theme=dark] .post-content-wrapper .code-block-wrapper{background:var(--code-block-bg);border-color:var(--code-border)}.post-content-wrapper .code-block-header{display:flex;justify-content:flex-end;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--code-block-header-bg);border-bottom:1px solid var(--code-border);font-size:.75rem}.post-content-wrapper .code-language-name{color:var(--text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-metadata);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.06em}.post-content-wrapper .code-block-copy-btn{display:inline-flex;align-items:center;justify-content:flex-end;flex:0 0 auto;min-height:32px;width:fit-content;max-width:min(100%,18rem);padding:var(--spacing-xs) var(--spacing-sm);font-family:var(--font-family-mono);font-size:var(--font-size-metadata);font-weight:var(--font-weight-semibold);color:var(--text-secondary);background-color:transparent;border:1px solid color-mix(in srgb,var(--code-border) 55%,transparent);border-radius:var(--border-radius-none);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);position:relative}.post-content-wrapper .code-block-copy-btn .code-language-name{white-space:nowrap}.post-content-wrapper .code-block-copy-btn--icon-only{justify-content:center;min-width:32px;padding:var(--spacing-xs);letter-spacing:0;text-transform:none}.post-content-wrapper .code-block-copy-icon{display:block;width:1rem;height:1rem;flex-shrink:0}.post-content-wrapper .code-block-copy-btn .btn-spinner{display:none}.post-content-wrapper .code-block-copy-btn:hover{background-color:color-mix(in srgb,var(--accent-light) 65%,transparent);border-style:solid;border-color:color-mix(in srgb,var(--accent) 70%,transparent);color:var(--accent)}.post-content-wrapper .code-block-copy-btn:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:var(--focus-ring-offset)}.post-content-wrapper .code-block-copy-btn.copied{background-color:var(--color-success-light);border-color:var(--color-success);border-style:solid}.post-content-wrapper .code-block-copy-btn.copied:hover,.post-content-wrapper .code-block-copy-btn.copied:focus-visible{background-color:var(--color-success-light);border-color:var(--color-success);border-style:solid}.post-content-wrapper .code-block-copy-btn.copied,.post-content-wrapper .code-block-copy-btn.copied:hover,.post-content-wrapper .code-block-copy-btn.copied:focus-visible,.post-content-wrapper .code-block-copy-btn.copied .code-language-name{color:var(--color-success)}[data-theme=dark] .post-content-wrapper .code-block-copy-btn:hover:not(.copied){background-color:var(--code-bg)}[data-theme=dark] .post-content-wrapper .code-block-copy-btn.copied,[data-theme=dark] .post-content-wrapper .code-block-copy-btn.copied:hover,[data-theme=dark] .post-content-wrapper .code-block-copy-btn.copied:focus-visible,[data-theme=dark] .post-content-wrapper .code-block-copy-btn.copied .code-language-name{background-color:var(--color-success);border-color:var(--color-success);color:var(--bg-primary)}html:not([data-theme=dark]) .post-content-wrapper .shiki span{color:var(--shiki-light)!important;background-color:var(--shiki-light-bg)!important;font-style:var(--shiki-light-font-style)!important;font-weight:var(--shiki-light-font-weight)!important;text-decoration:var(--shiki-light-text-decoration)!important}html[data-theme=dark] .post-content-wrapper .shiki span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}.post-content-wrapper .code-block-wrapper pre{margin:0;padding:var(--spacing-md-lg) var(--spacing-lg);overflow-x:auto;background:transparent!important;border:none!important}.post-content-wrapper .code-block-wrapper pre code{background:transparent!important;border:none!important;padding:0!important;font-size:.875rem;line-height:1.6}.post-content-wrapper a{color:var(--accent);text-decoration:none;position:relative;z-index:1;font-weight:500}.post-content-wrapper a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--accent);transition:height .2s ease,opacity .2s ease;opacity:.3;z-index:-1}.post-content-wrapper a:hover:after{height:100%;opacity:.15}.post-content-wrapper img{max-width:100%;height:auto;border-radius:var(--radius-lg);margin:var(--spacing-lg) var(--post-text-inset);border:1px solid var(--border)}.post-content-wrapper hr{border:none;border-top:2px dashed var(--border);margin:var(--spacing-xl-2xl) var(--post-text-inset);opacity:.5}.post-content-wrapper strong{font-weight:700;color:var(--text-primary)}.post-content-wrapper em{font-style:italic}.post-content-wrapper .table-wrapper{overflow-x:auto;margin:var(--spacing-lg) var(--post-text-inset);border-radius:0;border:var(--border-width-small) solid var(--border);background:var(--bg-primary);box-shadow:var(--card-shadow)}.post-content-wrapper table{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.6}.post-content-wrapper thead{background:var(--accent-light);border-bottom:var(--border-width-small) solid var(--border)}[data-theme=dark] .post-content-wrapper thead{background:var(--accent-light);border-bottom-color:var(--callout-tip)}.post-content-wrapper th{padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border)}.post-content-wrapper th:last-child{border-right:none}.post-content-wrapper tbody tr{border-bottom:1px solid var(--border);transition:background-color .15s ease}.post-content-wrapper tbody tr:nth-child(2n){background:var(--bg-secondary)}.post-content-wrapper tbody tr:nth-child(odd){background:var(--bg-primary)}.post-content-wrapper tbody tr:hover,[data-theme=dark] .post-content-wrapper tbody tr:hover{background:var(--accent-light)}.post-content-wrapper tbody tr:last-child{border-bottom:none}.post-content-wrapper td{padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);border-bottom:1px solid var(--border)}.post-content-wrapper td:last-child{border-right:none}@media(max-width:768px){.post-content-wrapper .table-wrapper{box-shadow:3px 3px 0 var(--text-primary)}.post-content-wrapper th,.post-content-wrapper td{padding:10px 12px;font-size:.9rem}}.post-content-wrapper .mermaid-wrapper{margin:var(--spacing-xl) var(--post-text-inset);padding:var(--spacing-lg);background:var(--bg-secondary);border:var(--border-width-small) solid var(--border);border-radius:0;overflow-x:auto;box-shadow:var(--card-shadow)}.post-content-wrapper .mermaid{text-align:center;min-width:100%}.blog-post-layout{display:flex;flex-direction:row-reverse;gap:var(--spacing-xl);max-width:var(--container-max-width-wide);margin:0 auto;padding:0 var(--spacing-lg)}.blog-post-sidebar{width:280px;flex-shrink:0;position:sticky;top:0;align-self:flex-start;max-height:calc(100vh - var(--spacing-xl-2xl));overflow-y:auto;padding-bottom:var(--spacing-lg);transition:top .2s ease,max-height .2s ease;scrollbar-width:none;-ms-overflow-style:none}.blog-post-sidebar::-webkit-scrollbar{display:none}.post-title-sticky.show~.blog-post-layout .blog-post-sidebar{top:80px;max-height:calc(100vh - 120px)}.blog-post-content{flex:1;min-width:0}.blog-post-sidebar .blog-post-toc{background:var(--bg-secondary);border:var(--border-width-small) solid var(--border);border-radius:0;padding:var(--spacing-md) var(--spacing-md-lg);max-height:calc(100vh - var(--spacing-xl-2xl));overflow-y:auto;margin-bottom:var(--spacing-lg)}.post-title-sticky.show~.blog-post-layout .blog-post-sidebar .blog-post-toc{max-height:calc(100vh - 120px)}.toc-toggle{display:flex;align-items:center;gap:var(--spacing-s);width:100%;background:none;border:none;cursor:pointer;font-size:var(--font-size-small);font-weight:600;color:var(--text-primary);padding:var(--spacing-s) 0;border-bottom:1px solid var(--border);margin-bottom:0;transition:color .2s}.toc-toggle:hover{color:var(--accent)}.toc-toggle .toggle-icon{width:var(--icon-size-sm);height:var(--icon-size-sm);transition:transform .25s ease;color:var(--text-secondary);flex-shrink:0}.toc-toggle:hover .toggle-icon{color:var(--accent)}.toc-toggle[aria-expanded=true] .toggle-icon{transform:rotate(180deg)}.toc-content{max-height:0;overflow:hidden;transition:max-height .3s ease,margin-top .3s ease;margin-top:0}.toc-content.expanded{max-height:2000px;margin-top:var(--spacing-sm)}.toc-list{list-style:none;padding:0;margin:0}.toc-item{margin:0}.toc-level-2{padding-left:0}.toc-level-3{padding-left:var(--spacing-md-lg)}.toc-level-4{padding-left:var(--spacing-xl-2xl)}.toc-link{display:block;padding:var(--spacing-s) var(--spacing-md);background:var(--bg-secondary);border-radius:0;color:var(--text-secondary);text-decoration:none;font-size:var(--font-size-small);line-height:1.5;transition:color .2s ease,background .2s ease}.toc-link:hover,.toc-link.active{background:var(--accent-light);color:var(--accent);border-left:3px solid var(--accent);padding-left:13px}.toc-link.active{font-weight:500}@media(max-width:900px){.blog-post-layout{flex-direction:column}.blog-post-sidebar{width:100%;position:static}.blog-post-sidebar .blog-post-toc{display:none}}@media(max-width:600px){.post-header{padding:var(--spacing-md) var(--spacing-sm) 0}.post-meta-bar{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.post-meta-bar-end{width:100%}.post-meta-bar-end .prompt-block-inline{max-width:100%;width:100%}.post-title-main{font-size:1.4rem;line-height:1.15;padding-bottom:var(--spacing-sm);letter-spacing:-.3px}.blog-post-layout{padding:0 var(--spacing-sm);gap:var(--spacing-md-lg)}.breadcrumb{padding:var(--spacing-2xs) var(--spacing-md);font-size:var(--font-size-small);gap:var(--spacing-xs)}.post-title-sticky{padding:var(--spacing-md) 0}.post-title-sticky-inner{padding:0 var(--spacing-md);gap:var(--spacing-sm);justify-content:center}.post-title-sticky-text{font-size:1.125rem;text-align:center;max-width:85%}.post-title-sticky-icon{width:var(--icon-size-md);height:var(--icon-size-md)}.post-hero-content-inner{padding:0 var(--spacing-md)}.post-hero-content .post-title{font-size:1.75rem;max-width:100%}.post-hero-meta-bar-inner{padding:0 var(--spacing-md)}.post-meta{font-size:.875rem;max-width:100%}.post-title-sticky-text{max-width:85%}.post-meta-item{gap:var(--spacing-xs)}.post-meta-item i[data-lucide],.post-meta-item svg{width:14px;height:14px}}.post-source{display:flex;align-items:center;gap:var(--spacing-s);margin-top:var(--spacing-sm);font-size:var(--font-size-metadata);color:var(--text-secondary)}.post-source i[data-lucide],.post-source svg{width:16px;height:16px;color:var(--accent)}.post-source .source-link{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--transition-fast);font-weight:500}.post-source .source-link:hover{border-bottom-color:var(--accent)}@media(max-width:600px){.post-source{font-size:.875rem;flex-wrap:wrap}}.prompt-block{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--spacing-sm);padding:var(--spacing-md-lg);margin:var(--spacing-xl-2xl) 0 0 0}.post-content-wrapper .prompt-block{margin-top:var(--spacing-xl-2xl)}.prompt-block-inline{position:relative;width:auto;min-width:0;max-width:min(17.5rem,42vw);margin:0;padding:0;overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none;transition:border-color .2s ease,max-width .25s ease}.prompt-block-inline:has(.prompt-content.expanded){max-width:min(22rem,90vw)}.prompt-block-inline:hover{border-color:var(--border)}.prompt-block-inline .prompt-header{display:flex;align-items:stretch;gap:0;margin-bottom:0}.prompt-block-inline .prompt-toggle{flex:1;min-width:0;min-height:2rem;justify-content:flex-start;gap:var(--spacing-2xs);padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:none;box-shadow:none;color:var(--text-secondary);transition:background-color .15s ease,color .15s ease}.prompt-block-inline .prompt-toggle:hover{background:var(--accent-light);color:var(--text-primary);transform:none;box-shadow:none}.prompt-block-inline .prompt-toggle h3{font-size:.8125rem!important;font-weight:500!important;margin:0;white-space:nowrap}.prompt-block-inline .toggle-icon{width:.875rem;height:.875rem;color:var(--text-secondary)}.prompt-block-inline .prompt-toggle:hover .toggle-icon{color:var(--accent)}.prompt-block-inline .copy-btn-inline{flex-shrink:0;width:2.5rem;min-width:2.5rem;max-width:2.5rem;height:2.5rem;min-height:2.5rem;margin:0;padding:var(--spacing-s);display:flex;align-items:center;justify-content:center;background:none;border:none;box-shadow:none;cursor:pointer;transition:all .2s ease}.prompt-block-inline .copy-btn-inline:hover,.prompt-block-inline .copy-btn-inline:focus-visible{background:none;transform:none;box-shadow:none}.prompt-block-inline .copy-btn-inline:focus-visible{outline:var(--focus-ring-width) solid var(--accent);outline-offset:-1px}.prompt-block-inline .copy-btn-inline .copy-icon,.prompt-block-inline .copy-btn-inline svg{width:var(--icon-size-md);height:var(--icon-size-md);color:var(--text-secondary);flex-shrink:0;transition:transform .2s ease,color .2s ease,filter .2s ease}.prompt-block-inline .copy-btn-inline:hover .copy-icon,.prompt-block-inline .copy-btn-inline:hover svg,.prompt-block-inline .copy-btn-inline:focus-visible .copy-icon,.prompt-block-inline .copy-btn-inline:focus-visible svg{transform:scale(1.2);color:var(--accent);filter:drop-shadow(0 0 4px var(--accent))}.prompt-block-inline .copy-btn-inline.copied .copy-icon,.prompt-block-inline .copy-btn-inline.copied svg{transform:none;color:var(--accent);filter:drop-shadow(0 0 4px var(--accent))}.prompt-block-inline .prompt-content{border:none!important;box-shadow:none!important}.prompt-block-inline .prompt-content.expanded{border-top:1px solid var(--border);padding:0 var(--spacing-sm) var(--spacing-sm);margin-top:0}.prompt-block-inline pre{padding:var(--spacing-sm) 0 0;max-height:min(50vh,20rem);overflow-y:auto;margin:0}.prompt-block-inline pre code{font-size:.75rem!important;color:var(--text-secondary)}.prompt-block-top{position:relative;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--accent-light) 100%);border:3px solid var(--accent);border-radius:var(--spacing-md);padding:0;margin:var(--spacing-xl) auto 0;max-width:800px;width:calc(100% - var(--spacing-2xl));box-shadow:var(--shadow-glow-tip);animation:fade-in .5s ease-in}@keyframes fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .prompt-block-top{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--prompt-block-top-gradient-end) 100%);border-color:var(--accent);box-shadow:var(--shadow-glow-tip-dark)}.prompt-block-top .prompt-header{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);background:transparent}.prompt-block-top .prompt-content{padding:0 var(--spacing-lg) var(--spacing-lg)}.prompt-badge{position:absolute;top:calc(-1 * var(--spacing-sm));right:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-2xs);background:linear-gradient(135deg,var(--accent-secondary) 0%,var(--accent-secondary-hover) 100%);color:var(--bg-secondary);padding:var(--spacing-2xs) var(--spacing-sm);border-radius:var(--spacing-md-lg);font-size:.75rem;font-weight:600;letter-spacing:.5px;box-shadow:var(--shadow-glow-warning);z-index:10}[data-theme=dark] .prompt-badge{background:linear-gradient(135deg,var(--accent-secondary) 0%,var(--color-warning) 100%);box-shadow:var(--shadow-glow-warning-strong)}.prompt-badge i[data-lucide],.prompt-badge svg{width:var(--font-size-small);height:var(--font-size-small);stroke-width:2.5}.prompt-block-top .prompt-header,.prompt-header{margin-bottom:0}.prompt-toggle{display:flex;align-items:center;gap:var(--spacing-sm);background:none;border:none;cursor:pointer;padding:var(--spacing-s) 0;color:var(--text-primary);transition:color .2s;width:100%}.prompt-toggle:hover{color:var(--accent)}.prompt-toggle h3{font-size:1.125rem;font-weight:600;color:inherit;margin:0;flex:1}.toggle-icon{width:var(--icon-size-sm);height:var(--icon-size-sm);transition:transform .25s ease;color:var(--text-secondary);flex-shrink:0}.prompt-toggle:hover .toggle-icon{color:var(--accent)}.toggle-icon i[data-lucide]{width:100%;height:100%}.prompt-toggle[aria-expanded=true] .toggle-icon{transform:rotate(180deg)}.prompt-content{max-height:0;overflow:hidden;transition:max-height .3s ease,margin-top .3s ease;margin-top:0}.prompt-content.expanded{max-height:2000px;margin-top:var(--spacing-md)}.btn.copy-btn.copied,.btn.copy-btn.copied:hover,.btn.copy-btn.copied:focus-visible{background-color:var(--accent);border-color:var(--border);color:var(--text-on-accent)}.prompt-block pre{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--spacing-md);overflow-x:auto;margin:0}[data-theme=dark] .prompt-block pre{background:var(--bg-secondary);border-color:var(--code-border)}.prompt-block pre code{background:none;border:none;padding:0;color:var(--text-secondary);font-size:.8125rem;line-height:1.7;white-space:pre-wrap;word-wrap:break-word;font-family:Monaco,Menlo,Ubuntu Mono,monospace}[data-theme=dark] .prompt-block pre code{color:var(--text-secondary)}.prompt-block-inline pre{background:transparent;border:none;border-radius:0;box-shadow:none;padding:var(--spacing-sm) 0 0}.prompt-feedback{margin-top:var(--spacing-sm);padding:var(--spacing-s) var(--spacing-sm);background:var(--accent-light);border-radius:var(--spacing-2xs);font-size:.875rem;color:var(--accent);text-align:center;opacity:0;transform:translateY(calc(-1 * var(--spacing-s) - 2px));transition:all .3s ease}.prompt-feedback.show{opacity:1;transform:translateY(0)}@media(max-width:900px){.prompt-block-inline{max-width:min(16rem,55vw)}}@media(max-width:600px){.prompt-block-inline .prompt-toggle h3{font-size:.75rem!important}.prompt-block-inline pre code{font-size:.6875rem!important;line-height:1.5}}.error-state{padding:var(--spacing-3xl) var(--spacing-xl);text-align:center;background:var(--bg-secondary);border:var(--border-width-small) solid var(--border);border-radius:var(--border-radius-none);box-shadow:var(--card-shadow)}.error-state h2{font-size:1.5rem;margin-bottom:12px;color:var(--text-primary)}.error-state p{color:var(--text-secondary);margin-bottom:24px}.error-state .back-link{display:inline-flex}.callout{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-lg) 0;border-radius:var(--border-radius-none);border:1px solid color-mix(in srgb,var(--border) 35%,transparent);background:var(--callout-bg);line-height:1.5}.callout-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-none);color:currentColor}.callout-content{flex:1;color:var(--text-secondary)}.callout-note{border-left:var(--border-width-small) solid var(--callout-note);background:linear-gradient(to right,rgba(var(--callout-note-rgb),calc(var(--callout-gradient-opacity) * .55)),var(--callout-bg) 100%)}.callout-note .callout-icon{color:var(--callout-note)}.callout-tip{border-left:var(--border-width-small) solid var(--callout-tip);background:linear-gradient(to right,rgba(var(--callout-tip-rgb),calc(var(--callout-gradient-opacity) * .55)),var(--callout-bg) 100%)}.callout-tip .callout-icon{color:var(--callout-tip)}.callout-warning{border-left:var(--border-width-small) solid var(--callout-warning);background:linear-gradient(to right,rgba(var(--callout-warning-rgb),calc(var(--callout-gradient-opacity) * .55)),var(--callout-bg) 100%)}.callout-warning .callout-icon{color:var(--callout-warning)}.callout-important{border-left:var(--border-width-small) solid var(--callout-important);background:linear-gradient(to right,rgba(var(--callout-important-rgb),calc(var(--callout-gradient-opacity) * .55)),var(--callout-bg) 100%)}.callout-important .callout-icon{color:var(--callout-important)}.callout-caution{border-left:var(--border-width-small) solid var(--callout-caution);background:linear-gradient(to right,rgba(var(--callout-caution-rgb),calc(var(--callout-gradient-opacity) * .55)),var(--callout-bg) 100%)}.callout-caution .callout-icon{color:var(--callout-caution)}@media(max-width:768px){.callout{padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-md-lg) 0}.callout-icon{width:20px;height:20px}}.content-card{background:var(--bg-secondary);border:var(--border-width-small) solid var(--border);border-left:var(--border-width-standard) solid var(--accent);border-radius:var(--border-radius-none);padding:var(--spacing-lg);margin:var(--spacing-lg) 0;box-shadow:var(--card-shadow);transition:all var(--transition-fast)}.content-card:hover{transform:translate(-2px,-2px);box-shadow:var(--card-shadow-hover)}.content-card-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm);line-height:1.4;display:flex;align-items:center;gap:var(--spacing-s)}.content-card-title:before{content:"";width:8px;height:8px;background:var(--accent);border-radius:var(--border-radius-none);flex-shrink:0}.content-card-content{color:var(--text-secondary);line-height:1.6;padding-inline:var(--spacing-xs)}.content-card-content p{margin-bottom:var(--spacing-sm)}.content-card-content p:last-child{margin-bottom:0}.content-card-content strong{color:var(--text-primary);font-weight:600}.content-card-content code{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--border-radius-none);padding:2px 6px;font-size:.875em;font-family:var(--font-family-mono);color:var(--accent)}.content-card-content a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--transition-fast)}.content-card-content a:hover{border-bottom-color:var(--accent)}[data-theme=dark] .content-card{background:var(--bg-secondary);border-color:var(--border)}[data-theme=dark] .content-card-content code{background:var(--bg-tertiary);border-color:var(--border)}@media(max-width:768px){.content-card{padding:var(--spacing-md) var(--spacing-md-lg);margin:var(--spacing-md-lg) 0}.content-card-title{font-size:1rem}}.scroll-animate{--animation-duration: .6s;--animation-delay: 0ms;--animation-easing: cubic-bezier(.4, 0, .2, 1);--translate-distance: 30px;--translate-distance-large: 60px;will-change:transform,opacity}.scroll-animate-initial{opacity:0}.scroll-animate-active{opacity:1;animation-duration:var(--animation-duration);animation-delay:var(--animation-delay);animation-timing-function:var(--animation-easing);animation-fill-mode:both}.scroll-animate-active:not(.scroll-animate-initial){will-change:auto}.scroll-animate-fade-up.scroll-animate-initial{transform:translateY(var(--translate-distance))}.scroll-animate-fade-up.scroll-animate-active{animation-name:fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(var(--translate-distance))}to{opacity:1;transform:translateY(0)}}.scroll-animate-fade-down.scroll-animate-initial{transform:translateY(calc(-1 * var(--translate-distance)))}.scroll-animate-fade-down.scroll-animate-active{animation-name:fadeDown}@keyframes fadeDown{0%{opacity:0;transform:translateY(calc(-1 * var(--translate-distance)))}to{opacity:1;transform:translateY(0)}}.scroll-animate-fade-left.scroll-animate-initial{transform:translate(calc(-1 * var(--translate-distance)))}.scroll-animate-fade-left.scroll-animate-active{animation-name:fadeLeft}@keyframes fadeLeft{0%{opacity:0;transform:translate(calc(-1 * var(--translate-distance)))}to{opacity:1;transform:translate(0)}}.scroll-animate-fade-right.scroll-animate-initial{transform:translate(var(--translate-distance))}.scroll-animate-fade-right.scroll-animate-active{animation-name:fadeRight}@keyframes fadeRight{0%{opacity:0;transform:translate(var(--translate-distance))}to{opacity:1;transform:translate(0)}}.scroll-animate-fade.scroll-animate-active{animation-name:fade}@keyframes fade{0%{opacity:0}to{opacity:1}}.scroll-animate-scale-up.scroll-animate-initial{transform:scale(.9)}.scroll-animate-scale-up.scroll-animate-active{animation-name:scaleUp}@keyframes scaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.scroll-animate-slide-up.scroll-animate-initial{transform:translateY(var(--translate-distance-large));opacity:1}.scroll-animate-slide-up.scroll-animate-active{animation-name:slideUp}@keyframes slideUp{0%{transform:translateY(var(--translate-distance-large))}to{transform:translateY(0)}}.scroll-animate-blur-up.scroll-animate-initial{transform:translateY(var(--translate-distance));filter:blur(10px)}.scroll-animate-blur-up.scroll-animate-active{animation-name:blurUp}@keyframes blurUp{0%{opacity:0;transform:translateY(var(--translate-distance));filter:blur(10px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.scroll-delay-100{--animation-delay: .1s}.scroll-delay-200{--animation-delay: .2s}.scroll-delay-300{--animation-delay: .3s}.scroll-delay-400{--animation-delay: .4s}.scroll-delay-500{--animation-delay: .5s}.scroll-duration-fast{--animation-duration: .4s}.scroll-duration-normal{--animation-duration: .6s}.scroll-duration-slow{--animation-duration: .8s}.scroll-easing-smooth{--animation-easing: cubic-bezier(.4, 0, .2, 1)}.scroll-easing-bounce{--animation-easing: cubic-bezier(.68, -.55, .265, 1.55)}.scroll-easing-ease-out{--animation-easing: cubic-bezier(0, 0, .2, 1)}@media(prefers-reduced-motion:reduce){.scroll-animate{--animation-duration: 0ms !important;--animation-delay: 0ms !important}.scroll-animate-initial{opacity:1!important;transform:none!important;filter:none!important}.scroll-animate-active{animation:none!important}}@supports not (animation-timeline: scroll()){.hero-scroll-driven .hero-greeting,.hero-scroll-driven .hero-title,.hero-scroll-driven .hero-description,.hero-scroll-driven .social-links{animation:fallback-fade-in .8s ease-out both}.hero-scroll-driven .hero-greeting{animation-delay:0ms}.hero-scroll-driven .hero-title{animation-delay:.1s}.hero-scroll-driven .hero-description{animation-delay:.2s}.hero-scroll-driven .social-links{animation-delay:.3s}@keyframes fallback-fade-in{0%{opacity:0;transform:translateY(20px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}}@supports (animation-timeline: scroll()){@media(prefers-reduced-motion:no-preference){.hero-scroll-driven{view-timeline-name:--hero-timeline;view-timeline-axis:block}.hero-scroll-driven .hero-greeting{animation:greeting-scroll linear both;animation-timeline:scroll(root);animation-range:0vh 30vh}@keyframes greeting-scroll{0%{opacity:1;transform:translateY(0);filter:blur(0)}to{opacity:0;transform:translateY(-30px);filter:blur(8px)}}.hero-scroll-driven .hero-title{animation:title-scroll linear both;animation-timeline:scroll(root);animation-range:0vh 60vh}@keyframes title-scroll{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-20px) scale(.98)}to{opacity:0;transform:translateY(-60px) scale(.9);filter:blur(4px)}}.hero-scroll-driven .hero-description{animation:description-scroll linear both;animation-timeline:scroll(root);animation-range:10vh 50vh}@keyframes description-scroll{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-40px);filter:blur(4px)}}.hero-scroll-driven .social-links{animation:social-scroll linear both;animation-timeline:scroll(root);animation-range:15vh 45vh}@keyframes social-scroll{0%{opacity:1;transform:translateY(0);gap:var(--spacing-sm)}to{opacity:0;transform:translateY(-20px);gap:var(--spacing-lg)}}.hero-scroll-driven{animation:hero-bg-scroll linear both;animation-timeline:scroll(root);animation-range:0vh 100vh}@keyframes hero-bg-scroll{0%{background-size:120%;background-position:center 20%}to{background-size:100%;background-position:center 30%}}.scroll-indicator{animation:indicator-scroll linear both;animation-timeline:scroll(root);animation-range:0vh 20vh}@keyframes indicator-scroll{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-30px)}}.hero-scroll-driven .hero-overlay{animation:overlay-darken linear both;animation-timeline:scroll(root);animation-range:30vh 90vh}@keyframes overlay-darken{0%{opacity:1}to{opacity:1;background:var(--hero-scroll-overlay-strong)}}}}.scroll-indicator{position:absolute;bottom:32px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-s);color:var(--hero-scroll-indicator-text);font-size:.75rem;font-weight:500;letter-spacing:1px;text-transform:uppercase;z-index:3}.scroll-indicator-icon{width:24px;height:40px;border:2px solid var(--hero-scroll-indicator-border);border-radius:12px;position:relative;background:var(--hero-scroll-indicator-bg)}.scroll-indicator-icon:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:4px;height:8px;background:var(--accent);border-radius:2px;animation:scroll-bounce 1.5s ease-in-out infinite}@keyframes scroll-bounce{0%,to{transform:translate(-50%) translateY(0);opacity:1}50%{transform:translate(-50%) translateY(12px);opacity:.5}}@supports (animation-timeline: scroll()){@media(prefers-reduced-motion:no-preference){.hero-scroll-driven .hero-greeting{animation:initial-fade-in .6s ease-out both,greeting-scroll linear both;animation-delay:0ms,0ms;animation-timeline:auto,scroll(root);animation-range:normal,0vh 30vh}.hero-scroll-driven .hero-title{animation:initial-fade-in .6s ease-out .1s both,title-scroll linear both;animation-timeline:auto,scroll(root);animation-range:normal,0vh 60vh}.hero-scroll-driven .hero-description{animation:initial-fade-in .6s ease-out .2s both,description-scroll linear both;animation-timeline:auto,scroll(root);animation-range:normal,10vh 50vh}.hero-scroll-driven .social-links{animation:initial-fade-in .6s ease-out .3s both,social-scroll linear both;animation-timeline:auto,scroll(root);animation-range:normal,15vh 45vh}@keyframes initial-fade-in{0%{opacity:0;transform:translateY(30px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}}}@media(max-width:768px){.hero-content-wrap{padding:0 var(--spacing-lg) var(--spacing-2xl)}.hero-text{max-width:100%}.hero-scroll-driven .social-links{justify-content:flex-start}.scroll-indicator{bottom:24px}.hero-scroll-driven{animation:hero-bg-scroll-mobile linear both!important;animation-timeline:scroll(root)!important;animation-range:0vh 100vh!important}@keyframes hero-bg-scroll-mobile{0%{background-size:cover;background-position:65% top}to{background-size:cover;background-position:65% top}}}@media(max-width:640px){.container{padding:0 var(--spacing-md);max-width:100%}.hero-wrapper{background-position:65% top;background-size:cover}.hero-overlay{background:linear-gradient(to top,var(--hero-photo-overlay-mobile-strong) 0%,var(--hero-photo-overlay-mid) 35%,transparent 60%)}.hero-content-wrap{padding:0 var(--spacing-md) var(--spacing-xl);min-height:100dvh}.hero{padding:0 0 var(--spacing-lg)}.hero-title{font-size:2.5rem;letter-spacing:-1px}.hero-description{font-size:.9375rem;margin-bottom:24px;line-height:1.6}.social-links{flex-wrap:wrap}.post-hero-image,.post-hero-overlay{height:200px}.post-hero-content{padding:26px 0 38px;bottom:var(--spacing-3xl)}.post-hero-content-inner{padding:0 var(--spacing-md)}.post-hero-meta-bar{padding:var(--spacing-md) 0;position:absolute;bottom:0;left:0;right:0}.post-hero-meta-bar-inner{padding:0 var(--spacing-md)}.post-title-sticky{top:0;padding:var(--spacing-sm) 0}.post-title-sticky-inner{padding:0 var(--spacing-md);gap:var(--spacing-sm)}.post-title-sticky-text{font-size:.9375rem}.post-title-sticky-icon{width:var(--icon-size-md);height:var(--icon-size-md)}.post-header{margin-bottom:var(--spacing-xl)}.post-title{font-size:1.125rem!important;font-weight:500!important;margin-bottom:var(--spacing-sm);max-width:100%!important;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto;letter-spacing:-.2px}.post-content-wrapper{padding:var(--spacing-lg) var(--spacing-md)}.post-content-wrapper h1{font-size:1.75rem;margin-top:var(--spacing-xl)}.post-content-wrapper h2{font-size:1.5rem;margin-top:var(--spacing-lg)}.post-content-wrapper h3{font-size:1.25rem;margin-top:var(--spacing-lg)}.post-content-wrapper h1,.post-content-wrapper h2,.post-content-wrapper h3,.post-content-wrapper h4{word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}.post-content-wrapper pre{max-width:100%;overflow-x:auto}.post-content-wrapper img{max-width:100%;height:auto}.post-meta{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.prompt-block{padding:var(--spacing-md);margin:var(--spacing-xl) 0 0 0}.prompt-block-top{margin:var(--spacing-lg) var(--spacing-md) 0;border-radius:var(--spacing-sm);border-width:2px}.prompt-badge{top:calc(-1 * var(--spacing-s) - 2px);right:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-s);font-size:.6875rem}.prompt-badge i[data-lucide],.prompt-badge svg{width:var(--spacing-sm);height:var(--spacing-sm)}.prompt-block-top .prompt-header{padding:var(--spacing-md-lg) var(--spacing-md) var(--spacing-sm)}.prompt-block-top .prompt-content{padding:0 var(--spacing-md) var(--spacing-md-lg)}.post-content-wrapper .prompt-block{margin-top:var(--spacing-xl)}.prompt-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.prompt-toggle{width:100%;justify-content:flex-start}.prompt-toggle h3{font-size:1rem!important;font-weight:500!important}.prompt-block .copy-btn{width:100%}.prompt-block pre code{font-size:.75rem!important}}.content-card,.load-more-btn,.prompt-block:not(.prompt-block-inline),.prompt-block-top,.prompt-content,.prompt-toggle,.btn,.blog-post-toc,.toc-link{border-radius:var(--border-radius-none, 0px)!important}.content-card,.load-more-btn,.prompt-block:not(.prompt-block-inline),.prompt-block-top,.prompt-content,.blog-post-toc{border:var(--border-width-small) solid var(--border)!important;box-shadow:var(--card-shadow);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.load-more-btn:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:var(--card-shadow-hover)}.hero-wrapper{border-bottom:var(--border-width-standard) solid var(--border)}h1,h2,h3,.hero-title{font-weight:var(--font-weight-bold);letter-spacing:-.01em}.prompt-badge{border:var(--border-width-small) solid var(--border);background:var(--bg-secondary);border-radius:var(--border-radius-none, 0px)}.post-card-skeleton,.skeleton-line{border-radius:var(--border-radius-none, 0px)}
