.photo-open{border-radius:var(--radius-lg);cursor:zoom-in;background:0 0;border:0;padding:0;display:block}.photo-open:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}html:has(.photo-dialog[open]){overflow:hidden}.photo-dialog{background:var(--surface-inverse);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--text-on-ink);cursor:zoom-out;border:0;margin:0;padding:56px 16px 24px}.photo-dialog[open]{justify-content:center;align-items:center;display:flex}.photo-dialog::backdrop{background:var(--surface-inverse)}.photo-dialog figure{flex-direction:column;align-items:center;gap:12px;max-height:100%;margin:0;display:flex}.photo-dialog img{object-fit:contain;cursor:default;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 140px)}.photo-dialog figcaption{text-align:center;max-width:68ch;color:var(--text-on-ink-secondary);font-size:14px;line-height:1.5}.photo-close{border:1px solid var(--border-on-ink);border-radius:var(--radius-sm);min-height:32px;color:var(--text-on-ink);font-family:var(--font-mono);cursor:pointer;background:0 0;padding:0 8px;font-size:12px;position:absolute;top:12px;right:16px}.photo-close:focus-visible{outline:2px solid var(--ll-paper);outline-offset:2px}.progress[data-astro-cid-uglr7svf]{--w:clamp(10px, 2.2vw, 32px)}.bar[data-astro-cid-uglr7svf]{width:var(--w);background:var(--ll-slate-500);opacity:0;height:0;transition:opacity var(--duration-fast) linear;z-index:30;pointer-events:none;position:fixed;top:0;left:0}.progress-on .bar[data-astro-cid-uglr7svf]{opacity:1}.chapter[data-astro-cid-uglr7svf]{z-index:50;color:var(--ll-ink);transition:transform var(--duration-base) var(--ease-out);align-items:flex-end;gap:8px;margin-top:-12px;text-decoration:none;display:flex;position:fixed;top:0;left:0;transform:translate(-100%)}.progress-on .chapter[data-astro-cid-uglr7svf]{transform:translate(0)}.tick[data-astro-cid-uglr7svf]{width:calc(var(--w) + 14px);border-bottom:1px solid var(--ll-ink);height:12px;display:block}.chapter-label[data-astro-cid-uglr7svf]{background:var(--ll-paper);color:var(--ll-gray-700);white-space:nowrap;opacity:0;transition:opacity .2s ease-out, transform .25s var(--ease-expo);padding:2px 4px;font-size:12px;line-height:1;transform:translate(-4px)}.chapter[data-astro-cid-uglr7svf]:hover .chapter-label[data-astro-cid-uglr7svf]{opacity:1;transform:none}.chapter[data-astro-cid-uglr7svf]:hover{color:var(--ll-ink)}@media (width<=768px){.chapter[data-astro-cid-uglr7svf]{display:none!important}}@media (prefers-reduced-motion:reduce){.chapter-label[data-astro-cid-uglr7svf]{transform:none}}.post[data-astro-cid-7mn2gw7j]{flex-direction:column;gap:40px;padding-top:clamp(32px,5vw,56px);padding-bottom:clamp(64px,8vw,104px);display:flex}.post-top[data-astro-cid-7mn2gw7j]{flex-direction:column;gap:24px;display:flex}.post-header[data-astro-cid-7mn2gw7j]{border-bottom:2px solid var(--ll-ink);flex-direction:column;gap:20px;max-width:880px;padding-bottom:32px;display:flex}h1[data-astro-cid-7mn2gw7j]{font-size:clamp(36px,5vw,56px);line-height:var(--leading-h1);letter-spacing:var(--tracking-h1);text-wrap:balance;margin:0;font-weight:600}.lead[data-astro-cid-7mn2gw7j]{max-width:36em;font-size:var(--text-lead);line-height:var(--leading-lead);color:var(--ll-gray-700);margin:0}.columns[data-astro-cid-7mn2gw7j]{flex-wrap:wrap;gap:40px 72px;display:flex}.meta[data-astro-cid-7mn2gw7j]{flex-direction:column;flex:200px;gap:28px;min-width:0;max-width:240px;line-height:1.6;display:flex}.meta[data-astro-cid-7mn2gw7j] dl[data-astro-cid-7mn2gw7j]{border-top:1px solid var(--ll-hairline);flex-direction:column;margin:0;display:flex}.meta[data-astro-cid-7mn2gw7j] dl[data-astro-cid-7mn2gw7j]>div[data-astro-cid-7mn2gw7j]{border-bottom:1px solid var(--ll-hairline);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.meta[data-astro-cid-7mn2gw7j] dl[data-astro-cid-7mn2gw7j]>div[data-astro-cid-7mn2gw7j].topics{align-items:center}.meta[data-astro-cid-7mn2gw7j] dt[data-astro-cid-7mn2gw7j]{color:var(--ll-gray-500);font-size:13px}.meta[data-astro-cid-7mn2gw7j] dd[data-astro-cid-7mn2gw7j]{margin:0;font-size:12px}.topics[data-astro-cid-7mn2gw7j] dd[data-astro-cid-7mn2gw7j]{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.badge-link[data-astro-cid-7mn2gw7j]{border-radius:6px;text-decoration:none;transition:opacity .15s linear}.badge-link[data-astro-cid-7mn2gw7j]:hover{opacity:.75}.toc[data-astro-cid-7mn2gw7j]{flex-direction:column;gap:2px;display:flex}.toc[data-astro-cid-7mn2gw7j] a[data-astro-cid-7mn2gw7j]{padding:6px 0;font-size:14px}.toc[data-astro-cid-7mn2gw7j] a[data-astro-cid-7mn2gw7j]:hover{text-decoration:underline}.prose[data-astro-cid-7mn2gw7j]{min-width:0;max-width:680px;color:var(--ll-gray-700);flex-direction:column;flex:999 560px;gap:20px;display:flex}.prose[data-astro-cid-7mn2gw7j] p{margin:0}.prose[data-astro-cid-7mn2gw7j] a:not(.tile){text-decoration:underline}.prose[data-astro-cid-7mn2gw7j] h2{font-size:var(--text-h3);line-height:var(--leading-h3);letter-spacing:var(--tracking-h3);color:var(--ll-ink);margin:28px 0 0;scroll-margin-top:96px;font-weight:600}.prose[data-astro-cid-7mn2gw7j] h3{font-size:var(--text-h4);line-height:var(--leading-h4);letter-spacing:var(--tracking-h4);color:var(--ll-ink);margin:12px 0 0;scroll-margin-top:96px;font-weight:600}.prose[data-astro-cid-7mn2gw7j] ol,.prose[data-astro-cid-7mn2gw7j] ul{flex-direction:column;gap:6px;margin:0;padding-left:1.4em;display:flex}.prose[data-astro-cid-7mn2gw7j] ol{list-style:decimal}.prose[data-astro-cid-7mn2gw7j] ul{list-style:outside}.prose[data-astro-cid-7mn2gw7j] :not(pre)>code{font-family:var(--font-mono);background:var(--ll-zinc-50);border:1px solid var(--ll-hairline);border-radius:var(--radius-xs);padding:1px 5px;font-size:14px}.prose[data-astro-cid-7mn2gw7j] pre{border:1px solid var(--ll-hairline);border-radius:var(--radius-lg);color:var(--ll-ink);font-family:var(--font-mono);margin:8px 0;padding:22px 24px;font-size:13px;line-height:1.7;overflow-x:auto;background:var(--ll-zinc-25)!important}.prose[data-astro-cid-7mn2gw7j] blockquote{border-top:2px solid var(--ll-ink);letter-spacing:-.03em;color:var(--ll-ink);text-wrap:balance;margin:16px 0;padding:20px 0 0;font-size:clamp(24px,2.4vw,28px);font-weight:600;line-height:1.25}.prose[data-astro-cid-7mn2gw7j] img{border-radius:var(--radius-lg)}.prose[data-astro-cid-7mn2gw7j] hr{border:0;border-top:1px solid var(--ll-hairline)}.tiles[data-astro-cid-7mn2gw7j]{background:var(--ll-hairline);border:1px solid var(--ll-hairline);border-radius:var(--radius-lg);grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:1px;margin-top:28px;display:grid;overflow:hidden}.tile[data-astro-cid-7mn2gw7j]{background:var(--ll-zinc-25);color:var(--ll-ink);flex-direction:column;gap:6px;padding:20px 24px;text-decoration:none;display:flex}.tile[data-astro-cid-7mn2gw7j]:hover{color:var(--ll-ink)}.tile[data-astro-cid-7mn2gw7j]:hover .tile-title[data-astro-cid-7mn2gw7j]{text-underline-offset:5px;text-decoration:underline 1px}.tile[data-astro-cid-7mn2gw7j]:focus-visible{outline-offset:-2px}.tile-title[data-astro-cid-7mn2gw7j]{font-size:17px;font-weight:600;line-height:1.3}.with-icon[data-astro-cid-7mn2gw7j]{align-items:center;gap:6px;display:inline-flex}
