/* Load after typography.css and the theme's component styles. Fonts are self-hosted. */
:root {
 --font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
 --font-code:"JetBrains Mono","Cascadia Mono","SFMono-Regular",Consolas,monospace;
 --text-primary:#1e293b;
 --prose-text:#334155;
 --inline-code-bg:#f1f5f9; --inline-code-border:#e2e8f0; --inline-code-text:#334155;
 font-family:var(--font-sans); font-size:15px; font-optical-sizing:auto; font-synthesis:none;
}
:root[data-mode=dark] {
 --text-primary:#e2e8f0;
 --prose-text:#e2e8f0;
 --inline-code-bg:#303747; --inline-code-border:#465065; --inline-code-text:#e2e8f0;
}
body { font-family:var(--font-sans); font-size:15px; line-height:1.65; letter-spacing:normal; }
button,input,textarea,select { font-family:inherit; }
.main-card { color:var(--text-primary); }
.main-card :is(h1,h2,h3,h4,h5,h6,strong,b) { font-weight:600; }
.post-list .note-heading .note-title { font-weight:600; line-height:1.5; letter-spacing:normal; }
.note-excerpt { font-size:15px; line-height:1.7; }
.detail-main .article-heading h1 { font-size:24px; font-weight:600; line-height:1.45; }
.detail-main .prose-paper { font-size:15px; line-height:1.75; letter-spacing:.02em; color:var(--prose-text); }
.detail-main .prose-paper p { margin-bottom:1.1em; line-height:1.75; }
.detail-main .prose-paper :is(ul,ol) { margin:0 0 1.1em; padding-inline-start:1.5em; }
.detail-main .prose-paper li { margin-bottom:.45em; font-size:15px; line-height:1.75; }
.detail-main .prose-paper li:last-child { margin-bottom:0; }
.detail-main .prose-paper li>p { margin:0; }
.detail-main .prose-paper li>p+p { margin-top:.45em; }
.detail-main .prose-paper li>:is(ul,ol) { margin:.45em 0 0; }
.detail-main .prose-paper :is(pre,code) { letter-spacing:0; }
.detail-main .prose-paper :is(h1,h2,h3,h4,h5,h6) { font-weight:600; line-height:1.45; color:var(--text-primary); }
.detail-main .prose-paper h1 { font-size:28px; }
.detail-main .prose-paper h2 { font-size:23px; }
.detail-main .prose-paper h3 { font-size:20px; }
.detail-main .prose-paper h4 { font-size:17px; }
.detail-main .article-summary p { font-size:15px; line-height:1.7; }
.detail-main .prose-paper table { font-size:14px; line-height:1.65; }
.main-card .prose-paper :not(pre) > code {
 font-family:var(--font-code); font-size:.9em; font-weight:400; line-height:inherit;
 margin:0 .25em; padding:1px 5px; border:1px solid var(--inline-code-border); border-radius:4px;
 background:var(--inline-code-bg); color:var(--inline-code-text);
 box-shadow:0 1px 0 var(--inline-code-border); vertical-align:baseline;
 white-space:break-spaces; overflow-wrap:anywhere;
}
:root[data-mode=dark] .main-card .prose-paper :not(pre) > code {
 background:var(--inline-code-bg); border-color:var(--inline-code-border); color:var(--inline-code-text);
}
.detail-main .code-block-wrapper pre.code-body {
 font-family:var(--font-code); font-size:13px; font-weight:400; line-height:1.75;
 letter-spacing:0; font-kerning:none; font-variant-numeric:tabular-nums;
 font-variant-ligatures:common-ligatures contextual; font-feature-settings:"liga" 1,"calt" 1,"zero" 1;
 tab-size:4; white-space:pre; overflow-x:auto;
}
.detail-main .code-block-wrapper pre.code-body code { font:inherit; font-feature-settings:inherit; }
.detail-main .code-line { line-height:inherit; min-height:1.75em; }
.note-meta,.article-meta { font-variant-numeric:lining-nums; }
@media(max-width:767.98px) {
 .detail-main .article-heading h1 { font-size:22px; }
 .detail-main .prose-paper h1 { font-size:25px; }
 .detail-main .prose-paper h2 { font-size:21px; }
 .detail-main .prose-paper h3 { font-size:18px; }
 .detail-main .code-block-wrapper pre.code-body { font-size:12px; }
}

/* Article text links: distinct from navigation, media links and action buttons. */
@media screen {
 .detail-main .prose-paper { --article-link:#4f46e5; --article-link-hover:#3730a3; --article-link-line:#a5b4fc; --article-link-bg:#eef2ff; }
 :root[data-mode=dark] .detail-main .prose-paper { --article-link:#b6baff; --article-link-hover:#e0e7ff; --article-link-line:#6964b3; --article-link-bg:#363651; }
 .detail-main .prose-paper :is(p,li,dd,td,th,h1,h2,h3,h4) a[href]:not(:has(img)):not(.compact-download-button) {
  color:var(--article-link); font-weight:500; text-decoration-line:underline;
  text-decoration-color:var(--article-link-line); text-decoration-thickness:1px;
  text-underline-offset:3px; text-decoration-skip-ink:auto; border-radius:3px;
  overflow-wrap:anywhere; word-break:normal; -webkit-box-decoration-break:clone; box-decoration-break:clone;
  transition:color .15s ease,text-decoration-color .15s ease,background-color .15s ease;
 }
 .detail-main .prose-paper :is(p,li,dd,td,th,h1,h2,h3,h4) a[href]:not(:has(img)):not(.compact-download-button):hover {
  color:var(--article-link-hover); background:var(--article-link-bg); text-decoration-color:currentColor;
 }
 .detail-main .prose-paper :is(p,li,dd,td,th,h1,h2,h3,h4) a[href]:not(:has(img)):not(.compact-download-button):focus-visible {
  outline:2px solid var(--article-link); outline-offset:3px; background:var(--article-link-bg);
 }
}
@media(prefers-reduced-motion:reduce) {
 .detail-main .prose-paper a[href] { transition:none; }
}
