.emdash-image[data-astro-cid-gxs6aqme]{margin:1.5rem 0}.emdash-image[data-astro-cid-gxs6aqme] img[data-astro-cid-gxs6aqme]{max-width:100%;height:auto}.emdash-image[data-astro-cid-gxs6aqme] figcaption[data-astro-cid-gxs6aqme]{font-size:.875rem;color:var(--emdash-caption-color, var(--color-muted, #666));margin-top:.5rem;text-align:center}.emdash-image--align-left[data-astro-cid-gxs6aqme],.emdash-image--align-right[data-astro-cid-gxs6aqme]{width:fit-content;max-width:50%}.emdash-image--align-left[data-astro-cid-gxs6aqme]{float:left;margin:0 1.5rem 1rem 0}.emdash-image--align-right[data-astro-cid-gxs6aqme]{float:right;margin:0 0 1rem 1.5rem}.emdash-image--align-center[data-astro-cid-gxs6aqme]{width:fit-content;margin-inline:auto}.emdash-image--align-wide[data-astro-cid-gxs6aqme],.emdash-image--align-full[data-astro-cid-gxs6aqme]{width:100%}@media(max-width:640px){.emdash-image--align-left[data-astro-cid-gxs6aqme],.emdash-image--align-right[data-astro-cid-gxs6aqme]{float:none;width:100%;max-width:100%;margin-inline:0}}.emdash-code[data-astro-cid-sc6ptlgt]{margin:1.5rem 0}.emdash-code-filename[data-astro-cid-sc6ptlgt]{font-size:.75rem;font-family:monospace;background:#2d2d2d;color:#ccc;padding:.5rem 1rem;border-radius:.5rem .5rem 0 0}.emdash-code[data-astro-cid-sc6ptlgt] pre[data-astro-cid-sc6ptlgt]{margin:0;padding:1rem;background:#1e1e1e;border-radius:.5rem;overflow-x:auto}.emdash-code-filename[data-astro-cid-sc6ptlgt]+pre[data-astro-cid-sc6ptlgt]{border-radius:0 0 .5rem .5rem}.emdash-code[data-astro-cid-sc6ptlgt] code[data-astro-cid-sc6ptlgt]{font-family:Fira Code,Consolas,monospace;font-size:.875rem;color:#e0e0e0}.emdash-embed[data-astro-cid-n4ybebrj]{margin:1.5rem 0}.emdash-embed-video[data-astro-cid-n4ybebrj]{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}.emdash-embed-video[data-astro-cid-n4ybebrj] iframe[data-astro-cid-n4ybebrj],.emdash-embed-video[data-astro-cid-n4ybebrj] video[data-astro-cid-n4ybebrj]{position:absolute;top:0;left:0;width:100%;height:100%;border:0}.emdash-embed-audio[data-astro-cid-n4ybebrj]{width:100%}.emdash-embed-audio[data-astro-cid-n4ybebrj] audio[data-astro-cid-n4ybebrj]{width:100%}.emdash-embed[data-astro-cid-n4ybebrj] figcaption[data-astro-cid-n4ybebrj]{font-size:.875rem;color:var(--emdash-caption-color, var(--color-muted, #666));margin-top:.5rem;text-align:center}.emdash-gallery[data-astro-cid-r6ofyu5h]{display:grid;grid-template-columns:repeat(var(--columns, 3),1fr);gap:1rem;margin:1.5rem 0}.emdash-gallery-item[data-astro-cid-r6ofyu5h]{margin:0}.emdash-gallery-item[data-astro-cid-r6ofyu5h] img[data-astro-cid-r6ofyu5h]{width:100%;height:auto;object-fit:cover;aspect-ratio:1}.emdash-gallery-item[data-astro-cid-r6ofyu5h] figcaption[data-astro-cid-r6ofyu5h]{font-size:.75rem;color:var(--emdash-caption-color, var(--color-muted, #666));margin-top:.25rem;text-align:center}@media(max-width:640px){.emdash-gallery[data-astro-cid-r6ofyu5h]{grid-template-columns:repeat(2,1fr)}}.emdash-columns[data-astro-cid-f4qbrc4r]{display:flex;gap:2rem;margin:1.5rem 0}.emdash-column[data-astro-cid-f4qbrc4r]{flex:1;min-width:0}@media(max-width:768px){.emdash-columns[data-astro-cid-f4qbrc4r]{flex-direction:column;gap:1rem}}.emdash-break[data-astro-cid-qkxayjbm]{margin:2rem 0}.emdash-break-line[data-astro-cid-qkxayjbm]{border:none;border-top:1px solid var(--emdash-break-color, var(--color-border, #e0e0e0))}.emdash-break-dots[data-astro-cid-qkxayjbm]{text-align:center;color:var(--emdash-break-dots-color, var(--color-muted, #999));letter-spacing:.5em}.emdash-break-space[data-astro-cid-qkxayjbm]{height:2rem}.emdash-html-block[data-astro-cid-jxfsfe2z]{margin:1.5rem 0}.emdash-table-wrapper[data-astro-cid-gdtl6kfd]{margin:1.5rem 0;overflow-x:auto}.emdash-table[data-astro-cid-gdtl6kfd]{width:100%;border-collapse:collapse;font-size:.9rem}.emdash-table[data-astro-cid-gdtl6kfd] th[data-astro-cid-gdtl6kfd],.emdash-table[data-astro-cid-gdtl6kfd] td[data-astro-cid-gdtl6kfd]{border:1px solid var(--color-border, #ddd);padding:.75rem;text-align:left}.emdash-table[data-astro-cid-gdtl6kfd] th[data-astro-cid-gdtl6kfd] p,.emdash-table[data-astro-cid-gdtl6kfd] td[data-astro-cid-gdtl6kfd] p{margin:0}.emdash-table[data-astro-cid-gdtl6kfd] th[data-astro-cid-gdtl6kfd]{background:var(--color-surface, #f5f5f5);font-weight:600}.emdash-table[data-astro-cid-gdtl6kfd] tbody[data-astro-cid-gdtl6kfd] tr[data-astro-cid-gdtl6kfd]:nth-child(2n){background:var(--color-bg-subtle, #fafafa)}.emdash-table[data-astro-cid-gdtl6kfd] tbody[data-astro-cid-gdtl6kfd] tr[data-astro-cid-gdtl6kfd]:hover{background:var(--color-surface, #f0f0f0)}.emdash-button[data-astro-cid-lkidb26g]{display:inline-block;padding:.75em 1.5em;border-radius:4px;text-decoration:none;font-weight:500;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}.emdash-button--default[data-astro-cid-lkidb26g],.emdash-button--fill[data-astro-cid-lkidb26g]{background-color:var(--emdash-button-bg, #0073aa);color:var(--emdash-button-color, #fff);border:2px solid var(--emdash-button-bg, #0073aa)}.emdash-button--default[data-astro-cid-lkidb26g]:hover,.emdash-button--fill[data-astro-cid-lkidb26g]:hover{background-color:var(--emdash-button-bg-hover, #005177);border-color:var(--emdash-button-bg-hover, #005177)}.emdash-button--outline[data-astro-cid-lkidb26g]{background-color:transparent;color:var(--emdash-button-bg, #0073aa);border:2px solid var(--emdash-button-bg, #0073aa)}.emdash-button--outline[data-astro-cid-lkidb26g]:hover{background-color:var(--emdash-button-bg, #0073aa);color:var(--emdash-button-color, #fff)}.emdash-buttons[data-astro-cid-zrtooknc]{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0}.emdash-buttons--vertical[data-astro-cid-zrtooknc]{flex-direction:column;align-items:flex-start}.emdash-buttons--horizontal[data-astro-cid-zrtooknc]{flex-direction:row;align-items:center}.emdash-cover[data-astro-cid-xczkeh7b]{position:relative;display:flex;align-items:center;padding:2rem;margin:1.5rem 0;overflow:hidden;border-radius:4px;background-color:var(--emdash-cover-fallback-bg, #333)}.emdash-cover__background[data-astro-cid-xczkeh7b]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.emdash-cover__video[data-astro-cid-xczkeh7b]{object-fit:cover}.emdash-cover__overlay[data-astro-cid-xczkeh7b]{position:absolute;inset:0;z-index:1}.emdash-cover__content[data-astro-cid-xczkeh7b]{position:relative;z-index:2;width:100%;color:var(--emdash-cover-text-color, #fff)}.emdash-cover--align-left[data-astro-cid-xczkeh7b]{justify-content:flex-start;text-align:left}.emdash-cover--align-center[data-astro-cid-xczkeh7b]{justify-content:center;text-align:center}.emdash-cover--align-right[data-astro-cid-xczkeh7b]{justify-content:flex-end;text-align:right}.emdash-cover__content[data-astro-cid-xczkeh7b] h1,.emdash-cover__content[data-astro-cid-xczkeh7b] h2,.emdash-cover__content[data-astro-cid-xczkeh7b] h3,.emdash-cover__content[data-astro-cid-xczkeh7b] h4,.emdash-cover__content[data-astro-cid-xczkeh7b] p{color:inherit}.emdash-file[data-astro-cid-xarbsxpg]{display:flex;align-items:center;gap:.75rem;padding:1rem;margin:1rem 0;background-color:var(--emdash-file-bg, #f5f5f5);border-radius:4px;border:1px solid var(--emdash-file-border, #e0e0e0)}.emdash-file__link[data-astro-cid-xarbsxpg]{display:flex;align-items:center;gap:.5rem;flex:1;text-decoration:none;color:var(--emdash-file-color, #333)}.emdash-file__link[data-astro-cid-xarbsxpg]:hover{text-decoration:underline}.emdash-file__icon[data-astro-cid-xarbsxpg]{width:1.5rem;height:1.5rem;flex-shrink:0;color:var(--emdash-file-icon-color, #666)}.emdash-file__name[data-astro-cid-xarbsxpg]{font-weight:500;word-break:break-all}.emdash-file__download[data-astro-cid-xarbsxpg]{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:var(--emdash-button-bg, #0073aa);color:var(--emdash-button-color, #fff);border-radius:4px;transition:background-color .2s}.emdash-file__download[data-astro-cid-xarbsxpg]:hover{background-color:var(--emdash-button-bg-hover, #005177)}.emdash-file__download[data-astro-cid-xarbsxpg] svg[data-astro-cid-xarbsxpg]{width:1.25rem;height:1.25rem}.emdash-pullquote[data-astro-cid-gwfxwbit]{margin:2rem 0;padding:1.5rem 2rem;border-top:4px solid var(--emdash-pullquote-border, #0073aa);border-bottom:4px solid var(--emdash-pullquote-border, #0073aa);text-align:center}.emdash-pullquote__text[data-astro-cid-gwfxwbit]{font-size:1.5rem;font-style:italic;line-height:1.4;color:var(--emdash-pullquote-color, #333);margin:0}.emdash-pullquote__citation[data-astro-cid-gwfxwbit]{margin-top:1rem;font-size:.9rem;font-style:normal;color:var(--emdash-pullquote-citation-color, #666)}:root{color-scheme:light;--ink: #171717;--muted: #5c5c5c;--canvas: #ffffff;--surface: #f4f4f4;--line: #d3d3d3;--focus: #171717;--focus-soft: rgba(23, 23, 23, .14);--gutter: clamp(16px, 4vw, 48px);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-snap: cubic-bezier(.22, 1.18, .36, 1);font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic,Meiryo,sans-serif;color:var(--ink);background:var(--canvas);line-height:1.6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:0;min-height:100vh;background:var(--canvas);color:var(--ink)}a{color:inherit;transition:color .3s var(--ease-out)}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}main{min-height:100vh;width:100%}.page-shell{width:100%;max-width:1200px;margin:0 auto;padding:var(--gutter)}.search-bar{display:flex;align-items:center;width:100%;min-height:30px;height:30px;margin:8px 0 7px;border:1px solid #777777;border-radius:18px;background:var(--surface);transition:border-color .3s var(--ease-out),background-color .3s var(--ease-out),box-shadow .3s var(--ease-out)}.search-bar:focus-within{border-color:var(--focus);background:var(--canvas);box-shadow:0 0 0 4px var(--focus-soft)}.search-bar input{flex:1;min-width:0;height:28px;border:0;outline:0;background:transparent;padding:0 13px;color:var(--ink);font-size:14px}.search-bar input::placeholder{color:var(--muted)}.search-bar button{display:grid;place-items:center;flex:0 0 32px;width:32px;height:28px;border:0;background:transparent;color:var(--ink);cursor:pointer;transition:color .3s var(--ease-out),transform .3s var(--ease-snap)}.search-bar button:hover{color:var(--ink)}.search-bar button:active{transform:scale(.88)}.search-bar button:focus-visible{outline:2px solid var(--focus);outline-offset:-6px;border-radius:8px}.search-bar svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.8}.tag-list{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tag{display:inline-flex;align-items:center;min-height:22px;padding:1px 10px;border:1px solid var(--tag-color, #8b8b8b);border-radius:12px;background:transparent;color:var(--ink);font-size:11px;line-height:1.2;text-decoration:none;cursor:default;transition:background-color .35s var(--ease-out),border-color .35s var(--ease-out),color .35s var(--ease-out),box-shadow .35s var(--ease-out),transform .25s var(--ease-snap)}.tag:where(button):hover,.tag:where(button).active{border-color:var(--tag-color, var(--ink));background:var(--tag-color, var(--ink));color:var(--tag-on, var(--canvas))}.tag:where(button){cursor:pointer}.tag:active{transform:scale(.95)}.tag:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.post-list{width:100%;margin-top:18px}.post-filter-item{animation:post-enter .72s var(--ease-snap) var(--card-delay, 0ms) both}.post-card{padding:0;border-bottom:1px solid var(--line)}.post-filter-item:last-of-type .post-card{border-bottom:0}.post-link{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;min-width:0;padding:13px 28px 13px 0;border-radius:8px;text-decoration:none}.post-link:focus-visible{outline:2px solid var(--focus);outline-offset:5px}.post-arrow{position:absolute;top:50%;right:0;color:var(--focus);font-size:18px;line-height:1;opacity:0;transform:translate3d(-8px,-50%,0);transition:opacity .35s var(--ease-out),transform .45s var(--ease-snap)}.post-link:hover .post-arrow,.post-link:focus-visible .post-arrow{opacity:1;transform:translate3d(0,-50%,0)}.post-card-main{min-width:0}.post-card-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:18px;align-items:center;min-width:0}.post-link:not(.has-thumb){grid-template-columns:minmax(0,1fr)}.post-card-copy h2{grid-column:1;grid-row:1;min-width:0;margin:0;overflow:hidden;font-size:clamp(16px,2vw,20px);font-weight:400;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.post-card-copy p{grid-column:1;margin:5px 0 0;overflow:hidden;color:var(--muted);font-size:13px;line-height:1.55;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.post-meta{grid-column:2;grid-row:1;padding-top:3px;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.post-thumb{width:clamp(72px,10vw,144px);aspect-ratio:3 / 2;overflow:hidden;background:var(--surface);border-radius:0;display:grid;place-items:center}.post-thumb img{display:block;width:100%;height:100%;object-fit:contain}.post-thumb.is-cropped img{object-fit:cover}.post-thumb img[hidden],.article-hero img[hidden]{display:none}.post-card .tag{border-color:var(--tag-color, var(--ink));background:var(--tag-color, var(--ink));color:var(--tag-on, var(--canvas))}.post-card .tag:where(button):hover,.post-card .tag:where(button).active{border-color:var(--tag-hover, #666666);background:var(--tag-hover, #666666);color:var(--tag-on, var(--canvas))}.empty{padding:72px 0;color:var(--muted);text-align:center}.pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:clamp(48px,7vw,72px);font-size:13px}.pagination button{appearance:none;display:grid;place-items:center;min-width:36px;min-height:36px;padding:0 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);font:inherit;cursor:pointer;transition:background-color .3s var(--ease-out),border-color .3s var(--ease-out),color .3s var(--ease-out),transform .25s var(--ease-snap)}.pagination button:hover:not(:disabled){border-color:var(--line);background:var(--surface)}.pagination button:active:not(:disabled){transform:scale(.9)}.pagination button[aria-current=page]{border-color:var(--ink);background:var(--ink);color:var(--canvas);font-weight:700}.pagination button:disabled{color:var(--muted);cursor:default;opacity:.45}.pagination button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.article-shell{width:100%;max-width:1200px;margin:0 auto;padding:0 0 clamp(64px,8vw,96px)}.article-hero{width:100%;height:clamp(180px,30vw,360px);overflow:hidden;margin:0 0 clamp(24px,4vw,40px);background:var(--surface);animation:hero-enter .9s var(--ease-out) 40ms both}.article-hero img{display:block;width:100%;height:100%;object-fit:cover}.article-header{margin:0 var(--gutter);animation:content-enter .72s var(--ease-out) .12s both}.article-shell>.article-header:first-child{padding-top:clamp(28px,5vw,56px)}.article-header h1{margin:0;padding-bottom:14px;border-bottom:1px solid var(--line);font-size:clamp(26px,4vw,42px);font-weight:400;line-height:1.3;overflow-wrap:anywhere}.article-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;padding-top:12px;color:var(--muted);font-size:12px}.article-body{width:100%;max-width:840px;margin:0 auto;padding:clamp(32px,5vw,60px) var(--gutter) 0;font-size:clamp(15px,1.5vw,18px);line-height:1.9;overflow-wrap:anywhere;animation:content-enter .72s var(--ease-out) .22s both}.article-body p{margin:0 0 1.4em}.article-body h2{margin:2em 0 .7em;font-size:clamp(22px,3vw,30px);scroll-margin-top:24px}.article-body h3{margin:1.7em 0 .6em;font-size:clamp(19px,2.5vw,24px);scroll-margin-top:24px}.article-body a{color:var(--focus);text-decoration-thickness:.08em;text-underline-offset:.16em}.article-body blockquote{margin:1.5em 0;padding:.5em 1em;border-left:3px solid var(--focus);color:var(--muted)}.article-body pre{max-width:100%;overflow:auto;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:13px}.article-body img{display:block;max-width:100%;height:auto}.article-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding-block:8px;margin:48px var(--gutter) 0;color:var(--ink);font-size:13px;text-decoration:none;transition:color .3s var(--ease-out),gap .45s var(--ease-snap)}.article-back:hover{gap:12px;color:var(--focus)}.article-back:focus-visible{outline:2px solid var(--focus);outline-offset:5px;border-radius:4px}.archive,.page-content{width:100%;margin:0;padding:var(--gutter)}.archive h1,.page-content h1{font-size:clamp(28px,4vw,38px);font-weight:500}.archive-count{margin:0 0 22px;color:var(--muted);font-size:12px}.page-content{font-size:16px;line-height:1.9}.not-found{padding:100px 32px;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes post-enter{0%{opacity:0;transform:translate3d(0,18px,0)}72%{opacity:1;transform:translate3d(0,-2px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes hero-enter{0%{opacity:0;transform:translate3d(0,-14px,0) scale(1.02)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes content-enter{0%{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translateZ(0)}}@media(max-width:560px){.post-link{gap:8px}.post-card-copy{grid-template-columns:minmax(0,1fr);gap:3px}.post-card-copy h2{grid-row:1}.post-meta{grid-column:1;grid-row:2;padding-top:0;font-size:11px}.post-card-copy p{grid-row:3}.post-thumb{width:72px}.article-meta{justify-content:flex-start}.article-hero{height:clamp(180px,54vw,260px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
