@layer base,patterns;@layer components{.c-post-authors{gap:.5rem;width:min(100%,52rem);display:grid}.c-post-authors>.c-post-author__label{margin:0}.c-post-authors__list{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1rem 1.5rem;margin:0;padding:0;list-style:none;display:grid}.c-post-authors__list>li{min-width:0}.c-post-authors--compact .c-post-authors__list{grid-template-columns:minmax(0,1fr);gap:.75rem}.c-post-author{--_portrait-size:3.5rem;grid-template-columns:var(--_portrait-size) minmax(0, 1fr);align-items:center;gap:1rem;min-width:0;max-width:60ch;display:grid}.c-post-author__portrait{width:var(--_portrait-size);height:var(--_portrait-size);background:color-mix(in srgb, var(--heading-accent) 10%, var(--background));border:.0625rem solid var(--border);place-items:center;display:grid;position:relative}.c-post-author__portrait:after{content:"";background:var(--heading-accent);width:.375rem;height:.375rem;position:absolute;top:-.1875rem;right:-.1875rem}.c-post-author__portrait img{object-fit:cover;background:#fff;width:100%;height:100%;display:block}.c-post-author__cat,.c-post-author__cat svg{width:100%;height:100%;display:block}.c-post-author__details{overflow-wrap:anywhere;gap:.125rem;min-width:0;line-height:1.5;display:grid}.c-post-author__label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:.6875rem}.c-post-author__name{color:var(--text);font-size:.9375rem;font-weight:600}.c-post-author__title{color:var(--text-2);font-size:.8125rem}.c-post-author--compact{--_portrait-size:2.5rem;gap:.75rem}.c-post-author--compact .c-post-author__name{font-size:.8125rem}.c-post-author--compact .c-post-author__title{font-size:.75rem}@media not (min-width:40rem){.c-post-author{gap:.75rem}}.p-posts-hero,.p-posts-list,.p-posts-article__body{--_mono:"JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;--_line:color-mix(in srgb, var(--text) 6%, transparent)}:where(.p-posts-hero,.p-posts-list,.p-posts-article__body) .container,.p-posts-article__body{align-items:stretch}.p-posts-hero{padding-block:clamp(56px,7vw,96px)}.p-posts-hero__inner{gap:var(--site-space-intro);grid-template-columns:minmax(0,1fr);display:grid}.p-posts-hero h1{max-width:18ch;margin:0;font-size:clamp(2.375rem,4.6vw,4rem);font-weight:800;line-height:1.08}.p-posts-hero__lead{max-width:60ch;color:var(--text-2);margin:0;font-size:clamp(1.0625rem,1.4vw,1.25rem);line-height:1.6}.p-posts-back{font-family:var(--_mono);color:var(--text-2);grid-template-columns:auto minmax(0,1fr);justify-self:start;align-items:center;gap:8px;font-size:.8125rem;text-decoration:none;display:grid}.p-posts-back:hover{color:var(--text)}.p-posts-list{padding-block:var(--site-section-space)}.p-posts-list>.container{grid-template-columns:minmax(0,1fr);gap:1.5rem;display:grid}.p-posts-filters{--_rule:var(--border);background:0 0;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem 2rem;margin:0;display:grid}.p-posts-filters__tile{align-content:start;gap:var(--site-space-label);background:0 0;border:0;min-width:0;margin:0;padding:0;display:grid}.p-posts-filters__tile--search{grid-column:1/-1}.p-posts-filters__label{float:left;font-family:var(--_mono);letter-spacing:.1em;text-transform:uppercase;color:var(--heading-accent);padding:0;font-size:.75rem;font-weight:600}.p-posts-filters__label+*{clear:both}.p-posts-filters__search{border:1px solid var(--_rule);background:color-mix(in srgb, var(--brand-500) 4%, var(--background));grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;padding-inline:1rem;transition:border-color .2s;display:grid;position:relative}.p-posts-filters__search:after{content:"";background:var(--heading-accent);pointer-events:none;width:.4375rem;height:.4375rem;position:absolute;top:-.1875rem;right:-.1875rem}.p-posts-filters__search:focus-within{border-color:var(--heading-accent);outline:.125rem solid var(--heading-accent);outline-offset:-.125rem;background:color-mix(in srgb, var(--heading-accent) 6%, var(--background))}.p-posts-filters__search svg{width:1.125rem;height:1.125rem;color:var(--heading-accent);fill:none}.p-posts-filters__search input{min-width:0;min-height:var(--site-control-height);color:var(--text);font:inherit;background:0 0;border:0;padding:0;font-size:.875rem;font-weight:400}.p-posts-filters__search input::placeholder{color:var(--text-2);font-weight:400}.p-posts-filters__search input:focus{outline:none}.p-posts-filters__search input::-webkit-search-cancel-button{cursor:pointer}.p-posts-filters__chips{scrollbar-width:thin;grid-auto-columns:max-content;grid-auto-flow:column;justify-content:start;gap:.5rem;margin:-.25rem;padding:.25rem;display:grid;overflow-x:auto}.p-posts-chip{display:inline-grid;position:relative}.p-posts-chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.p-posts-chip span{border:1px solid var(--_rule);min-height:2.75rem;color:var(--text);letter-spacing:.02em;white-space:nowrap;background:0 0;place-items:center;padding:0 1rem;font-family:inherit;font-size:.8125rem;font-weight:600;transition:background-color .2s,border-color .2s,color .2s;display:grid}.p-posts-chip:hover span{border-color:var(--heading-accent);color:var(--heading-accent)}.p-posts-chip input:checked+span{border-color:var(--heading-accent);background:color-mix(in srgb, var(--heading-accent) 10%, var(--background));color:var(--heading-accent)}.p-posts-chip input:checked+span:after{content:"";background:var(--accent-500);width:.4375rem;height:.4375rem;position:absolute;top:-.1875rem;right:-.1875rem}.p-posts-chip input:focus-visible+span{outline:.125rem solid var(--heading-accent);outline-offset:-.125rem}.p-posts-filters__status{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem 1.5rem;margin-block:0;display:grid}.p-posts-filters__status p{color:var(--text-2);margin:0;font-size:.875rem}.p-posts-filters__clear:disabled{visibility:hidden}.p-posts-no-results{border:1px dashed var(--border);background:var(--background);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,72px);padding:clamp(32px,5vw,64px);display:grid}.p-posts-no-results__art{width:clamp(96px,11vw,140px);height:auto}.p-posts-no-results__lens{fill:var(--heading-accent)}.p-posts-no-results__handle{fill:var(--text)}.p-posts-no-results__glint{fill:var(--accent-500);animation:1.1s step-end infinite p-posts-blink}.p-posts-no-results__copy{justify-items:start;gap:var(--site-space-title);display:grid}.p-posts-no-results__status{font-family:var(--_mono);letter-spacing:.04em;color:var(--heading-accent);margin:0;font-size:.8125rem}.p-posts-no-results h2{margin:0;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.2}.p-posts-no-results__copy>p:not(.p-posts-no-results__status){max-width:52ch;color:var(--text-2);margin:0 0 8px;line-height:1.6}@media (prefers-reduced-motion:reduce){.p-posts-no-results__glint{animation:none}.p-posts-chip span,.p-posts-filters__search{transition:none}}@media not (min-width:640px){.p-posts-filters{grid-template-columns:minmax(0,1fr)}.p-posts-filters__chips{padding-bottom:.375rem}.p-posts-filters__search input{font-size:1rem}.p-posts-no-results{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center;gap:24px;padding:32px 20px}.p-posts-no-results__copy{justify-items:center}}.p-posts-filters[hidden],.p-posts-filters__status[hidden],.p-posts-grid[hidden],.p-posts-grid>li[hidden],.p-posts-no-results[hidden]{display:none}.p-posts-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.p-posts-grid>li{grid-row:span 5;grid-template-rows:subgrid;row-gap:0;display:grid}.p-posts-card{--_pad-block:32px;--_pad-inline:28px;grid-row:span 5;grid-template-rows:subgrid;row-gap:var(--site-space-title);min-height:300px;padding:var(--_pad-block) var(--_pad-inline);border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--background);display:grid;position:relative}.p-posts-card:hover{background:var(--background-2)}.p-posts-card__cover{width:calc(100% + var(--_pad-inline) * 2);aspect-ratio:16/9;max-width:none;height:100%;min-height:0;margin:calc(var(--_pad-block) * -1) calc(var(--_pad-inline) * -1) 8px;object-fit:cover;border-bottom:1px solid var(--border);background:var(--background-2);display:block}.p-posts-card__cover--empty{background-image:linear-gradient(var(--_line) 1px, transparent 1px), linear-gradient(90deg, var(--_line) 1px, transparent 1px);background-size:24px 24px;position:relative}.p-posts-card__cover--empty:after{content:"";background:var(--accent-500);width:8px;height:8px;position:absolute;top:24px;left:24px}.theme-dark .p-posts-card__cover:not(.p-posts-card__cover--empty){filter:brightness(.92)}.p-posts-card__meta{font-family:var(--_mono);letter-spacing:1px;text-transform:uppercase;color:var(--text-2);flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:.75rem;display:flex}.p-posts-card__time:before{content:"";vertical-align:.2em;background:var(--text-2);width:4px;height:4px;margin-inline-end:10px;display:inline-block}.p-posts-card__tags{color:var(--heading-accent);overflow-wrap:anywhere;margin-inline-start:auto}@media (min-width:1000px){.p-posts-grid>li:nth-child(1 of :not([hidden])){grid-column:span 2}.p-posts-grid>li:nth-child(1 of :not([hidden])) .p-posts-card__cover{aspect-ratio:21/9}.p-posts-grid>li:nth-child(1 of :not([hidden])) h2{font-size:clamp(1.625rem,2.2vw,2rem)}}.p-posts-card h2{margin:0;font-size:1.375rem;line-height:1.3}.p-posts-card h2 a{color:inherit;text-decoration:none}.p-posts-card h2 a:after{content:"";position:absolute;inset:0}.p-posts-card h2 a:focus-visible{outline:none}.p-posts-card:has(a:focus-visible){outline:2px solid var(--heading-accent);outline-offset:-2px}.p-posts-card p{color:var(--text-2);margin:0;line-height:1.6}.p-posts-card__footer{align-content:end;gap:20px;display:grid}.p-posts-card__more{color:var(--heading-accent);grid-template-columns:max-content auto;justify-content:start;align-items:center;gap:8px;font-weight:600;display:grid}.p-posts-empty{border:1px dashed var(--border);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,72px);padding:clamp(32px,5vw,64px);display:grid}.p-posts-empty__art{width:clamp(120px,14vw,180px);height:auto}.p-posts-empty__sheet{fill:var(--background-2);stroke:color-mix(in srgb, var(--text) 35%, transparent);stroke-width:1px}.p-posts-empty__head{fill:var(--heading-accent)}.p-posts-empty__line{fill:color-mix(in srgb, var(--text) 14%, transparent)}.p-posts-empty__cursor{fill:var(--heading-accent);animation:1s step-end infinite p-posts-blink}@keyframes p-posts-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.p-posts-empty__cursor{animation:none}}.p-posts-empty__copy{justify-items:start;gap:14px;display:grid}.p-posts-empty__status{font-family:var(--_mono);color:var(--text-2);margin:0;font-size:.8125rem}.p-posts-empty h2{margin:0;font-size:clamp(1.625rem,2.6vw,2.25rem);line-height:1.2}.p-posts-empty__copy>p:not(.p-posts-empty__status){max-width:52ch;color:var(--text-2);margin:0;line-height:1.6}.p-posts-empty__actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px;margin-top:10px;display:grid}.p-posts-hero h1:lang(ja){max-width:20em;line-height:1.3}.p-posts-hero__lead:lang(ja),.p-posts-empty__copy:lang(ja) p{line-height:1.9}.p-posts-article__updated{font-family:var(--_mono);color:var(--text-2);margin:0;font-size:.8125rem}.theme-dark :is(.p-posts-article,.p-posts-list){background-color:var(--dark-800)}.theme-dark .p-posts-article .p-posts-hero{border-bottom:1px solid #ffffff14}.p-posts-article__body{padding-top:clamp(1.5rem,3vw,3rem);padding-bottom:var(--site-section-space);grid-template-columns:minmax(0,1fr);justify-items:start;gap:2.5rem;display:grid}.p-posts-article__cover{aspect-ratio:16/9;object-fit:cover;grid-area:cover;width:100%;height:auto}.p-posts-article__layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"prose";justify-self:center;align-items:start;gap:2rem;width:min(100%,52rem);display:grid}.p-posts-article__layout--cover{grid-template-areas:"cover""prose"}.p-posts-article__layout--toc{grid-template-areas:"toc""prose"}.p-posts-article__layout--cover.p-posts-article__layout--toc{grid-template-areas:"cover""toc""prose"}.p-posts-article__contents{grid-area:toc}.p-posts-article__prose{grid-area:prose}.p-posts-article__contents,.p-posts-article__prose{width:100%;min-width:0}@media (min-width:70rem){.p-posts-article__layout--toc{grid-template-columns:minmax(0,1fr) 20rem;grid-template-areas:"prose toc";gap:3rem;width:min(100%,75rem)}.p-posts-article__layout--cover.p-posts-article__layout--toc{grid-template-areas:"cover toc""prose toc";row-gap:2rem}.p-posts-article__contents{position:sticky;top:6.5rem}}.p-posts-grid:not(:has(>li:not([hidden])~li:not([hidden]))){grid-template-columns:minmax(0,1fr)}@media (min-width:760px){.p-posts-grid:not(:has(>li:not([hidden])~li:not([hidden])))>li:not([hidden]){grid-area:auto/1/auto/-1;display:block}.p-posts-grid:not(:has(>li:not([hidden])~li:not([hidden]))) .p-posts-card{--_pad-block:clamp(32px, 4vw, 56px);--_pad-inline:clamp(28px, 4vw, 56px);column-gap:var(--_pad-inline);grid-template-rows:auto auto auto 1fr;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);min-height:clamp(320px,32vw,440px);padding-left:0}.p-posts-grid:not(:has(>li:not([hidden])~li:not([hidden]))) .p-posts-card>:not(.p-posts-card__cover){grid-column:2}.p-posts-grid:not(:has(>li:not([hidden])~li:not([hidden]))) .p-posts-card__cover{width:100%;height:calc(100% + var(--_pad-block) * 2);aspect-ratio:auto;margin:calc(var(--_pad-block) * -1) 0;border-bottom:0;border-right:1px solid var(--border);grid-area:1/1/-1}.p-posts-grid:not(:has(>li:not([hidden])~li:not([hidden]))) h2{font-size:clamp(1.75rem,2.6vw,2.375rem);line-height:1.2}}.p-posts-article__layout--toc .p-posts-article__prose{counter-reset:post-section}.p-posts-article__layout--toc .p-posts-article__prose h2:not(.sr-only){counter-increment:post-section;counter-reset:post-subsection}.p-posts-article__layout--toc .p-posts-article__prose h3{counter-increment:post-subsection}.p-posts-article__layout--toc .p-posts-article__prose :is(h2:not(.sr-only),h3){padding-top:1.375rem;position:relative}.p-posts-article__layout--toc .p-posts-article__prose :is(h2:not(.sr-only),h3):after{content:counter(post-section, decimal-leading-zero);color:var(--heading-accent);font-family:var(--_mono);letter-spacing:.1em;margin:0;font-size:.75rem;font-weight:600;line-height:1;display:block;position:absolute;top:0;left:0}.p-posts-article__layout--toc .p-posts-article__prose h3:not(.sr-only):after{content:counter(post-section, decimal-leading-zero) "." counter(post-subsection);color:var(--text-2)}.p-posts-more{padding-block:var(--site-section-space);border-top:1px solid var(--border)}.p-posts-more__inner{justify-items:center;gap:2rem;display:grid}.p-posts-more__head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.5rem;width:min(100%,75rem);display:grid}.p-posts-more__heading{gap:var(--site-space-eyebrow);display:grid}.p-posts-more__head h2{margin:0;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.15}.p-posts-more__list{grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));gap:1rem;width:min(100%,75rem);margin:0;padding:0;list-style:none;display:grid}.p-posts-more__list>li{display:grid}.p-posts-more__card{border:1px solid var(--border);background:var(--background);color:var(--text);transition:background-color .15s var(--ease-out);grid-template-columns:9rem minmax(0,1fr) auto;align-items:center;gap:1.25rem;padding:1.25rem;text-decoration:none;display:grid;position:relative}.p-posts-more__card:after{content:"";background:var(--accent-500);width:.4375rem;height:.4375rem;position:absolute;top:-.1875rem;right:-.1875rem}.p-posts-more__card--text{grid-template-columns:minmax(0,1fr) auto}.p-posts-more__cover{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.p-posts-more__content{gap:.625rem;min-width:0;display:grid}.p-posts-more__arrow{width:1.25rem;height:1.25rem;color:var(--heading-accent);align-self:start}.p-posts-more__card:hover{background:var(--background-2)}.p-posts-more__card:hover .p-posts-more__title{color:var(--heading-accent)}.p-posts-more__card:focus-visible{outline:.125rem solid var(--heading-accent);outline-offset:-.125rem}.p-posts-more__meta{color:var(--text-2);font-family:var(--_mono);letter-spacing:.06em;text-transform:uppercase;grid-template-columns:repeat(2,max-content);gap:.375rem .875rem;font-size:.6875rem;display:grid}.p-posts-more__title{transition:color .15s var(--ease-out);overflow-wrap:anywhere;font-size:1.125rem;font-weight:700;line-height:1.35}.p-posts-more__description{color:var(--text-2);font-size:.875rem;line-height:1.6}.theme-dark .p-posts-more,.theme-dark .p-posts-more__card{background-color:var(--dark-800)}.theme-dark .p-posts-more__card:hover{background-color:color-mix(in srgb, #fff 5%, var(--dark-800))}@media not (min-width:1000px){.p-posts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media not (min-width:640px){.p-posts-hero{padding-block:var(--site-section-space)}.p-posts-hero h1{overflow-wrap:anywhere;font-size:clamp(2rem,8.5vw,2.75rem)}.p-posts-grid{grid-template-columns:minmax(0,1fr)}.p-posts-card__tags{margin-inline-start:0}.p-posts-more__list{grid-template-columns:minmax(0,1fr)}.p-posts-more__card{grid-template-columns:minmax(0,1fr) auto;gap:1rem;padding:1rem}.p-posts-more__cover{aspect-ratio:16/9;grid-column:1/-1}.p-posts-more__head{grid-template-columns:minmax(0,1fr);justify-items:start}.p-posts-more__meta{grid-template-columns:minmax(0,1fr)}.p-posts-card{--_pad-block:24px;--_pad-inline:20px;min-height:0}.p-posts-empty{grid-template-columns:minmax(0,1fr);justify-items:stretch;gap:24px;padding:24px 20px}.p-posts-empty__art{justify-self:center}.p-posts-empty__copy{justify-items:stretch}.p-posts-empty__actions{grid-template-columns:minmax(0,1fr);gap:12px;width:100%}.p-posts-article__body{gap:24px}}}@layer utilities;
