:where(.prose pre,.article-code){font-size:var(--font-size-small);border:0;border-radius:.618rem;margin-block:1rem;padding:1rem;line-height:1.5;overflow-x:auto}:where(.prose pre,.article-code) code{font-size:inherit;background-color:#0000;border-radius:0;padding:0}:where(.prose pre[data-language],.article-code[data-language]){background-color:var(--shiki-light-bg,#f6f8fa)}.dark :where(.prose pre[data-language],.article-code[data-language]){background-color:var(--shiki-dark-bg,#24292e)}.code-block-wrapper{position:relative}.article-code-example{min-inline-size:0;max-inline-size:56rem;margin-block:1rem}.article-code-language{color:var(--muted-foreground);font-family:var(--font-mono);font-size:var(--font-size-caption);font-weight:500;line-height:var(--lh-body);display:block}.article-code-example pre{max-inline-size:100%;margin-block:var(--phi-neg2) 0;tab-size:2}.article-code-example pre:focus-visible{outline:2px solid var(--ring);outline-offset:-4px}.copy-button{border:1px solid var(--border);background-color:var(--muted);color:var(--muted-foreground);opacity:0;cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;padding:.5rem;transition:opacity .2s,background-color .2s;display:flex;position:absolute;inset-block-start:.5rem;inset-inline-end:.5rem}.code-block-wrapper:hover .copy-button,.copy-button:focus-visible{opacity:1}.copy-button:hover{background-color:var(--accent);color:var(--accent-foreground)}.copy-button.copied{color:#16a249}.copy-status{min-block-size:0;padding-inline:var(--phi-0);color:var(--muted-foreground);font-size:var(--font-size-caption);margin:0}.copy-status:not(:empty){min-block-size:2rem;padding-block:var(--phi-neg2);border-block-start:1px solid var(--border)}@media (hover:none){.copy-button{opacity:1}}.article-reading-content{grid-template-columns:repeat(9,minmax(0,1fr));font-size:1.0625rem;line-height:1.7;display:grid}.article-reading-content>*{grid-column:1/span 7;min-inline-size:0}.article-reading-content>:where(.article-figure-wide,.article-code-example,pre,table,.mermaid){grid-column:1/-1}.article-reading-content.prose :where(p,li){line-height:1.7}.article-figure{margin-block:var(--phi-1)}.article-image-trigger{border:1px solid var(--border);border-radius:var(--radius);background:var(--secondary);color:inherit;text-decoration:none;display:block;overflow:hidden}.article-image-trigger:hover{border-color:var(--link)}.article-image-trigger:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.article-image-trigger img{block-size:auto;inline-size:100%;margin:0;transition:opacity .18s;display:block}.article-image-trigger:hover img{opacity:.94}.article-figure figcaption{gap:var(--phi-0);padding-block:var(--phi-neg1);border-block-end:1px solid var(--border);color:var(--muted-foreground);grid-template-columns:7rem minmax(0,1fr);display:grid}.article-figure-label{color:var(--link);font-family:var(--font-mono);font-size:var(--font-size-caption)}.article-figure figcaption p{font-size:var(--font-size-small);line-height:var(--lh-body);margin:0}.article-image-dialog{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);max-block-size:92dvh;inline-size:min(92vw,80rem);max-inline-size:none;color:var(--foreground);box-shadow:var(--shadow-card);margin:auto;padding:0;overflow:visible}.article-image-dialog::backdrop{background:color-mix(in srgb, var(--foreground) 72%, transparent);backdrop-filter:blur(3px)}.article-image-dialog-panel{gap:var(--phi-neg1);max-block-size:92dvh;padding:var(--phi-0);display:grid;position:relative}.article-image-dialog-panel img{object-fit:contain;justify-self:center;block-size:auto;max-block-size:calc(92dvh - 5rem);inline-size:auto;max-inline-size:100%;display:block}.article-image-dialog-panel p{max-inline-size:56rem;color:var(--muted-foreground);font-size:var(--font-size-small);margin:0}.article-image-dialog-close{z-index:1;border:1px solid var(--border);background:var(--background);block-size:2.75rem;inline-size:2.75rem;color:var(--foreground);cursor:pointer;box-shadow:var(--shadow-card);border-radius:50%;place-items:center;display:grid;position:absolute;inset-block-start:var(--phi-neg1);inset-inline-end:var(--phi-neg1)}.article-image-dialog-close:hover{background:var(--accent);color:var(--accent-foreground)}.article-image-dialog-close:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (width<=48rem){.article-reading-content>*{grid-column:1/-1}.article-figure figcaption{gap:var(--phi-neg2);grid-template-columns:1fr}.article-image-dialog{max-block-size:calc(100dvh - 1rem);inline-size:calc(100vw - 1rem)}}@media (prefers-reduced-motion:reduce){.article-image-trigger img{transition-duration:0s}}.prose [data-footnotes]{border-top:1px solid var(--border);color:var(--muted-foreground);font-size:var(--font-size-small);margin-top:2.618rem;padding-top:1.618rem}.prose [data-footnotes]>h2{width:auto;height:auto;color:var(--foreground);font-size:var(--font-size-title3);font-weight:600;line-height:var(--lh-tight);letter-spacing:0;white-space:normal;clip:auto;clip-path:none;border:0;align-items:center;gap:.5rem;margin:0 0 1rem;padding:0;display:flex;position:static;overflow:visible}.prose [data-footnotes]>h2:before{color:var(--link);font-size:var(--font-size-title3);content:"※";font-weight:700;line-height:1}.prose [data-footnotes] ol{margin-top:0;margin-bottom:0;padding-left:1.618rem}.prose [data-footnotes] li{margin-top:.618rem;margin-bottom:.618rem;padding-left:.382rem}.prose [data-footnotes] li::marker{color:var(--muted-foreground);font-weight:600}.prose [data-footnotes] p{line-height:var(--lh-body);margin-top:0;margin-bottom:0}.prose .footnote-reference{vertical-align:super;font-size:1em;line-height:0;display:inline;position:relative}.prose [data-footnote-ref]{z-index:2;border-radius:var(--phi-neg3);background-color:color-mix(in srgb, var(--link) 8%, transparent);min-width:1.25rem;height:1.25rem;color:var(--link);font-family:var(--font-heading);font-size:var(--font-size-caption);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 .18rem;font-weight:500;line-height:1;text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out;display:inline-flex;position:relative}.prose [data-footnote-ref]:before{content:"["}.prose [data-footnote-ref]:after{content:"]"}.prose [data-footnote-ref]:hover{background-color:color-mix(in srgb, var(--link-hover) 14%, transparent);color:var(--link-hover)}.prose .footnote-preview{z-index:20;visibility:hidden;width:min(22rem,100vw - 2rem);padding:var(--phi-neg1) var(--phi-0);border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-card);color:var(--foreground);font-family:var(--font-heading);font-size:var(--font-size-small);opacity:0;pointer-events:none;font-weight:400;line-height:1.6;transition:opacity .15s ease-out,transform .15s ease-out,visibility .15s;position:absolute;inset-block-end:calc(100% + .65rem);inset-inline-start:50%;transform:translate(-50%,.25rem)}.prose .footnote-reference:hover .footnote-preview,.prose .footnote-reference:focus-within .footnote-preview{visibility:visible;opacity:1;transform:translate(-50%)}.prose [data-footnote-backref]{border-radius:var(--phi-neg3);background-color:color-mix(in srgb, var(--link) 8%, transparent);min-width:1.5rem;height:1.5rem;color:var(--link);vertical-align:middle;border:0;justify-content:center;align-items:center;margin-left:.236rem;padding:0 .382rem;font-size:0;font-weight:500;line-height:1;text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out;display:inline-flex}.prose [data-footnote-backref]:before{font-family:var(--font-heading);content:"↩︎";font-size:.875rem;font-weight:500}.prose [data-footnote-backref] sup{margin-left:.05rem;font-size:.65rem}.prose [data-footnote-backref]:hover{background-color:color-mix(in srgb, var(--link-hover) 14%, transparent);color:var(--link-hover)}.prose [data-footnote-ref]:focus-visible,.prose [data-footnote-backref]:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.prose .footnote-preview{transition-duration:0s}}.prose{--tw-prose-body:var(--foreground);--tw-prose-headings:var(--foreground);--tw-prose-links:var(--link);--tw-prose-bold:var(--foreground);--tw-prose-code:var(--foreground)}.prose h2{font-size:var(--font-size-title2);line-height:var(--lh-tight);font-weight:700;font-family:var(--font-heading);letter-spacing:-.01em;border-bottom:1px solid var(--border);margin-top:2.618rem;margin-bottom:1rem;padding-bottom:.618rem}.prose h3{font-size:var(--font-size-title3);line-height:var(--lh-tight);font-weight:500;font-family:var(--font-heading);letter-spacing:-.005em;margin-top:1.618rem;margin-bottom:.618rem}.prose p{line-height:var(--lh-body);margin-top:1rem;margin-bottom:1rem}.prose ul,.prose ol{margin-top:1rem;margin-bottom:1rem;padding-left:1.618rem}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose ul ul{list-style-type:circle}.prose ul ul ul{list-style-type:square}.prose li{margin-top:.25rem;margin-bottom:.25rem}.prose :not(pre)>code{background-color:var(--muted);font-size:.875em;font-family:var(--font-mono);border-radius:.25rem;padding:.125rem .375rem}.prose a{color:var(--link);text-underline-offset:2px;text-decoration:underline;transition:color .15s}.prose a:hover{color:var(--link-hover)}.prose img{width:auto;max-width:100%;height:auto}.prose blockquote{border-left:4px solid var(--border);color:var(--muted-foreground);margin-top:1rem;margin-bottom:1rem;padding-left:1rem;font-style:italic}.prose table{border-collapse:collapse;width:100%;margin-top:1rem;margin-bottom:1rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;padding:.382rem .618rem}.prose th{background-color:var(--muted);font-weight:600}.prose tbody tr:nth-child(2n){background-color:color-mix(in srgb, var(--muted) 50%, transparent)}
