.blog-page{--article-accent: #7c89f0;--code-surface: #0d0e10}.blog-post-page{--reading-width: 624px;--article-gutter: max(24px, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));width:100%;padding:0}.blog-post-page .editorial-header{width:min(976px,calc(100% - 2 * var(--article-gutter)));margin:-4px auto 0;padding:0;text-align:center}.blog-post-page .editorial-header h1{max-width:900px;margin-inline:auto;text-wrap:wrap}.blog-hero-shell{width:100%;aspect-ratio:var(--blog-hero-aspect, 16 / 9);margin-inline:auto;overflow:hidden;background:transparent}@media(min-width:681px){.blog-hero-shell{width:min(100%,calc(min(440px,48svh) * var(--blog-hero-aspect, 16 / 9)))}}.blog-post-page .editorial-body{width:min(var(--reading-width),calc(100% - 2 * var(--article-gutter)));margin-top:48px}.blog-content{color:var(--reading-color);font-family:var(--reading-font);font-size:var(--reading-size);font-weight:var(--reading-weight);line-height:var(--reading-line);text-align:start;word-spacing:normal;overflow-wrap:break-word;word-break:normal;line-break:auto}.blog-content>:first-child{margin-top:0}.blog-content p{margin:0 0 var(--reading-gap);text-wrap:wrap}.blog-content>p{text-align:justify;text-align-last:start;text-justify:inter-character;line-break:strict;word-break:normal;overflow-wrap:break-word}.blog-content li{text-align:start;line-break:strict}@media(max-width:360px){.blog-content>p{text-align:start}}.blog-content h1,.blog-content h2,.blog-content h3,.blog-content h4{color:var(--heading-color);font-family:var(--heading-font);font-weight:var(--h3-weight);text-wrap:balance}.blog-content h1,.blog-content h2{margin:var(--h2-space-before) 0 var(--h2-space-after);font-size:var(--h2-size);font-weight:var(--h2-weight);line-height:var(--h2-line);letter-spacing:-.012em}.blog-content h3{margin:var(--h3-space-before) 0 var(--h3-space-after);font-size:var(--h3-size);line-height:var(--h3-line);letter-spacing:-.012em}.blog-content h4{margin:var(--h4-space-before) 0 var(--h4-space-after);color:var(--reading-color);font-size:var(--h4-size);font-weight:var(--h4-weight);line-height:var(--h4-line)}.blog-content a{color:var(--ink-1);text-decoration-color:var(--article-accent);text-decoration-thickness:from-font;text-underline-offset:.22em;text-underline-position:from-font}@media(hover:hover)and (pointer:fine){.blog-content a:hover{color:var(--signal-bright)}}.blog-content ul,.blog-content ol{margin:12px 0 20px;padding-left:24px}.blog-content li{margin:0;padding-left:0;text-wrap:wrap}.blog-content li+li{margin-top:8px}.blog-content li>p{margin:0}.blog-content blockquote{margin:48px 0;padding:0 0 0 20px;border-left:1px solid var(--article-accent);color:var(--ink-1);font-size:18px;font-weight:400;line-height:1.6;letter-spacing:-.01em}.blog-content blockquote p{margin:0}.blog-content blockquote p+p{margin-top:12px}.blog-content hr{width:100%;margin:56px 0;border:0;border-top:1px solid var(--line)}.blog-content pre,.blog-content code{font-family:var(--font-mono);font-size:.86em}.blog-content code{padding:.16em .42em;border-radius:4px;background:var(--code-surface)}.blog-content pre{margin:32px 0;padding:18px 20px;overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--code-surface);line-height:1.7}.blog-content pre code{padding:0;background:transparent}.blog-content img{width:min(var(--content-width),calc(100vw - 64px));max-width:none;height:auto;display:block;margin:48px 0 48px 50%;border-radius:8px;transform:translate(-50%)}.blog-content table{width:100%;margin:32px 0;border-collapse:collapse;font-size:.9em}.blog-content th,.blog-content td{padding:.7em .8em;border-bottom:1px solid var(--line);text-align:left}.blog-content th{color:var(--ink-1);font-weight:600}.blog-content .article-epilogue{margin-top:56px;padding:36px 0 48px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;position:relative;border-top:1px solid var(--line);font-size:13px;line-height:1.4}.article-epilogue--has-both:after{content:"";position:absolute;top:36px;bottom:48px;left:50%;width:1px;background:var(--line)}.article-epilogue__item{min-width:0;color:var(--ink-3);text-decoration:none;display:flex;align-items:center;transition:color .15s ease-out}.article-epilogue__previous{grid-column:1;padding-right:32px;gap:18px}.article-epilogue__next{grid-column:2;padding-left:32px;justify-content:space-between;gap:18px}.article-epilogue__next .article-epilogue__label,.article-epilogue__next .article-epilogue__title{text-align:right}.article-epilogue__content{display:flex;min-width:0;flex:1;flex-direction:column;gap:6px}.article-epilogue__label{color:var(--ink-4);font-size:12px;font-weight:400;line-height:16px;transition:color .15s ease-out}.article-epilogue__title{color:var(--ink-1);font-size:16px;font-weight:500;line-height:23px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s ease-out}.article-epilogue__summary{color:var(--ink-3);font-size:13px;line-height:20px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s ease-out}.blog-content .article-epilogue__summary{margin:0}.article-epilogue__arrow{width:18px;height:18px;flex:0 0 18px;color:var(--ink-3);transition:color .15s ease-out}.article-epilogue__item:hover{color:var(--ink-1)}.article-epilogue__item:hover .article-epilogue__title{color:#fff}.article-epilogue__item:hover .article-epilogue__label,.article-epilogue__item:hover .article-epilogue__summary{color:var(--ink-2)}.article-epilogue__item:hover .article-epilogue__arrow{color:var(--ink-1)}.blog-content-loading{min-height:420px;padding-top:2px;display:flex;flex-direction:column;gap:14px}.blog-content-loading span{width:100%;height:13px;border-radius:2px;background:var(--line-soft)}.blog-content-loading span:nth-child(2){width:92%}.blog-content-loading span:nth-child(3){width:96%}.blog-content-loading span:nth-child(4){width:58%}.blog-content-error{color:var(--danger)}.article-hero{width:100%;height:100%;margin:0;min-height:0;overflow:hidden;background:transparent}.article-hero picture,.article-hero img{width:100%;height:100%;display:block}.article-hero img{object-fit:contain}.article-hero__fallback{width:100%;height:100%;display:block}@media(max-width:680px){.blog-post-page{--page-gutter: 24px}.blog-post-page .editorial-header{margin-top:4px;padding:0}.blog-hero-shell{width:100%;aspect-ratio:var(--blog-hero-mobile-aspect, 16 / 9)}.blog-post-page .editorial-body{margin-top:32px}.blog-content{font-size:var(--reading-size);line-height:var(--reading-line);letter-spacing:0}.blog-content blockquote{margin-block:40px;padding-left:16px;font-size:17px}.blog-content pre{padding:15px 16px;-webkit-overflow-scrolling:touch}.blog-content table{display:block;overflow-x:auto;white-space:nowrap}.blog-content img{width:calc(100vw - 32px);margin-block:32px}.blog-content .article-epilogue{margin-top:48px;padding:28px 0 48px;grid-template-columns:minmax(0,1fr);gap:24px}.article-epilogue--has-both:after{display:none}.article-epilogue__item{min-height:44px}.article-epilogue__previous{padding-right:0;gap:10px}.article-epilogue__next{grid-column:1;padding-left:0;gap:10px}.article-epilogue__next .article-epilogue__summary{text-align:right}.article-epilogue__label{font-size:11px}.article-epilogue__title{font-size:13.5px;line-height:19px;display:block;-webkit-line-clamp:unset;overflow:visible}.article-epilogue__summary{font-size:12px;line-height:17px}.article-epilogue__arrow{width:15px;height:15px;flex:0 0 15px}}.project-blog-article__hero-pending{display:grid;place-items:center;border:1px dashed #ffffff24;border-radius:8px;color:var(--ink-4);font-size:12px;line-height:20px}.journal-page .journal-toolbar{position:static;flex-direction:row;align-items:center;justify-content:space-between;padding:24px 0;margin-bottom:24px;background:var(--page-bg, #090909)}.journal-toolbar__title{display:flex;flex-direction:column;gap:8px}.journal-view-tabs{display:none;padding:1px;border:1px solid #ffffff06;border-radius:5px;background:transparent}.journal-view-tabs button{font:inherit;font-size:10px;font-weight:400;line-height:14px;min-height:24px;min-width:0;padding:3px 8px;border:1px solid transparent;border-radius:4px;background:transparent;color:#929baa;cursor:pointer}.journal-view-tabs button[aria-pressed=true]{background:#ffffff08;color:#cdd0d4}.journal-view-tabs button:focus-visible{outline:1px solid #7097cf;outline-offset:1px}.journal-view-tabs button:hover:not([aria-pressed=true]){color:#d6e4fa;background:#ffffff09}.journal-entries,.journal-scroll-space{overflow-anchor:none}.journal-cover-placeholder{display:block;width:100%;height:100%;background:#101010}.journal-page--list .journal-toolbar{max-width:624px;margin-inline:auto}.journal-list{display:flex;flex-direction:column;max-width:624px;margin-inline:auto;padding-bottom:80px}.journal-list>a{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:12px 0;color:#c4c4c4;text-decoration:none}.journal-list>a:hover{color:#fff}.journal-list>a:focus-visible{outline:1px solid #7097cf;outline-offset:4px;border-radius:2px}.journal-list h2{margin:0;font-size:15px;font-weight:400;line-height:1.65}.journal-page .journal-list .dash-cards__meta{flex-shrink:0;padding:0;font-family:inherit;font-size:11px;color:#686868}.journal-list .dash-cards__arrow{display:none}@media(max-width:680px){.journal-view-tabs{display:flex}.journal-page .journal-toolbar{position:sticky;top:0;z-index:20;align-items:flex-end;padding:max(12px,env(safe-area-inset-top)) 0 12px;margin-bottom:20px}.journal-page .journal-toolbar h1{font-size:26px;line-height:34px}.journal-toolbar__title{gap:3px}.journal-list>a{gap:16px;min-height:48px;padding:11px 0;align-items:baseline}.journal-page .journal-list .dash-cards__meta{font-size:11px}}.journal-page .journal-list{border-top:0}
