﻿:root{--space-unit: 0.25rem;--space-0: 0;--space-1: calc(var(--space-unit) * 1);--space-2: calc(var(--space-unit) * 2);--space-3: calc(var(--space-unit) * 3);--space-4: calc(var(--space-unit) * 4);--space-5: calc(var(--space-unit) * 5);--space-6: calc(var(--space-unit) * 6);--space-8: calc(var(--space-unit) * 8);--space-10: calc(var(--space-unit) * 10);--space-12: calc(var(--space-unit) * 12);--space-16: calc(var(--space-unit) * 16);--font-family-base: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';--font-family-mono: ui-monospace, 'SF Mono', 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;--font-size-xs: 0.8rem;--font-size-sm: 0.889rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.266rem;--font-size-xl: 1.424rem;--font-size-2xl: 1.602rem;--font-size-3xl: 1.802rem;--font-size-4xl: 2.027rem;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 1.75;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--color-text: hsla(0, 0%, 10%, 1);--color-text-muted: hsla(0, 0%, 35%, 1);--color-text-subtle: hsla(0, 0%, 40%, 1);--color-link: var(--color-text);--color-link-hover: var(--color-text-muted);--color-link-visited: var(--color-text);--color-bg: hsla(0, 0%, 100%, 1);--color-bg-subtle: hsla(0, 0%, 98%, 1);--color-bg-muted: hsla(0, 0%, 96%, 1);--color-border: hsla(0, 0%, 91%, 1);--color-border-subtle: hsla(0, 0%, 94%, 1);--container-max: 65ch;--container-wide: 90ch;--radius-sm: 2px;--radius-base: 4px;--radius-md: 6px;--radius-lg: 8px;--transition-fast: 150ms ease;--transition-base: 250ms ease;--transition-slow: 350ms ease;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, 0.1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1)}*,*::before,*::after{box-sizing:border-box}*{margin:0}html{text-size-adjust:none;-webkit-text-size-adjust:none;scrollbar-gutter:stable}body{min-height:100vh;font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);overflow-wrap:break-word}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-md)}p{overflow-wrap:break-word;hyphens:auto}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer;padding:0}a{color:var(--color-link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em;transition:color var(--transition-fast)}a:hover{color:var(--color-link-hover)}a:visited{color:var(--color-link)}ul[role=list],ol[role=list]{list-style:none;padding:0}@media(prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding-left:var(--space-4);padding-right:var(--space-4)}.container-wide{max-width:var(--container-wide)}@media(min-width: 640px){.container{padding-left:var(--space-6);padding-right:var(--space-6)}}.navigation{padding:var(--space-4) 0;border-bottom:1px solid var(--color-border-subtle);margin-bottom:var(--space-6)}.navigation ul{display:flex;gap:var(--space-6);list-style:none;padding:0}.navigation a{color:var(--color-text);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}.navigation a:hover{color:var(--color-link)}.navigation a.active,.navigation a[aria-current=page]{color:var(--color-link);font-weight:var(--font-weight-semibold)}.post-list>article{padding:var(--space-6) 0;border-bottom:1px solid var(--color-border)}.post-list>article:first-child{padding-top:0}.post-list>article:last-child{border-bottom:none}.post-list h2{margin-bottom:var(--space-2)}.post-list h2 a{color:var(--color-text);text-decoration:none}.post-list h2 a:hover{color:var(--color-link)}.post-meta{font-size:var(--font-size-sm);color:var(--color-text-subtle);margin-bottom:var(--space-3)}.post-content{line-height:var(--line-height-relaxed)}.post-content>ul{list-style:none;padding-left:var(--space-5);margin:var(--space-2) 0}.post-content>ul>li{position:relative;margin-bottom:0;line-height:var(--line-height-normal)}.post-content>ul>li::before{content:"–";position:absolute;left:-1.2em;color:var(--color-text-muted)}.post-content ol{margin:var(--space-4) 0;padding-left:var(--space-6);list-style-type:decimal}.post-content ol li{margin-bottom:var(--space-2)}.post-content ol li:last-child{margin-bottom:0}.post-content blockquote{margin:var(--space-6) 0;padding-left:var(--space-4);border-left:3px solid var(--color-border);color:var(--color-text-muted)}.post-content img{margin:var(--space-6) 0;border-radius:var(--radius-base)}.post-content hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-8) 0}article header{margin-bottom:var(--space-6)}article header h1{margin-bottom:var(--space-3)}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.pagination a{padding:var(--space-2) var(--space-4);border-radius:var(--radius-base);text-decoration:none;font-weight:var(--font-weight-medium);transition:background-color var(--transition-fast)}.pagination a:hover{background-color:var(--color-bg-subtle)}.pagination .current{color:var(--color-text-subtle);font-size:var(--font-size-sm)}.lommi-image{display:block;margin:var(--space-md) auto;max-width:75%;text-align:center}.lommi-image img{width:100%;height:auto;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1);transition:box-shadow var(--transition)}.lommi-image img:hover{box-shadow:0 4px 12px rgba(0,0,0,.15)}.lommi-image .caption{margin-top:var(--space-sm);padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text);font-style:normal;font-weight:var(--font-weight-semibold);text-align:center;line-height:1.4;background-color:var(--color-bg-subtle);border-radius:var(--border-radius-sm);margin-left:var(--space-sm);margin-right:var(--space-sm)}@media(max-width: 768px){.lommi-image{margin:var(--space-sm) 0}.lommi-image img{border-radius:var(--space-xs)}}.lommi-link-button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-bg);color:var(--color-text);text-decoration:none;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.lommi-link-button:hover{background:var(--color-bg-subtle);border-color:var(--color-text);color:var(--color-text)}.lommi-link-button .icon{width:14px;height:14px;flex-shrink:0;opacity:.5;transition:opacity var(--transition-fast)}.lommi-link-button .text{flex:1}.lommi-link-button:hover .icon{opacity:.7}.lommi-link-button[download]{background:var(--color-bg);border-color:var(--color-border)}.lommi-link-button[download]:hover{background:var(--color-bg-subtle);border-color:var(--color-text)}.lommi-youtube{position:relative;width:100%;aspect-ratio:16/9;margin:var(--space-lg) 0;background:var(--color-bg-alt);border-radius:var(--border-radius);overflow:hidden}.lommi-youtube.error{padding:var(--space-md);text-align:center;color:var(--color-text-light);font-style:italic}.lommi-youtube .thumbnail{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}.lommi-youtube .thumbnail img{margin:0;width:100%;height:100%;object-fit:cover;transition:opacity var(--transition)}.lommi-youtube .thumbnail:hover img{opacity:.8}.lommi-youtube .play-button{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);background:rgba(0,0,0,.8);border:none;border-radius:20px;width:68px;height:48px;cursor:pointer;transition:all var(--transition);box-shadow:none}.lommi-youtube .play-button .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.lommi-youtube .play-button svg{width:100%;height:100%}.lommi-youtube .play-button svg path[fill="#f00"]{fill:red !important}.lommi-youtube .play-button svg path[fill="#fff"]{fill:#fff !important}.lommi-youtube .play-button:hover{background:rgba(0,0,0,.9);transform:translate(-50%, -50%) scale(1.1)}.lommi-youtube .video-wrapper{position:relative;width:100%;aspect-ratio:16/9}.lommi-youtube .video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}@media(max-width: 768px){.lommi-youtube{margin:var(--space-md) 0}.lommi-youtube .play-button{width:56px;height:40px}}.lommi-hamburger{display:none}@media(max-width: 768px){.lommi-hamburger{display:block}}.lommi-hamburger .hamburger-button{background:none;border:none;cursor:pointer;padding:12px;display:flex;flex-direction:column;justify-content:space-around;align-items:center;width:48px;height:48px;border-radius:4px;transition:all var(--transition-base)}.lommi-hamburger .hamburger-button:hover{background:var(--color-bg-subtle)}.lommi-hamburger .hamburger-button:focus{outline:2px solid var(--color-text);outline-offset:2px}.lommi-hamburger .hamburger-button .hamburger-line{display:block;width:24px;height:3px;background:var(--color-text);border-radius:2px;transition:all .3s cubic-bezier(0.23, 1, 0.32, 1);transform-origin:center}.lommi-hamburger .hamburger-button.open .hamburger-line:nth-child(1){transform:translateY(8px) rotate(45deg)}.lommi-hamburger .hamburger-button.open .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.lommi-hamburger .hamburger-button.open .hamburger-line:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.lommi-hamburger .mobile-menu{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--color-bg);z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);opacity:0;visibility:hidden;transform:translateY(-100%);transition:all .3s cubic-bezier(0.23, 1, 0.32, 1)}.lommi-hamburger .mobile-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.lommi-hamburger .mobile-menu a{font-size:1.5rem;color:var(--color-text);text-decoration:none;padding:var(--space-4) var(--space-6);border-radius:var(--radius-base);transition:all var(--transition-base);text-align:center;min-width:200px}.lommi-hamburger .mobile-menu a:hover,.lommi-hamburger .mobile-menu a:focus{background:var(--color-bg-subtle);transform:translateY(-2px)}.lommi-hamburger .mobile-menu a.active{background:var(--color-text);color:var(--color-bg)}.lommi-hamburger .mobile-menu .close-button{position:absolute;top:var(--space-6);right:var(--space-6);background:none;border:none;font-size:2rem;color:var(--color-text-muted);cursor:pointer;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition-base)}.lommi-hamburger .mobile-menu .close-button:hover,.lommi-hamburger .mobile-menu .close-button:focus{background:var(--color-bg-subtle);color:var(--color-text)}.lommi-hamburger .mobile-menu .close-button:focus{outline:2px solid var(--color-text);outline-offset:2px}@media(max-width: 768px){.navigation .nav-links{display:none}}table,.markdown-table{width:100%;border-collapse:collapse;margin:var(--space-6) 0;font-size:var(--font-size-sm)}table thead,.markdown-table thead{border-bottom:2px solid var(--color-border)}table th,.markdown-table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text)}table td,.markdown-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-subtle)}table tbody tr:last-child td,.markdown-table tbody tr:last-child td{border-bottom:none}table tbody tr:hover,.markdown-table tbody tr:hover{background-color:var(--color-bg-subtle)}@media(max-width: 640px){table,.markdown-table{display:block;overflow-x:auto;white-space:nowrap}}.markdown-list{all:revert;list-style:none;padding-left:var(--space-5);margin:var(--space-2) 0}.markdown-list>li{all:revert;position:relative;margin-bottom:0;line-height:var(--line-height-normal)}.markdown-list>li::before{content:"–";position:absolute;left:-1.2em;color:var(--color-text-muted)}article ol{margin:var(--space-2) 0;padding-left:var(--space-5)}ul.bullet-list li::before{content:"•" !important;left:var(--space-4);font-weight:var(--font-weight-bold);font-size:.8em}ul.arrow-list li::before{content:"→" !important;font-weight:var(--font-weight-normal);color:var(--color-text-subtle)}ol{list-style:none;counter-reset:list-counter}ol li{counter-increment:list-counter}ol li::before{content:counter(list-counter) ".";position:absolute;left:var(--space-3);color:var(--color-text-muted);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}ol.paren-list li::before{content:counter(list-counter) ")"}ul:has(li>a:only-child) li,ol:has(li>a:only-child) li,ul li:has(>a:only-child) li,ol li:has(>a:only-child) li{margin-bottom:var(--space-3);padding:0;border-bottom:1px solid var(--color-border-subtle);transition:all var(--transition-fast)}ul:has(li>a:only-child) li:last-child,ol:has(li>a:only-child) li:last-child,ul li:has(>a:only-child) li:last-child,ol li:has(>a:only-child) li:last-child{border-bottom:none}ul:has(li>a:only-child) li:hover,ol:has(li>a:only-child) li:hover,ul li:has(>a:only-child) li:hover,ol li:has(>a:only-child) li:hover{background-color:var(--color-bg-subtle)}ul:has(li>a:only-child) li a,ol:has(li>a:only-child) li a,ul li:has(>a:only-child) li a,ol li:has(>a:only-child) li a{display:block;padding:var(--space-3) var(--space-4);margin:0;text-decoration:none;color:var(--color-text);width:100%;box-sizing:border-box}ul:has(li>a:only-child) li a:hover,ol:has(li>a:only-child) li a:hover,ul li:has(>a:only-child) li a:hover,ol li:has(>a:only-child) li a:hover{color:var(--color-text-muted)}li:has(>a:only-child){padding:0 !important}li:has(>a:only-child) a{display:block !important;padding:var(--space-3) var(--space-4) !important;margin:0 !important;text-decoration:none !important;color:var(--color-text) !important;width:100% !important;box-sizing:border-box !important;transition:all var(--transition-fast) !important}li:has(>a:only-child) a:hover{background-color:var(--color-bg-subtle) !important;color:var(--color-text-muted) !important}blockquote,.markdown-blockquote{margin:var(--space-6) 0;padding-left:var(--space-4);border-left:3px solid var(--color-border);color:var(--color-text-muted);font-style:italic}blockquote p,.markdown-blockquote p{margin-bottom:var(--space-3)}blockquote p:last-child,.markdown-blockquote p:last-child{margin-bottom:0}blockquote cite,.markdown-blockquote cite{display:block;margin-top:var(--space-3);font-size:var(--font-size-sm);font-style:normal;color:var(--color-text-subtle)}blockquote cite::before,.markdown-blockquote cite::before{content:"— "}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);margin:var(--space-lg) 0;font-size:.9rem}.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:var(--space-xs) var(--space-sm);text-decoration:none;border-radius:var(--border-radius);transition:all var(--transition);font-weight:500}.pagination .page{color:var(--text-secondary);border:1px solid var(--border-color);background-color:var(--surface-primary)}.pagination .page:hover{background-color:var(--surface-hover);border-color:var(--text-secondary);color:var(--text-primary)}.pagination .current{background-color:var(--color-link);color:#fff;font-weight:700;font-size:1rem;min-width:48px;height:48px;box-shadow:0 2px 8px rgba(0,0,0,.15);border:2px solid var(--color-link)}.pagination .prev,.pagination .next{background-color:var(--surface-secondary);color:var(--text-secondary);border:1px solid var(--border-color);font-size:1.2rem;font-weight:700}.pagination .prev:hover,.pagination .next:hover{background-color:var(--color-link);color:#fff;border-color:var(--color-link);transform:translateY(-1px)}.pagination .ellipsis{color:var(--text-secondary);cursor:default;font-weight:700}@media(max-width: 768px){.pagination{gap:calc(var(--space-xs)/2)}.pagination a,.pagination span{min-width:36px;height:36px;padding:var(--space-xs);font-size:.8rem}.pagination .current{min-width:40px;height:40px;font-size:.9rem}.pagination .prev,.pagination .next{font-size:1rem}}.attribution{text-align:right;font-style:italic;color:var(--text-secondary);margin:var(--space-sm) 0;font-size:.9rem}.attribution::before{content:"";display:block;width:50px;height:1px;background-color:var(--border-color);margin:var(--space-xs) auto var(--space-xs) 0}@media(max-width: 768px){.attribution{font-size:.85rem;margin:var(--space-xs) 0}}.chapter-break{text-align:center;margin:var(--space-8) 0;padding:var(--space-4) 0;position:relative;line-height:1;user-select:none}.chapter-break::before,.chapter-break::after{display:none}.chapter-break span{display:inline-block;color:var(--color-text-muted);opacity:.6;font-size:.75rem;line-height:1;letter-spacing:.1em;background:rgba(0,0,0,0);padding:0}@media(max-width: 768px){.chapter-break{margin:var(--space-6) 0;padding:var(--space-3) 0}.chapter-break span{font-size:.65rem;opacity:.5}}.chapter-break.invisible span{opacity:0}.chapter-break.dots span{font-size:.4rem;letter-spacing:.5em}.chapter-break.dots span::before{content:"•••"}.hljs,.hljs-code{background-color:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-base);margin:var(--space-6) 0;overflow-x:auto}.hljs code,.hljs-code code{display:block;padding:var(--space-4);font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);background:rgba(0,0,0,0);border:none}.hljs-keyword,.hljs-selector-tag,.hljs-literal,.hljs-section,.hljs-link{color:#0969da;font-weight:var(--font-weight-medium)}.hljs-string,.hljs-title,.hljs-name,.hljs-type,.hljs-attribute,.hljs-symbol,.hljs-bullet,.hljs-addition,.hljs-variable,.hljs-template-tag,.hljs-template-variable{color:#0a3069}.hljs-comment,.hljs-quote,.hljs-deletion,.hljs-meta{color:var(--color-text-subtle)}.hljs-keyword,.hljs-selector-tag,.hljs-literal,.hljs-title,.hljs-section,.hljs-doctag,.hljs-type,.hljs-name,.hljs-strong{font-weight:var(--font-weight-medium)}.hljs-emphasis{font-style:italic}.divider,.separator,.post-divider{display:flex;align-items:center;justify-content:center;margin:var(--space-8) 0;color:var(--color-text-subtle);opacity:.4;font-size:var(--font-size-sm);line-height:1}.divider::before,.divider::after,.separator::before,.separator::after,.post-divider::before,.post-divider::after{content:"";flex:1;height:1px;background:var(--color-border-subtle);max-width:var(--space-12)}.divider::before,.separator::before,.post-divider::before{margin-right:var(--space-4)}.divider::after,.separator::after,.post-divider::after{margin-left:var(--space-4)}.text-divider{text-align:center;margin:var(--space-8) 0;color:var(--color-text-subtle);opacity:.3;font-size:var(--font-size-xs);line-height:1;user-select:none}.dot-divider{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin:var(--space-8) 0}.dot-divider::before,.dot-divider::after{content:"·";color:var(--color-text-subtle);opacity:.4;font-size:var(--font-size-sm)}.dot-divider span{width:3px;height:3px;border-radius:50%;background:var(--color-text-subtle);opacity:.3}.dots-divider{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin:var(--space-8) 0}.dots-divider span{width:3px;height:3px;border-radius:50%;background:var(--color-text-subtle);opacity:.3}.line-divider{height:1px;background:var(--color-border-subtle);border:none;margin:var(--space-8) 0;opacity:.5}.asterism{text-align:center;margin:var(--space-8) 0;color:var(--color-text-subtle);opacity:.35;font-size:var(--font-size-sm);letter-spacing:var(--space-3);user-select:none}.asterism::before{content:"*  *  *"}hr{border:none !important;background:none !important;height:0 !important;text-align:center;margin:var(--space-8) 0;padding:var(--space-4) 0;position:relative;line-height:1;user-select:none;overflow:visible}hr::before{content:"◆";display:inline-block;color:var(--color-text-muted);opacity:.6;font-size:.75rem;line-height:1;letter-spacing:.1em}@media(max-width: 768px){hr{margin:var(--space-6) 0;padding:var(--space-3) 0}hr::before{font-size:.65rem;opacity:.5}}.content-separator,.post-separator,.section-divider,[role=separator]{display:block;text-align:center;color:var(--color-text-subtle);opacity:.2;font-size:.5rem;line-height:1;margin:var(--space-6) 0;user-select:none;pointer-events:none}.post-content p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+.post-content p:where(:not(:has(a,strong,em,code,img))),.post-content p:where(:not(:has(a,strong,em,code,img)))+.post-content p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank),.post-content p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+article p:where(:not(:has(a,strong,em,code,img))),.post-content p:where(:not(:has(a,strong,em,code,img)))+article p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank),.post-content p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+main p:where(:not(:has(a,strong,em,code,img))),.post-content p:where(:not(:has(a,strong,em,code,img)))+main p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank),article p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+.post-content p:where(:not(:has(a,strong,em,code,img))),article p:where(:not(:has(a,strong,em,code,img)))+.post-content p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank),article p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+article p:where(:not(:has(a,strong,em,code,img))),article p:where(:not(:has(a,strong,em,code,img)))+article p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank),article p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+main p:where(:not(:has(a,strong,em,code,img))),article p:where(:not(:has(a,strong,em,code,img)))+main p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank),main p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+.post-content p:where(:not(:has(a,strong,em,code,img))),main p:where(:not(:has(a,strong,em,code,img)))+.post-content p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank),main p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+article p:where(:not(:has(a,strong,em,code,img))),main p:where(:not(:has(a,strong,em,code,img)))+article p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank),main p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank)+main p:where(:not(:has(a,strong,em,code,img))),main p:where(:not(:has(a,strong,em,code,img)))+main p:where(:not(:has(a,strong,em,code,img))):is(:empty,:blank){text-align:center;color:var(--color-text-subtle);opacity:.2;font-size:.5rem;line-height:1;margin:var(--space-6) auto;max-width:3ch;user-select:none}.auto-separator{text-align:center !important;color:var(--color-text-subtle) !important;opacity:.2 !important;font-size:.5rem !important;line-height:1 !important;margin:var(--space-6) 0 !important;user-select:none !important}hr.minimal{border:none;height:1px;background:var(--color-border-subtle);opacity:.3;margin:var(--space-8) 0}.dots{text-align:center;margin:var(--space-6) 0;color:var(--color-text-subtle);opacity:.25;font-size:.6rem;letter-spacing:.5em;line-height:1}.dots::before{content:"•••"}.asterisks{text-align:center;margin:var(--space-6) 0;color:var(--color-text-subtle);opacity:.2;font-size:.6rem;letter-spacing:1em;line-height:1}.asterisks::before{content:"* * *"}.link-list,.nav-list,ul.links{list-style:none;padding:0;margin:var(--space-4) 0}.link-list li,.nav-list li,ul.links li{margin:0;position:relative;transition:all var(--transition-fast)}.link-list li a,.nav-list li a,ul.links li a{display:flex;align-items:center;padding:var(--space-3) var(--space-4);color:var(--color-text);text-decoration:none;border-radius:var(--radius-base);transition:all var(--transition-fast);position:relative}.link-list li a::before,.nav-list li a::before,ul.links li a::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:0;background:var(--color-link);transition:height var(--transition-fast)}.link-list li a:hover,.nav-list li a:hover,ul.links li a:hover{background-color:var(--color-bg-subtle);color:var(--color-link)}.link-list li a:hover::before,.nav-list li a:hover::before,ul.links li a:hover::before{height:60%}.link-list li a:visited,.nav-list li a:visited,ul.links li a:visited{color:var(--color-text)}.card-list{list-style:none;padding:0;margin:var(--space-6) 0;display:grid;gap:var(--space-3)}.card-list li{margin:0;border:1px solid var(--color-border-subtle);border-radius:var(--radius-base);transition:all var(--transition-fast)}.card-list li:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}.card-list li a{display:block;padding:var(--space-4);color:var(--color-text);text-decoration:none}.card-list li a:hover{color:var(--color-link)}.compact-list{list-style:none;padding:0;margin:var(--space-4) 0;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.compact-list li{margin:0}.compact-list li a{color:var(--color-text-muted);text-decoration:none;font-size:var(--font-size-sm);transition:color var(--transition-fast);position:relative}.compact-list li a::after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1px;background:var(--color-link);transform:scaleX(0);transform-origin:right;transition:transform var(--transition-fast)}.compact-list li a:hover{color:var(--color-link)}.compact-list li a:hover::after{transform:scaleX(1);transform-origin:left}.compact-list li:not(:last-child)::after{content:"·";margin-left:var(--space-4);color:var(--color-text-subtle);opacity:.4}.people-list,.authors-list{list-style:none;padding:0;margin:var(--space-6) 0}.people-list li,.authors-list li{margin-bottom:var(--space-4);position:relative;padding-left:var(--space-6)}.people-list li::before,.authors-list li::before{content:"";position:absolute;left:var(--space-2);top:.7em;width:4px;height:4px;background:var(--color-text-subtle);border-radius:50%;opacity:.5}.people-list li a,.authors-list li a{color:var(--color-link);text-decoration-thickness:1px;text-underline-offset:.2em;transition:all var(--transition-fast)}.people-list li a:hover,.authors-list li a:hover{color:var(--color-link-hover);text-decoration-thickness:2px}main{max-width:var(--container-max);margin:0 auto;padding:var(--space-8) var(--space-4)}code{font-family:var(--font-family-mono);font-size:var(--font-size-sm);background-color:var(--color-bg-muted);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}pre{background-color:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:var(--radius-base);padding:var(--space-4);margin:var(--space-6) 0;overflow-x:auto;line-height:var(--line-height-relaxed)}pre code{background:rgba(0,0,0,0);padding:0;font-size:var(--font-size-sm)}p{margin-bottom:var(--space-4)}p:last-child{margin-bottom:0}h1,h2,h3,h4,h5,h6{margin-top:var(--space-8);margin-bottom:var(--space-4)}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child{margin-top:0}.text-sm{font-size:var(--font-size-sm)}.text-muted{color:var(--color-text-muted)}.text-subtle{color:var(--color-text-subtle)}main p+main p:where([style*=center],[align=center],.center),main p+article p:where([style*=center],[align=center],.center),main p+.content p:where([style*=center],[align=center],.center),main p+.post-content p:where([style*=center],[align=center],.center),article p+main p:where([style*=center],[align=center],.center),article p+article p:where([style*=center],[align=center],.center),article p+.content p:where([style*=center],[align=center],.center),article p+.post-content p:where([style*=center],[align=center],.center),.content p+main p:where([style*=center],[align=center],.center),.content p+article p:where([style*=center],[align=center],.center),.content p+.content p:where([style*=center],[align=center],.center),.content p+.post-content p:where([style*=center],[align=center],.center),.post-content p+main p:where([style*=center],[align=center],.center),.post-content p+article p:where([style*=center],[align=center],.center),.post-content p+.content p:where([style*=center],[align=center],.center),.post-content p+.post-content p:where([style*=center],[align=center],.center){text-align:center;color:var(--color-text-subtle);opacity:.2;font-size:.5rem;line-height:1;margin:var(--space-6) 0;user-select:none}main p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty)),article p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty)),.content p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty)),.post-content p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty)){max-width:100%}main p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty)).separator,main p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty))[role=separator],article p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty)).separator,article p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty))[role=separator],.content p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty)).separator,.content p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty))[role=separator],.post-content p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty)).separator,.post-content p:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(em)):not(:has(code)):where(:not(:empty))[role=separator]{text-align:center;color:var(--color-text-subtle);opacity:.2;font-size:.5rem;line-height:1;margin:var(--space-6) auto;user-select:none}article p:only-of-type:not(:has(*))[style*=center],article p:not(:first-child):not(:last-child):not(:has(*))[style*=center]{opacity:.25;font-size:.6rem;color:var(--color-text-subtle)}