.blog-sheet-heading,.blog-post__foot,.blog-index__foot{letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;gap:1rem;font-family:IBM Plex Mono,monospace;font-size:.6875rem;font-weight:600;display:flex}.blog-sheet-heading{color:var(--blue);border-bottom:2px solid var(--blue);margin-bottom:1.5rem;padding-bottom:.65rem}.blog-post__foot,.blog-index__foot{color:var(--muted);border-top:1px solid var(--stone);margin-top:2rem;padding-top:.65rem}.blog-index__section{padding-block:3rem 4rem}.blog-index__heading{align-items:baseline;gap:1rem;margin-bottom:1.5rem;display:flex}.blog-index__heading .manual-label{color:var(--blue)}.blog-index__heading h1{font-size:clamp(1.75rem,1.4rem + 1.2vw,2.5rem);font-weight:650;line-height:1.1}.blog-index__preface{max-width:46rem;margin-bottom:1.75rem}.blog-index__sheet{max-width:46rem;padding:1.75rem 2rem 1.5rem}.blog-index__start{margin-bottom:2.5rem}.blog-index__start-heading{margin-bottom:1.1rem}.blog-index__start-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.blog-index__start-card{height:100%;color:var(--ink);background:var(--key-ivory);border:1px solid var(--seam);box-shadow:inset 0 1px 0 var(--bevel-light), inset 1px 0 0 var(--bevel-soft), 0 3px 0 var(--seam), 0 5px 10px var(--shadow-seam-20);transition:transform var(--move-release) var(--ease-out), box-shadow var(--move-release) var(--ease-out), background-color var(--fade) ease;border-radius:.35rem;flex-direction:column;gap:.55rem;padding:1rem 1.1rem .95rem;text-decoration:none;display:flex;transform:translateY(0)}@media (hover:hover) and (pointer:fine){.blog-index__start-card:hover{background:var(--paper);box-shadow:inset 0 1px 0 var(--bevel-light), 0 5px 0 var(--seam), 0 8px 14px var(--shadow-seam-20);transform:translateY(-2px)}}.blog-index__start-card:active{box-shadow:inset 0 1px 2px var(--shadow-seam-20), 0 1px 0 var(--seam), 0 2px 4px var(--shadow-seam-20);transition-duration:var(--move-press), var(--move-press), var(--fade);transform:translateY(2px)}.blog-index__start-rank{color:var(--paper);background:var(--blue);letter-spacing:.12em;border-radius:.25rem;align-self:flex-start;padding:.28rem .5rem;font-family:IBM Plex Mono,monospace;font-size:.6875rem;font-weight:600;line-height:1}.blog-index__start-title{font-size:1.0625rem;font-weight:650;line-height:1.25}.blog-index__start-hint{color:var(--muted);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.blog-index__start-cta{color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin-top:auto;padding-top:.35rem;font-family:IBM Plex Mono,monospace;font-size:.6875rem;font-weight:600}.blog-index__start-arrow{transition:transform var(--move-release) var(--ease-out);display:inline-block}.blog-index__start-card:hover .blog-index__start-arrow{transform:translate(.25rem)}.blog-index__list{margin:0;padding:0;list-style:none}.blog-index__row{border-bottom:1px dashed var(--stone)}.blog-index__row:last-child{border-bottom:0}.blog-index__link{transition:background-color var(--fade) ease;grid-template-columns:minmax(6.5rem,8.5rem) minmax(0,1fr);gap:1.25rem;margin-inline:-.5rem;padding:1.15rem .5rem;text-decoration:none;display:grid}.blog-index__link:hover,.blog-index__link:focus-visible{background:var(--key-ivory)}.blog-index__link:active{background:color-mix(in srgb, var(--key-ivory) 88%, var(--blue))}.blog-index__meta{flex-direction:column;gap:.2rem;font-family:IBM Plex Mono,monospace;display:flex}.blog-index__number{color:var(--muted);letter-spacing:.12em;font-size:.6875rem;font-weight:600}.blog-index__date{color:var(--blue);font-size:.8125rem;font-weight:600}.blog-index__body{min-width:0}.blog-index__title{text-underline-offset:.18em;font-size:1.125rem;font-weight:650;line-height:1.3;text-decoration-thickness:.08em;display:block}.blog-index__link:hover .blog-index__title{text-decoration:underline;text-decoration-color:var(--blue)}.blog-index__description{color:var(--muted);margin-top:.35rem;line-height:1.55;display:block}.blog-index__empty{color:var(--muted)}.blog-index__rss{color:inherit}.blog-post__article{padding-block:3rem 4rem}.blog-post__sheet{max-width:46rem;padding:1.75rem 2rem 1.5rem}.blog-post__title{font-size:clamp(1.75rem,1.4rem + 1.2vw,2.375rem);font-weight:650;line-height:1.15}.blog-post__description{color:var(--muted);margin-top:.75rem;font-size:1.0625rem}.blog-post__byline{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.5rem;margin-top:1rem;font-family:IBM Plex Mono,monospace;font-size:.75rem;display:flex}.blog-post__byline a{color:var(--blue);text-decoration-color:var(--blue);font-weight:600}.blog-post__byline-role:before{content:"·";margin-right:.5rem}.blog-post__sources{border-top:1px solid var(--stone);margin-top:2.5rem;padding-top:1.25rem}.blog-post__sources-title{letter-spacing:.12em;text-transform:uppercase;color:var(--blue);font-family:IBM Plex Mono,monospace;font-size:.6875rem;font-weight:600}.blog-post__sources-list{gap:.5rem;margin-top:.85rem;padding-left:1.15rem;font-size:.9375rem;display:grid}.blog-post__source-publisher{color:var(--muted);font-size:.8125rem}.blog-post__source-publisher:before{content:" — "}.blog-post__related{max-width:46rem;margin-top:1.75rem;padding:1.25rem 1.5rem}.blog-post__related-list{gap:.35rem;display:grid}.blog-post__related-list a{transition:background-color var(--fade) ease;border-radius:2px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;margin-inline:-.65rem;padding:.5rem .65rem;text-decoration:none;display:flex}.blog-post__related-list a:hover,.blog-post__related-list a:focus-visible{background:var(--key-ivory)}.blog-post__related-list a:active{background:color-mix(in srgb, var(--key-ivory) 88%, var(--blue))}.blog-post__related-title{text-decoration:underline;text-decoration-color:var(--stone);text-underline-offset:.2em;font-weight:600}.blog-post__related-list a:hover .blog-post__related-title{text-decoration-color:var(--blue)}.blog-post__related-date{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.6875rem}.blog-post__return{max-width:46rem;margin-top:1.75rem}.blog-post__return .keycap{text-decoration:none}.blog-prose{margin-top:2rem;line-height:1.65}.blog-prose>*+*{margin-top:1rem}.blog-prose h2,.blog-prose h3{margin-top:2.25rem;font-weight:650;line-height:1.2}.blog-prose h2{border-bottom:1px solid var(--stone);padding-bottom:.4rem;font-size:1.4375rem}.blog-prose h3{font-size:1.1875rem}.blog-prose a{text-decoration-color:var(--blue)}.blog-prose a:hover{color:var(--blue)}.blog-prose ul,.blog-prose ol{padding-left:1.4rem}.blog-prose li+li{margin-top:.35rem}.blog-prose blockquote{color:var(--muted);border-left:3px solid var(--blue);padding:.25rem 0 .25rem 1.15rem;font-style:italic}.blog-prose code{background:var(--key-ivory);border:1px solid var(--shadow-seam-20);border-radius:3px;padding:.1em .35em;font-family:IBM Plex Mono,monospace;font-size:.875em}.blog-prose pre{border:1px solid var(--seam);border-radius:4px;padding:1rem 1.15rem;overflow-x:auto;box-shadow:inset 0 1px #ffffff0f}.blog-prose pre code{background:0 0;border:0;padding:0;font-size:.8125rem;line-height:1.6}.blog-prose hr{background:var(--stone);border:0;height:1px;margin-block:2rem}.blog-prose img{border:1px solid var(--seam);box-shadow:0 .35rem 0 var(--shadow-seam-20)}.blog-prose table{border-collapse:collapse;width:100%;font-size:.9375rem}.blog-prose th,.blog-prose td{text-align:left;border:1px solid var(--stone);padding:.5rem .75rem}.blog-prose th{background:var(--key-ivory);letter-spacing:.08em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:.75rem;font-weight:600}@media (width<=40rem){.blog-index__sheet,.blog-post__sheet{padding:1.35rem 1.25rem 1.25rem}.blog-index__link{grid-template-columns:1fr;gap:.35rem}.blog-index__start-list{grid-template-columns:1fr;gap:.85rem}.blog-index__start-hint{-webkit-line-clamp:2;line-clamp:2}.blog-index__meta{flex-direction:row;align-items:baseline;gap:.75rem}.blog-sheet-heading,.blog-post__foot,.blog-index__foot{flex-direction:column;gap:.2rem}}.blog-post__dates{flex-wrap:wrap;gap:.5rem;display:flex}.punchcard-page__wrap[data-astro-cid-ltme3ffw]{max-width:46rem;padding-block:3rem 4rem}.punchcard[data-astro-cid-ltme3ffw]{background:repeating-linear-gradient(90deg, transparent 0, transparent 2.35rem, var(--shadow-seam-12) 2.35rem, var(--shadow-seam-12) calc(2.35rem + 1px)), var(--paper);padding:1.75rem 2rem 1.5rem}.punchcard__head[data-astro-cid-ltme3ffw]{border-bottom:2px solid var(--blue);gap:.5rem;padding-bottom:1rem;display:grid}.punchcard__stamp[data-astro-cid-ltme3ffw]{color:var(--paper);background:var(--blue);letter-spacing:.14em;justify-self:start;padding:.2rem .5rem;font-family:IBM Plex Mono,monospace;font-size:.6875rem;font-weight:600}.punchcard__head[data-astro-cid-ltme3ffw] h1[data-astro-cid-ltme3ffw]{font-size:clamp(1.5rem,1.2rem + 1.2vw,2.125rem);font-weight:650;line-height:1.15}.punchcard__head[data-astro-cid-ltme3ffw] time[data-astro-cid-ltme3ffw]{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.8125rem;font-weight:600}.punchcard__copy[data-astro-cid-ltme3ffw]{margin-top:1.5rem}.punchcard__copy[data-astro-cid-ltme3ffw] code[data-astro-cid-ltme3ffw]{background:var(--key-ivory);border:1px solid var(--shadow-seam-20);border-radius:3px;padding:.1em .35em;font-family:IBM Plex Mono,monospace;font-size:.875em}.punchcard__grid[data-astro-cid-ltme3ffw]{background:var(--stone);border:1px solid var(--stone);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1px;margin:1.75rem 0 0;display:grid}.punchcard__cell[data-astro-cid-ltme3ffw]{background:var(--paper);padding:.75rem .85rem}.punchcard__cell[data-astro-cid-ltme3ffw] dt[data-astro-cid-ltme3ffw]{color:var(--blue);letter-spacing:.12em;font-family:IBM Plex Mono,monospace;font-size:.6875rem;font-weight:600}.punchcard__cell[data-astro-cid-ltme3ffw] dd[data-astro-cid-ltme3ffw]{margin:.25rem 0 0;font-size:.9375rem;font-weight:550}.punchcard__foot[data-astro-cid-ltme3ffw]{color:var(--muted);border-top:1px solid var(--stone);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;gap:1rem;margin-top:1.75rem;padding-top:.65rem;font-family:IBM Plex Mono,monospace;font-size:.6875rem;font-weight:600;display:flex}.punchcard-page__return[data-astro-cid-ltme3ffw]{margin-top:1.75rem}.punchcard-page__return[data-astro-cid-ltme3ffw] .keycap[data-astro-cid-ltme3ffw]{text-decoration:none}
