@lanyundev/blog-static 2.0.3 → 2.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer astro.images{:where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down}[data-astro-image-pos=top]{object-position:top}[data-astro-image-pos=bottom]{object-position:bottom}[data-astro-image-pos=left]{object-position:left}[data-astro-image-pos=right]{object-position:right}[data-astro-image-pos=center]{object-position:center}[data-astro-image-pos=top-left]{object-position:top left}[data-astro-image-pos=top-right]{object-position:top right}[data-astro-image-pos=top-center]{object-position:top center}[data-astro-image-pos=bottom-left]{object-position:bottom left}[data-astro-image-pos=bottom-right]{object-position:bottom right}[data-astro-image-pos=bottom-center]{object-position:bottom center}[data-astro-image-pos=left-top]{object-position:left top}[data-astro-image-pos=left-bottom]{object-position:left bottom}[data-astro-image-pos=left-center]{object-position:left center}[data-astro-image-pos=right-top]{object-position:right top}[data-astro-image-pos=right-bottom]{object-position:right bottom}[data-astro-image-pos=right-center]{object-position:right center}[data-astro-image-pos=center-top]{object-position:center top}[data-astro-image-pos=center-bottom]{object-position:center bottom}[data-astro-image-pos=center-left]{object-position:center left}[data-astro-image-pos=center-right]{object-position:center right}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.post{padding:32px 40px 28px}.post-head{display:none}.post-head h1{margin:0 0 6px;font-size:30px;line-height:1.35}.post-head .post-meta{color:var(--muted);justify-content:flex-start}.post-head .post-meta a{color:inherit}.notice{background:var(--primary-soft);color:var(--text-2);border-radius:10px;align-items:center;gap:8px;margin:0 0 16px;padding:10px 14px;font-size:14px;display:flex}.notice.warn{background:#f0a02024}.notice .icon{color:var(--primary)}.notice.warn .icon{color:#e08a00}.series{background:var(--card-2);border-radius:12px;margin:0 0 18px;padding:10px 16px}.series summary{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:flex}.series ol{margin:8px 0 0;padding-left:26px}.prose{color:var(--text);overflow-wrap:break-word;font-size:16px;line-height:1.85;position:relative}.prose>:first-child{margin-top:0}.prose p{margin:0 0 1.1em}.prose :is(h1,h2,h3,h4,h5,h6){scroll-margin-top:calc(var(--header-h) + 20px);margin:1.9em 0 .8em;line-height:1.4;position:relative}.prose h1{font-size:1.75em}.prose h2{font-size:1.5em}.prose h3{font-size:1.28em}.prose h4{font-size:1.12em}.prose :is(h5,h6){font-size:1em}.prose h2{border-bottom:1px dashed var(--border);padding-bottom:.35em}.prose .anchor{color:var(--muted);opacity:0;margin-left:.4em;font-weight:400;transition:opacity .2s}.prose :is(h2,h3,h4):hover .anchor{opacity:1}.prose a{color:var(--primary);border-bottom:1px solid color-mix(in srgb, var(--primary) 35%, transparent);transition:border-color .2s,color .2s}.prose a:hover{color:var(--primary-2);border-color:currentColor}.prose :is(ul,ol){margin:0 0 1.1em;padding-left:1.6em}.prose li{margin:.25em 0}.prose li::marker{color:var(--primary)}.prose blockquote{border-left:4px solid var(--primary);background:var(--primary-soft);color:var(--text-2);border-radius:0 10px 10px 0;margin:1.2em 0;padding:.8em 1.2em}.prose blockquote>:last-child{margin-bottom:0}.prose hr{background:linear-gradient(90deg, transparent, var(--border), transparent);border:0;height:1px;margin:2em 0;position:relative;overflow:visible}.prose img{cursor:zoom-in;border-radius:8px;max-width:100%;height:auto;margin:1em auto;display:block}[data-theme=dark] .prose img{filter:brightness(.92);background:#eceef1}.prose p>img:only-child{margin:1.2em auto}.prose video{border-radius:8px;max-width:100%;margin:1em auto;display:block}.prose strong{color:color-mix(in srgb, var(--text) 85%, var(--primary))}.prose del{color:var(--muted)}.prose mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 .2em}.prose kbd{font:.85em var(--font-mono);border:1px solid var(--border);background:var(--card-2);border-bottom-width:2px;border-radius:5px;padding:.1em .45em}.prose :not(pre)>code{font:.88em var(--font-mono);background:color-mix(in srgb, var(--primary) 9%, var(--card-2));color:color-mix(in srgb, var(--text) 70%, #d6336c);border-radius:5px;padding:.15em .4em}.table-wrap{border:1px solid var(--border);border-radius:10px;margin:1.2em 0;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:.94em}.prose :is(th,td){border-bottom:1px solid var(--border);text-align:left;padding:.55em .9em}.prose th{background:var(--card-2);white-space:nowrap;font-weight:600}.prose tr:last-child td{border-bottom:0}.prose tbody tr:hover{background:color-mix(in srgb, var(--primary) 4%, transparent)}.prose dl dt{font-weight:600}.prose dl dd{margin:0 0 .6em 1.5em}.prose center,.prose [align=center]{text-align:center}.prose .katex-display{padding:.3em 0;overflow:auto hidden}.prose :is(psw,pwd){--mask:#a9adb3;background:var(--mask);cursor:help;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:3px;padding:0 .15em;transition:background-color .28s}[data-theme=dark] .prose :is(psw,pwd){--mask:#3b414b}.prose .psw-in{opacity:0;transition:opacity .28s}.prose :is(psw,pwd):is(:hover,:focus,:active){background:0 0}.prose :is(psw,pwd):is(:hover,:focus,:active) .psw-in{opacity:1}.code-block{background:var(--code-bg);border:1px solid var(--border);border-radius:12px;margin:1.3em 0;position:relative;overflow:hidden}.code-block figcaption{font:12px var(--font-mono);color:var(--muted);background:color-mix(in srgb, var(--code-bg) 80%, var(--border));align-items:center;gap:8px;padding:6px 12px;display:flex}html:not(.no-decor) .code-block figcaption:before{content:"";background:#ff5f57;border-radius:50%;width:10px;height:10px;margin-right:38px;box-shadow:16px 0 #febc2e,32px 0 #28c840}.code-block .lang{text-transform:uppercase;letter-spacing:.05em}.code-block .copy{color:var(--muted);font:inherit;background:0 0;border:0;border-radius:6px;margin-left:auto;padding:2px 8px}.code-block .copy:hover{background:var(--primary-soft);color:var(--primary)}.code-block .copy.ok{color:#2f9e6f}.code-block pre{font:13.5px/1.65 var(--font-mono);tab-size:4;margin:0;padding:14px 16px;overflow-x:auto;background:0 0!important}.code-block code{counter-reset:line;min-width:max-content;display:block}.code-block .line:before{counter-increment:line;content:counter(line);text-align:right;width:2.4em;color:var(--muted);opacity:.55;user-select:none;margin-right:1em;display:inline-block}.code-block[data-lines="1"] .line:before,.code-block[data-lines="0"] .line:before{display:none}.code-block.collapsed pre{max-height:360px;overflow:hidden}.code-block.collapsed:after{content:"";background:linear-gradient(transparent, var(--code-bg));pointer-events:none;height:90px;position:absolute;inset:auto 0 0}.code-expand{z-index:1;background:var(--primary);color:#fff;box-shadow:var(--shadow);border:0;border-radius:999px;padding:4px 14px;font-size:13px;position:absolute;bottom:10px;left:50%;translate:-50%}.astro-code,.astro-code span{color:var(--shiki-light);background-color:#0000!important}[data-theme=dark] .astro-code,[data-theme=dark] .astro-code span{color:var(--shiki-dark)}details.folding{border:1px solid var(--border);background:var(--card-2);border-radius:10px;margin:1em 0;overflow:hidden}details.folding>summary{cursor:pointer;align-items:center;gap:.5em;padding:.6em 1em;font-weight:600;list-style:none;display:flex}details.folding>summary:before{content:"▸";color:var(--fc,var(--primary));transition:transform .2s}details.folding[open]>summary:before{transform:rotate(90deg)}details.folding>summary::-webkit-details-marker{display:none}details.folding>:not(summary){padding:0 1.1em}details.folding[open]{padding-bottom:.4em}details.folding[data-color=green]{--fc:#2f9e6f;border-left:4px solid #2f9e6f}details.folding[data-color=cyan]{--fc:#16a3b8;border-left:4px solid #16a3b8}details.folding[data-color=red]{--fc:#e5484d;border-left:4px solid #e5484d}details.folding[data-color=blue]{--fc:var(--primary);border-left:4px solid var(--primary)}.tabs{border:1px solid var(--border);border-radius:12px;margin:1.2em 0;overflow:hidden}.tab-bar{background:var(--card-2);border-bottom:1px solid var(--border);display:flex;overflow-x:auto}.tab-bar button{white-space:nowrap;color:var(--text-2);background:0 0;border:0;border-bottom:2px solid #0000;padding:.6em 1.1em}.tab-bar button[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary);background:var(--card);font-weight:600}.tabs>section.tab{padding:1em 1.2em .2em}.tip{--tc:var(--primary);background:color-mix(in srgb, var(--tc) 10%, transparent);border-left:4px solid var(--tc);border-radius:10px;grid-template-columns:1.3em minmax(0,1fr);align-items:start;column-gap:.75em;margin:1em 0;padding:.7em 1.1em;display:grid}.tip:before{content:"i";box-sizing:border-box;width:1.625em;height:1.625em;font:700 .8em/1 var(--font-sans);color:#fff;background:var(--tc);border-radius:50%;grid-area:1/1/99;place-items:center;margin-top:.34em;display:grid}.tip>*{grid-column:2;margin-top:0}.tip[data-kind=success]{--tc:#2f9e6f}.tip[data-kind=success]:before{content:"✓"}.tip[data-kind=warning]{--tc:#e08a00}.tip[data-kind=warning]:before{content:"!"}.tip[data-kind=error]{--tc:#e5484d}.tip[data-kind=error]:before{content:"✕"}.tip>:last-child{margin-bottom:0}.encrypted{place-items:center;padding:40px 10px;display:grid}.unlock{text-align:center;width:min(380px,100%);color:var(--text-2);justify-items:center;gap:10px;display:grid}.unlock .icon{color:var(--primary)}.unlock .hint{margin:0}.unlock .row{gap:8px;width:100%;display:flex}.unlock input{border:1px solid var(--border);background:var(--card-2);min-width:0;color:var(--text);border-radius:999px;flex:1;padding:9px 14px;font-size:15px}.unlock input:focus{outline:2px solid var(--primary);border-color:#0000}.unlock .err{color:#e5484d;min-height:1.5em;margin:0;font-size:14px}.shake{animation:.4s shake}@keyframes shake{20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.region-gate{z-index:5;background:color-mix(in srgb, var(--card) 70%, transparent);backdrop-filter:blur(14px);border-radius:12px;place-items:start center;min-height:240px;padding-top:80px;display:grid;position:absolute;inset:-8px}.region-gate p{background:var(--card);box-shadow:var(--shadow);color:var(--text-2);border-radius:12px;margin:0;padding:14px 22px}.region-gate[data-state=blocked] p{color:#e5484d}.region-gate[data-state=ok]{display:none}.post-tags{flex-wrap:wrap;gap:8px;margin:28px 0 0;display:flex}.post-tags :is(a,span){background:var(--primary-soft);color:var(--primary);border-radius:999px;align-items:center;gap:4px;padding:3px 12px;font-size:13px;transition:all .2s;display:inline-flex}.post-tags a:hover{background:var(--primary);color:#fff}.copyright{background:var(--card-2);color:var(--text-2);border-radius:12px;margin:24px 0 0;padding:16px 20px;font-size:14px;position:relative;overflow:hidden}.copyright:after{content:"©";color:var(--primary);opacity:.07;pointer-events:none;font-size:140px;line-height:1;position:absolute;top:-30px;right:-8px}.copyright p{margin:2px 0}.copyright b{color:var(--text);font-size:15px}.copyright a{word-break:break-all}.cr-meta{flex-wrap:wrap;gap:4px 18px;display:flex;margin-top:6px!important}.reward{justify-items:center;gap:14px;margin:28px 0 0;display:grid}.reward-btn{color:#fff;background:linear-gradient(120deg,#ffb347,#ff7eb3);border:0;border-radius:999px;align-items:center;gap:10px;padding:9px 22px 9px 14px;font-weight:600;transition:transform .2s;display:inline-flex;box-shadow:0 6px 18px #ff7eb359}.coin{color:#b37400;background:radial-gradient(circle at 35% 30%,#fff6c2,#ffd23f 45%,#e6a800);border-radius:50%;place-items:center;width:26px;height:26px;font-size:14px;font-weight:800;display:grid;box-shadow:inset 0 -2px #00000026}.flipping .coin{animation:coinflip 1s var(--ease)}.reward-btn{transition:transform .3s var(--ease), box-shadow .3s}@keyframes coinflip{0%{transform:translateY(0)rotateY(0)}45%{transform:translateY(-46px)rotateY(900deg)}70%{transform:translateY(0)rotateY(1440deg)scale(1.1)}85%{transform:translateY(-8px)rotateY(1440deg)}to{transform:none}}.reward-qr{gap:20px;display:none}.reward.open .reward-qr{animation:pop .3s var(--ease);display:flex}.reward-qr a{color:var(--text-2);justify-items:center;gap:4px;font-size:13px;display:grid}.reward-qr img{width:140px;height:140px;box-shadow:var(--shadow);border-radius:10px}.post-nav{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.post-nav a{color:var(--text);gap:4px;padding:16px 20px;display:grid}.post-nav a:hover{box-shadow:var(--shadow-hover)}.post-nav .next{text-align:right}.post-nav small{color:var(--muted);align-items:center;gap:4px;display:inline-flex}.post-nav .next small{justify-content:flex-end}.post-nav b{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;display:-webkit-box;overflow:hidden}.comments{margin-top:20px;padding:24px 30px}.comments h2{align-items:center;gap:8px;margin:0 0 14px;font-size:18px;display:flex}.comments h2 .icon{color:var(--primary)}#tcomment .tk-input .el-textarea__inner{background:var(--card-2);color:var(--text);border-color:var(--border);border-radius:12px;min-height:120px!important}#tcomment .el-input__inner{background:var(--card-2);color:var(--text);border-color:var(--border);border-radius:10px}#tcomment .tk-comment{border-bottom:1px dashed var(--border);padding:14px 0}#tcomment .tk-avatar{border-radius:50%}#tcomment .el-button--primary{background:var(--primary);border-color:var(--primary);border-radius:999px}#tcomment .tk-content{font-size:14.5px}.read-mode :is(.site-header,.hero,.site-footer,.post-nav,.comments,.side-author,.side-related,.toc-rail,.rightside){display:none!important}.read-mode .page{padding-top:32px}.read-mode .layout.post-layout,[data-side=right] .read-mode .layout.post-layout{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"main"}[data-style=vivid] .read-mode .layout.post-layout{max-width:920px}.read-mode .post-head{display:block}.read-mode .post{box-shadow:none}.read-exit{z-index:60;border:1px solid var(--border);background:var(--card);color:var(--text-2);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;display:none;position:fixed;top:16px;right:20px}.read-exit:hover{color:var(--primary);border-color:var(--primary)}.read-mode .read-exit{display:inline-flex}@media (width<=680px){.post{padding:22px 18px}.prose{font-size:15.5px}.comments{padding:18px}.post-nav{grid-template-columns:1fr}.code-block pre{font-size:12.5px}}.page-title{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.page-sub{color:var(--muted);margin:0 0 28px;display:none}.home-intro{border-bottom:1px solid var(--border);padding:10px 0 30px;display:none}.home-intro h1{font-family:var(--font-serif);margin:0;font-size:34px}.home-intro p{color:var(--muted);margin:6px 0 0}.page-card{padding:30px 36px}.center{text-align:center}.layout.single.wide{max-width:var(--container)}.timeline{position:relative}.tl-year{border-left:2px solid var(--border);margin-left:10px;padding-left:26px;position:relative}.tl-year+.tl-year{padding-top:6px}.tl-y{align-items:baseline;gap:10px;margin:0 0 12px;font-size:22px;display:flex;position:relative}.tl-y:before{content:"";background:var(--grad);width:14px;height:14px;box-shadow:0 0 0 4px var(--card);border-radius:50%;margin-top:-7px;position:absolute;top:50%;left:-35px}.tl-y small{color:var(--muted);font-size:13px;font-weight:400}.zodiac{font-size:22px}.tl-year ol{gap:12px;margin:0 0 22px;padding:0;list-style:none;display:grid}.tl-item{grid-template-columns:96px 1fr;align-items:center;gap:14px;display:grid;position:relative}.tl-item:before{content:"";background:var(--card);border:2px solid var(--primary);border-radius:50%;width:8px;height:8px;margin-top:-4px;transition:background .2s;position:absolute;top:50%;left:-31px}.tl-item:hover:before{background:var(--primary)}.tl-cover{border-radius:8px;width:96px;height:64px;display:block;overflow:hidden}.tl-cover img{object-fit:cover;width:100%;height:100%;transition:transform .4s var(--ease)}.tl-item time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px;display:block}.tl-item a:not(.tl-cover){color:var(--text);align-items:baseline;gap:4px;display:inline-flex}.tl-item a:not(.tl-cover):hover{color:var(--primary)}.tag-cloud.big{justify-content:center;gap:10px;padding:8px 0}.tag-cloud.big a{font-size:calc(14px + var(--w) * 10px);padding:4px 14px}.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}@media (width<=560px){.cat-grid{grid-template-columns:1fr}}.cat-card{background:var(--card-2);min-width:0;color:var(--text);border:1px solid var(--border);transition:.3s var(--ease);border-radius:14px;grid-template-columns:minmax(0,1fr);gap:2px;padding:20px;display:grid}.cat-card:hover{box-shadow:var(--shadow-hover);color:var(--text);border-color:var(--primary)}.cat-card .icon{color:var(--primary)}.cat-card b{margin-top:6px;font-size:18px}.cat-card>span{color:var(--muted);font-size:13px}.cat-card ul{color:var(--text-2);min-width:0;margin:8px 0 0;padding-left:1.2em;font-size:13px;list-style:outside}.cat-card li::marker{color:var(--primary)}.cat-card li{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stats-tiles{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-bottom:26px;display:grid}.tile{background:var(--card-2);border:1px solid var(--border);border-radius:14px;gap:2px;padding:18px;display:grid}.tile b{font-variant-numeric:tabular-nums;color:var(--text);font-size:30px;line-height:1.2}.tile b small{margin-left:2px;font-size:15px}.tile span{color:var(--muted);font-size:13px}.chart{margin:0 0 30px}.chart h2{margin:0 0 4px;font-size:18px}.chart-sub{color:var(--muted);margin:0 0 12px;font-size:13px}.chart-row{grid-template-columns:1fr 1fr;gap:30px;display:grid}.heatmap{color:var(--muted);grid-template-columns:40px repeat(12,minmax(0,1fr));gap:5px;font-size:12px;display:grid}.hm-m{text-align:center;white-space:nowrap}@media (width<=560px){.hm-m .u{display:none}.heatmap{grid-template-columns:34px repeat(12,minmax(0,1fr));gap:3px}}.hm-y{font-variant-numeric:tabular-nums;align-self:center}.hm-c{aspect-ratio:1;background:var(--card-2);border:1px solid var(--border);border-radius:4px}.hm-c[data-l="1"]{background:color-mix(in srgb, var(--primary) 30%, var(--card));border-color:#0000}.hm-c[data-l="2"]{background:color-mix(in srgb, var(--primary) 52%, var(--card));border-color:#0000}.hm-c[data-l="3"]{background:color-mix(in srgb, var(--primary) 76%, var(--card));border-color:#0000}.hm-c[data-l="4"]{background:var(--primary);border-color:#0000}.heatmap .hm-c:hover{outline:2px solid var(--text);outline-offset:1px}.hm-legend{color:var(--muted);align-items:center;gap:4px;margin-top:10px;font-size:12px;display:flex}.hm-legend .hm-c{width:14px}.bars-v{border-bottom:1px solid var(--border);align-items:flex-end;gap:clamp(8px,3vw,28px);height:220px;padding-top:24px;display:flex}.bars-v .col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;max-width:80px;height:100%;display:flex;position:relative}.bars-v .bar{background:var(--primary);border-radius:4px 4px 0 0;width:100%;min-height:4px;transition:opacity .2s}.bars-v .col:hover .bar{opacity:.8}.bars-v .val{color:var(--text);font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:13px;font-weight:600}.bars-v-labels{gap:clamp(8px,3vw,28px);margin-top:6px;display:flex}.bars-v-labels span{text-align:center;max-width:80px;color:var(--muted);font-variant-numeric:tabular-nums;flex:1;font-size:12px}.bars-h{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.bars-h li{grid-template-columns:7em 1fr 3em;align-items:center;gap:10px;font-size:14px;display:grid}.bars-h a{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bars-h a:hover{color:var(--primary)}.bars-h .track{background:var(--card-2);border-radius:4px;height:12px;overflow:hidden}.bars-h .fill{background:var(--primary);border-radius:0 4px 4px 0;height:100%;display:block}.bars-h li:hover .fill{opacity:.8}.bars-h b{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.chart-table summary{cursor:pointer;color:var(--text-2);font-size:14px}.chart-table table{border-collapse:collapse;width:100%;font-size:13px}.chart-table :is(th,td){text-align:center;border-bottom:1px solid var(--border);padding:4px 8px}.about-hero{align-items:center;gap:26px;margin-bottom:24px;display:flex}.about-avatar{object-fit:cover;width:140px;height:140px;box-shadow:var(--shadow-hover);border-radius:28px}.about-hero h2{margin:0 0 6px;font-size:26px}.about-hero p{color:var(--text-2);margin:0 0 8px}.about-hero .social{justify-content:flex-start;margin:0}.about h3{margin:26px 0 10px}.skill-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.skill-list li{background:var(--card-2);border-radius:12px;padding:12px 16px;display:grid}.skill-list span{color:var(--text-2);font-size:14px}.flink-group h2{align-items:baseline;gap:10px;margin:0 0 14px;font-size:20px;display:flex}.flink-group h2 small{color:var(--muted);font-size:13px;font-weight:400}.flink-group+.flink-group{margin-top:28px}.flinks{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.flink{--fc:var(--primary);background:var(--card-2);color:var(--text);border:1px solid var(--border);transition:.3s var(--ease);border-radius:14px;align-items:center;gap:12px;padding:14px;display:flex}.flink:hover{background:var(--fc);color:#fff;box-shadow:var(--shadow-hover);border-color:#0000}.flink-fallback{background:var(--fc);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:54px;height:54px;font-size:22px;font-weight:700;display:grid}.flink img{object-fit:cover;width:54px;height:54px;transition:transform .5s var(--ease);background:var(--card);border-radius:50%;flex-shrink:0}.flink div{min-width:0;display:grid}.flink b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.flink span{opacity:.75;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.flink-apply{margin-top:34px}.page-card .comments{box-shadow:none;border:0;margin-top:30px;padding:0}.envelope{place-items:center;padding:10px 0 24px;display:grid}.letter{background:repeating-linear-gradient(transparent 0 31px, color-mix(in srgb, var(--primary) 18%, transparent) 31px 32px), var(--card-2);width:min(520px,100%);box-shadow:var(--shadow);border-radius:12px;padding:26px 30px;font-size:16px;line-height:32px;position:relative}.letter p{margin:0}.letter .sign{text-align:right;color:var(--muted)}.letter:before{content:"";background:repeating-linear-gradient(135deg, #e5484d 0 12px, transparent 12px 24px, var(--primary) 24px 36px, transparent 36px 48px);border-radius:12px 12px 0 0;height:6px;position:absolute;inset:0 0 auto}.bangumi-tabs{border:0;margin-top:0}.bangumi-tabs>section.tab{padding:16px 0 0}.bangumis{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.bangumi{transition:transform .3s var(--ease), box-shadow .3s;background:var(--card-2);color:var(--text);border:1px solid var(--border);transition:.3s var(--ease);border-radius:14px;grid-template-columns:96px 1fr;gap:14px;padding:12px;display:grid}.bangumi:hover{box-shadow:var(--shadow-hover);color:var(--text)}.bangumi img{object-fit:cover;border-radius:8px;width:96px;height:128px}.bangumi div{align-content:start;gap:2px;min-width:0;display:grid}.bangumi small{color:var(--muted)}.bangumi .score{color:#f5a524;font-size:13px;font-weight:600}.bangumi p{color:var(--text-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:4px 0 0;font-size:13px;display:-webkit-box;overflow:hidden}.not-found{place-items:center;min-height:60vh;display:grid}.nf-card{grid-template-columns:1fr 1fr;align-items:center;max-width:900px;display:grid;overflow:hidden}.nf-img{object-fit:contain;align-self:center;width:100%;height:auto}.nf-card>div{padding:30px}.nf-card h1{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:64px}.nf-actions{flex-wrap:wrap;gap:10px;margin:14px 0 20px;display:flex}.btn.ghost{background:var(--primary-soft);color:var(--primary)}.nf-card ul{margin:6px 0 0;padding-left:1.2em}@media (width<=760px){.page-card{padding:22px 18px}.chart-row{grid-template-columns:1fr}.about-hero{text-align:center;flex-direction:column}.about-hero .social{justify-content:center}.nf-card,.tl-item{grid-template-columns:1fr}.tl-cover{display:none}}.heatmap,.bars-v,.bars-v-labels{max-width:720px}.bars-v .col,.bars-v-labels span{max-width:none}:root[data-style=minimal]{--primary:#b4532a;--primary-2:#8a3a1a;--grad:linear-gradient(120deg, #b4532a, #c9773f);--bg:#faf8f3;--bg-deco:none;--card:#faf8f3;--card-2:#f2eee5;--text:#2a2723;--text-2:#57514a;--muted:#948b80;--border:#e6dfd2;--shadow:none;--shadow-hover:0 8px 30px #3c281414;--radius:0px;--container:760px;--code-bg:#f3efe6}:root[data-style=minimal][data-theme=dark]{--primary:#e0915f;--primary-2:#f0b088;--bg:#161513;--card:#161513;--card-2:#201e1b;--text:#e3ddd3;--text-2:#b9b1a5;--muted:#847c71;--border:#2e2b27;--code-bg:#1e1c19}[data-style=minimal] body{font-size:16.5px}[data-style=minimal] .card{box-shadow:none;background:0 0;border:0}[data-style=minimal] .hero,[data-style=minimal] .aside,[data-style=minimal] .top-carousel,[data-style=minimal] .rightside .rs-toc{display:none!important}[data-style=minimal] .page,[data-style=minimal] .has-hero .page{padding-top:calc(var(--header-h) + 48px)}[data-style=minimal] .layout{grid-template-columns:minmax(0,1fr)}[data-style=minimal] .layout>.main{grid-column:1}[data-style=minimal] .site-header{background:color-mix(in srgb, var(--bg) 88%, transparent);border-bottom-color:var(--border)}[data-style=minimal] .site-header.transparent:not(:is(.scrolled *)){background:color-mix(in srgb, var(--bg) 88%, transparent);color:var(--text);border-bottom-color:var(--border);backdrop-filter:blur(10px)}[data-style=minimal] .site-header.transparent:not(:is(.scrolled *)) .brand{color:var(--text);text-shadow:none}[data-style=minimal] .brand{font-family:var(--font-serif);font-weight:700}[data-style=minimal] .menu-link .icon{display:none}[data-style=minimal] .nav.container{max-width:1000px}[data-style=minimal] .post-list{gap:0}[data-style=minimal] .post-card,[data-style=minimal] .post-card.flip{border-bottom:1px solid var(--border);border-radius:0;height:auto;min-height:0;padding:26px 0;display:block}[data-style=minimal] .post-card:hover{box-shadow:none;transform:none}[data-style=minimal] .post-card .cover{display:none}[data-style=minimal] .post-card .info{padding:0}[data-style=minimal] .post-card .title{font-family:var(--font-serif);font-size:22px;font-weight:700}[data-style=minimal] .post-card .excerpt{-webkit-line-clamp:2}[data-style=minimal] .post-card .meta{order:-1}[data-style=minimal] .pagination a,[data-style=minimal] .pagination span{box-shadow:none;border:1px solid var(--border);background:0 0;border-radius:4px}[data-style=minimal] .pagination .current{background:var(--text);color:var(--bg);border-color:var(--text)}[data-style=minimal] .badge{color:var(--primary);background:0 0;border:1px solid}[data-style=minimal] .post{padding:0}[data-style=minimal] .post-head{text-align:center;margin-bottom:40px;display:block}[data-style=minimal] .post-head h1{font-family:var(--font-serif);letter-spacing:.02em;font-size:34px}[data-style=minimal] .post-head .post-meta{justify-content:center;font-size:14px}[data-style=minimal] .prose{font-family:var(--font-serif);text-align:start;hanging-punctuation:allow-end;font-size:18px;line-height:2}[data-style=minimal] .prose :is(h1,h2,h3,h4,h5,h6){font-family:var(--font-sans);padding-left:0}[data-style=minimal] .prose :is(h1,h2,h3,h4,h5,h6):before{display:none}[data-style=minimal] .prose h2{border-bottom:0;font-size:1.35em}[data-style=minimal] .prose h2:after{content:"";background:var(--primary);width:2em;height:2px;margin-top:.4em;display:block}[data-style=minimal] .prose a{border-bottom-style:dotted}[data-style=minimal] .prose blockquote{background:0 0;border-left-width:2px;font-style:normal}[data-style=minimal] .prose :is(ul,ol,table,.code-block,.tabs,details.folding){text-align:left}[data-style=minimal] .prose img{border-radius:2px}[data-style=minimal] .code-block,[data-style=minimal] .tabs,[data-style=minimal] details.folding,[data-style=minimal] .copyright,[data-style=minimal] .tile{border-radius:4px}[data-style=minimal] .code-block figcaption:before{display:none}[data-style=minimal] .reward-btn{color:var(--primary);box-shadow:none;background:0 0;border:1px solid}[data-style=minimal] .post-nav a{border-top:1px solid var(--border);border-radius:0;padding:18px 0}[data-style=minimal] .post-nav a:hover{box-shadow:none;transform:none}[data-style=minimal] .comments{border-top:1px solid var(--border);border-radius:0;padding:30px 0 0}[data-style=minimal] .page-card{padding:0}[data-style=minimal] .page-title{clip:auto;width:auto;height:auto;font-family:var(--font-serif);margin:0 0 6px;font-size:32px;position:static}[data-style=minimal] .page-sub,[data-style=minimal] .home-intro{display:block}[data-style=minimal] .tl-cover{display:none}[data-style=minimal] .tl-item{grid-template-columns:1fr}[data-style=minimal] .tl-y:before{background:var(--primary)}[data-style=minimal] .flink,[data-style=minimal] .cat-card,[data-style=minimal] .bangumi,[data-style=minimal] .skill-list li{border-radius:4px}[data-style=minimal] .site-footer{background:0 0}[data-style=minimal] .rs-btn,[data-style=minimal][data-theme=dark] .rs-btn{background:var(--card-2);color:var(--text);border:1px solid var(--border);box-shadow:none}[data-style=minimal] .layout.post-layout,[data-style=minimal][data-side=right] .layout.post-layout{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"main"}[data-style=minimal] .layout.post-layout>:is(.side-author,.side-related,.toc-rail){display:none}[data-style=minimal][data-side=right] .layout:not(.single):not(.post-layout){grid-template-columns:minmax(0,1fr)}[data-style=minimal][data-side=right] .layout:not(.single):not(.post-layout)>.main{grid-column:1}[data-style=minimal] .post-list{grid-template-columns:1fr}[data-style=minimal] .post-card,[data-style=minimal] .post-card.flip{grid-template-rows:none}@media (width>=1700px){:root[data-style=minimal]{--container:820px}}:root[data-style=minimal][data-wide="1"]{--container:1080px}@media (width>=1700px){:root[data-style=minimal][data-wide="1"]{--container:1240px}}html:not(.no-hover) .btn:hover{transform:translateY(-1px)}html:not(.no-hover) .post-card:hover{transform:translateY(-4px)}html:not(.no-hover) .post-card:hover .cover img{transform:scale(1.06)}html:not(.no-hover) .social a:hover{transform:translateY(-3px)}html:not(.no-hover) .rs-btn:hover{transform:translateY(-2px)}html:not(.no-hover) .cat-card:hover,html:not(.no-hover) .flink:hover,html:not(.no-hover) .bangumi:hover,html:not(.no-hover) .post-nav a:hover{transform:translateY(-4px)}html:not(.no-hover) .tl-item:hover .tl-cover img{transform:scale(1.1)}html:not(.no-hover) .flink:hover img,html:not(.no-hover) .avatar-ring:hover .avatar{transform:rotate(360deg)}html:not(.no-hover) .reward-btn:hover{transform:translateY(-2px)}html:not(.no-hover) .theme-toggle:hover .icon{transform:rotate(40deg)}html:not(.no-hover) .top-carousel .slide:hover img{transform:scale(1.03)}.post-card,.cat-card,.flink,.bangumi,.post-nav a,.tag-cloud a,.post-tags a,.social a,.tl-item a{transition:transform .35s var(--ease), box-shadow .3s ease, background-color .25s ease, border-color .25s ease, color .2s ease}.no-hover .post-card:hover,.no-hover .cat-card:hover,.no-hover .flink:hover,.no-hover .bangumi:hover{box-shadow:var(--shadow-hover)}.reveal{opacity:0;transform:translateY(24px)}.reveal.in{opacity:1;transition:opacity .6s var(--ease), transform .6s var(--ease);transform:none}.no-reveal .reveal{opacity:1;transform:none}.fx-heart{z-index:300;background:var(--c);pointer-events:none;will-change:transform, opacity;width:10px;height:10px;animation:1.3s linear forwards fx-heart;position:fixed;transform:rotate(45deg)}.fx-heart:before,.fx-heart:after{content:"";background:inherit;border-radius:50%;width:10px;height:10px;position:absolute}.fx-heart:before{left:-5px}.fx-heart:after{top:-5px}@keyframes fx-heart{to{opacity:0;transform:translateY(-78px)rotate(45deg)scale(1.3)}}.fx-canvas{z-index:300;pointer-events:none;position:fixed;inset:0}html:not(.no-cursor) body{cursor:url(/cur/Normal.svg),auto}html:not(.no-cursor) :is(a,button,summary,label,[role=tab],.reward-btn){cursor:url(/cur/Link.svg),pointer}html:not(.no-cursor) :is(input,textarea,[contenteditable]){cursor:url(/cur/HandWriting.svg),text}.avatar-ring:after{content:"";box-shadow:0 0 6px 4px var(--ring);opacity:.35;pointer-events:none;border-radius:50%;position:absolute;inset:-4px}html:not(.no-decor) .avatar-ring.anim-on:after{animation:4s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:1;transform:scale(1.03)}}.author-card:before{content:"";z-index:0;opacity:.75;pointer-events:none;background:linear-gradient(100deg,#e8d8b9,#eccec5,#a3e9eb,#bdbdf0,#eec1ea,#e8d8b9,#eccec5);width:300%;position:absolute;top:0;bottom:0;left:0}[data-theme=dark] .author-card:before{opacity:0}html:not(.no-decor) .author-card.anim-on:before{animation:10s ease-in-out infinite alternate flow}@keyframes flow{to{transform:translate(-66.66%)}}html:not(.no-decor)[data-style=vivid] .prose :is(h1,h2,h3,h4,h5,h6){padding-left:1.35em}html:not(.no-decor)[data-style=vivid] .prose :is(h1,h2,h3,h4,h5,h6):before{content:"";background:var(--fan,#fb7061);width:1em;height:1em;-webkit-mask:var(--fan-svg) center / contain no-repeat;mask:var(--fan-svg) center / contain no-repeat;position:absolute;top:.32em;left:0}html:not(.no-decor)[data-style=vivid] .prose :is(h1,h2,h3,h4,h5,h6).anim-on:before{animation:4s linear infinite spin}.prose h1{--fan:#ef50a8}.prose h2{--fan:#fb7061}.prose h3{--fan:#ffbf00}.prose h4{--fan:#a9e000}.prose h5{--fan:#57c850}.prose h6{--fan:#5ec1e0}:root{--fan-svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23000'%3E%3Cpath d='M12 11C10.6 7.2 11.2 3 14.6 2.1c2.6-.7 3.8 2.4 1.7 4.4-1.3 1.3-2.8 2.6-4.3 4.5z'/%3E%3Cpath d='M13 12c3.8-1.4 8-.8 8.9 2.6.7 2.6-2.4 3.8-4.4 1.7-1.3-1.3-2.6-2.8-4.5-4.3z'/%3E%3Cpath d='M12 13c1.4 3.8.8 8-2.6 8.9-2.6.7-3.8-2.4-1.7-4.4 1.3-1.3 2.8-2.6 4.3-4.5z'/%3E%3Cpath d='M11 12C7.2 13.4 3 12.8 2.1 9.4c-.7-2.6 2.4-3.8 4.4-1.7 1.3 1.3 2.6 2.8 4.5 4.3z'/%3E%3Ccircle cx='12' cy='12' r='1.6'/%3E%3C/g%3E%3C/svg%3E")}@keyframes spin{to{transform:rotate(-360deg)}}html:not(.no-decor) .heartbeat.anim-on{animation:1.3s ease-in-out infinite heartbeat}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}45%{transform:scale(1.15)}}html:not(.no-decor) .hero-down.anim-on{animation:1.8s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(8px)}}.no-pageTransition ::view-transition-group(*),.no-pageTransition ::view-transition-old(*),.no-pageTransition ::view-transition-new(*){animation:none!important}.theme-vt::view-transition-old(root),.theme-vt::view-transition-new(root){mix-blend-mode:normal;animation:none}[data-motion=reduce] *,[data-motion=reduce] :before,[data-motion=reduce] :after{scroll-behavior:auto!important;animation:none!important}[data-motion=reduce] *{transition-property:color,background-color,border-color,box-shadow,opacity!important;transition-duration:.15s!important}[data-motion=reduce] .carousel.vertical .slides{transition:none!important}@media (hover:none){html:not(.no-hover) .post-card:hover{transform:none}}:root{--font-sans:-apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Segoe UI", Roboto, sans-serif;--font-serif:"Noto Serif SC", "Source Han Serif SC", "Songti SC", "STSong", Georgia, serif;--font-mono:"JetBrains Mono", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--primary:#3d9cf0;--primary-2:#ff7eb3;--primary-soft:color-mix(in srgb, var(--primary) 12%, transparent);--grad:linear-gradient(120deg, #4facfe 0%, #8f7cff 50%, #ff7eb3 100%);--bg:#f3f6fb;--bg-deco:radial-gradient(1200px 600px at 100% -10%, #e4f0ff 0%, transparent 60%), radial-gradient(900px 500px at -10% 20%, #ffeaf3 0%, transparent 55%);--card:#fff;--card-2:#f6f8fb;--text:#2c3440;--text-2:#5d6876;--muted:#8a96a6;--border:#e6ebf2;--shadow:0 1px 2px #1e325a0a, 0 6px 24px #1e325a0f;--shadow-hover:0 4px 10px #1e325a0f, 0 18px 44px #1e325a1f;--radius:14px;--radius-sm:8px;--header-h:60px;--container:1240px;--aside-w:300px;--ease:cubic-bezier(.22, .8, .24, 1);--code-bg:#f7f8fa;--mark:#fff3a8;color-scheme:light}[data-theme=dark]{--primary:#5aa9f2;--primary-2:#ff8fbe;--bg:#0f1216;--bg-deco:radial-gradient(1200px 600px at 100% -10%, #142338 0%, transparent 60%), radial-gradient(900px 500px at -10% 20%, #2a1626 0%, transparent 55%);--card:#171b21;--card-2:#1d222a;--text:#d5dbe3;--text-2:#a3adba;--muted:#76818f;--border:#262c35;--shadow:0 1px 2px #0000004d, 0 6px 24px #00000040;--shadow-hover:0 4px 10px #00000059, 0 18px 44px #0006;--code-bg:#1b1f26;--mark:#5c4d14;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}html:not([data-motion=reduce]){scroll-behavior:smooth}body{min-height:100vh;font:15.5px/1.75 var(--font-sans);color:var(--text);background:var(--bg-deco), var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;flex-direction:column;margin:0;transition:background-color .3s,color .3s;display:flex}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-2)}img,svg,video,canvas{vertical-align:middle;max-width:100%}img{height:auto}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}::selection{background:color-mix(in srgb, var(--primary) 30%, transparent)}.icon{flex-shrink:0}.muted{color:var(--muted)}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 20px}.skip-link{z-index:100;background:var(--card);border-radius:6px;padding:6px 12px;position:absolute;top:8px;left:-999px}.skip-link:focus{left:8px}.page{padding-top:calc(var(--header-h) + 24px);flex:1}.has-hero .page{padding-top:28px}[hidden]{display:none!important}html{scrollbar-color:color-mix(in srgb, var(--primary) 45%, transparent) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 45%, transparent);border-radius:8px}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);transition:box-shadow .3s var(--ease), transform .3s var(--ease), background-color .3s}.btn{background:var(--primary);color:#fff;border:0;border-radius:999px;align-items:center;gap:6px;padding:8px 18px;font-weight:500;transition:filter .2s,transform .2s;display:inline-flex}.btn:hover{color:#fff;filter:brightness(1.08)}.icon-btn{width:38px;height:38px;color:inherit;background:0 0;border:0;border-radius:10px;place-items:center;transition:background .2s,color .2s;display:inline-grid}.icon-btn:hover{background:color-mix(in srgb, currentColor 12%, transparent)}.link-btn{color:var(--primary);background:0 0;border:0;padding:0}.badge{background:var(--grad);color:#fff;border-radius:999px;padding:0 8px;font-size:12px;line-height:20px;display:inline-block}.layout{grid-template-columns:var(--aside-w) minmax(0, 1fr);align-items:start;gap:24px;display:grid}.layout>.main{grid-area:1/2;min-width:0}.layout>.aside{grid-area:1/1}.layout.single{grid-template-columns:minmax(0,1fr);max-width:980px}.layout.single>.main{grid-column:1}.site-header{z-index:50;height:var(--header-h);background:color-mix(in srgb, var(--card) 88%, transparent);-webkit-backdrop-filter:saturate(160%)blur(8px);border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);transition:transform .35s var(--ease), background-color .3s, border-color .3s;position:fixed;inset:0 0 auto}.nav-hidden .site-header{transform:translateY(-100%)}.site-header.transparent:not(:is(.scrolled *)){backdrop-filter:none;color:#fff;background:0 0;border-color:#0000}.site-header.transparent:not(:is(.scrolled *)) .brand{color:#fff;text-shadow:0 2px 8px #0000004d}.nav{align-items:center;gap:12px;height:100%;display:flex}.brand{color:var(--text);letter-spacing:.02em;white-space:nowrap;margin-right:auto;font-size:19px;font-weight:700}.brand:hover{color:var(--primary)}.menu{gap:2px;margin:0;padding:0;list-style:none;display:flex}.menu-item{position:relative}.menu-link{color:inherit;white-space:nowrap;background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;padding:7px 12px;font-size:15px;transition:background .2s;display:flex}.menu-link:hover,.menu-item.active .menu-link{background:color-mix(in srgb, currentColor 10%, transparent);color:inherit}.menu-item.active .menu-link{font-weight:600}.caret{opacity:.7;transition:transform .2s}.submenu{background:var(--card);min-width:180px;color:var(--text);box-shadow:var(--shadow-hover);border:1px solid var(--border);opacity:0;visibility:hidden;transition:.2s var(--ease);border-radius:12px;max-height:70vh;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:50%;overflow:auto;transform:translate(-50%,-6px)}.submenu:before{content:"";height:10px;position:absolute;inset:-10px 0 auto}.submenu a{color:var(--text);white-space:nowrap;border-radius:8px;padding:7px 12px;font-size:14px;display:block}.submenu a:hover{background:var(--primary-soft);color:var(--primary)}@media (hover:hover){.has-sub:hover .submenu,.has-sub:focus-within .submenu{opacity:1;visibility:visible;transform:translate(-50%)}}.has-sub.open .submenu{opacity:1;visibility:visible;transform:translate(-50%)}@media (hover:hover){.has-sub:hover .caret{transform:rotate(180deg)}}.has-sub.open .caret{transform:rotate(180deg)}.nav-actions{gap:2px;display:flex}.menu-toggle{display:none}.theme-toggle .icon{transition:transform .5s var(--ease)}.theme-toggle .i-moon,[data-theme=dark] .theme-toggle .i-sun{display:none}[data-theme=dark] .theme-toggle .i-moon{display:block}.hero{color:#fff;background:#1d2633;place-items:center;height:100svh;min-height:480px;display:grid;position:relative;overflow:hidden}.hero.small{height:380px;min-height:0}.hero-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0006,#00000040 45%,#00000080);position:absolute;inset:0}[data-theme=dark] .hero-bg{filter:brightness(.72)}.hero.small:after{background:radial-gradient(#00000080,#0000004d 70%),linear-gradient(#00000059,#0000008c)}.fx-bubbles{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-inner{z-index:3;text-align:center;max-width:980px;padding:0 20px;position:relative}.hero-title{text-wrap:balance;letter-spacing:.04em;text-shadow:0 4px 24px #00000059;margin:0;font-size:clamp(30px,5.2vw,52px);font-weight:700;line-height:1.3}.hero-sub{opacity:.95;text-shadow:0 2px 10px #0006;min-height:1.6em;margin:14px 0 0;font-size:clamp(16px,2.2vw,21px)}[data-typing].typing .ch{opacity:0}[data-typing].typing .ch.on{opacity:1}[data-typing] .ch.caret{animation:1s step-end infinite caret;box-shadow:2px 0}@keyframes caret{50%{box-shadow:2px 0 #0000}}@keyframes blink{50%{opacity:0}}.hero-down{z-index:3;color:#fff;margin-left:-14px;position:absolute;bottom:24px;left:50%}.hero-down:hover{color:#fff}.post-hero-info{padding-top:var(--header-h);flex-direction:column;align-items:center;gap:10px;display:flex}.post-hero-info .hero-title{font-size:clamp(24px,3.6vw,38px)}.hero-cat{backdrop-filter:blur(6px);color:#fff;background:#ffffff2e;border:1px solid #ffffff40;border-radius:999px;padding:2px 14px;font-size:13px}.hero-cat:hover{color:#fff;background:#ffffff47}.post-meta{flex-wrap:wrap;justify-content:center;gap:4px 16px;font-size:13.5px;display:flex}.post-meta>*{align-items:center;gap:5px;display:inline-flex}.hero .post-meta{opacity:.92}.post-list{gap:20px;display:grid}.post-card{grid-template-columns:42% 1fr;height:230px;display:grid;overflow:hidden}.post-card:hover{box-shadow:var(--shadow-hover)}.post-card.flip{grid-template-columns:1fr 42%}.post-card.flip .cover{order:2}.post-card .cover{background:var(--card-2);display:block;position:relative;overflow:hidden}.post-card .cover img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease);position:absolute;inset:0}.post-card .info{flex-direction:column;justify-content:center;gap:8px;min-width:0;padding:22px 28px;display:flex}.post-card .title{margin:0;font-size:20px;line-height:1.45}.post-card .title a{color:var(--text);background:linear-gradient(var(--primary), var(--primary)) 0 100% / 0 2px no-repeat;transition:background-size .35s var(--ease), color .2s;align-items:baseline;gap:6px;display:inline-flex}.post-card .title a:hover{color:var(--primary);background-size:100% 2px}.post-card .meta{color:var(--muted);flex-wrap:wrap;gap:4px 14px;font-size:13px;display:flex}.post-card .meta>*{color:inherit;align-items:center;gap:4px;display:inline-flex}.post-card .meta .badge{color:#fff}.post-card .meta a:hover{color:var(--primary)}.post-card .excerpt{color:var(--text-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:14.5px;display:-webkit-box;overflow:hidden}.top-carousel{margin-bottom:20px;position:relative;overflow:hidden}.carousel .viewport{border-radius:inherit;overflow:hidden}.carousel:not(.vertical) .viewport{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;overflow-x:auto}.carousel:not(.vertical) .viewport::-webkit-scrollbar{display:none}.carousel .slides{display:flex}.carousel.vertical .slides{transition:transform .6s var(--ease)}.carousel:not(.vertical) .slide{scroll-snap-align:start;scroll-snap-stop:always}.carousel .slide{flex:0 0 100%;display:block;position:relative}.top-carousel .slide{color:#fff;height:280px;overflow:hidden}.top-carousel .slide img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease)}.top-carousel .slide:after{content:"";background:linear-gradient(#0000 40%,#000000a6);position:absolute;inset:0}.slide-info{z-index:1;justify-items:start;gap:4px;padding:22px 26px;display:grid;position:absolute;bottom:0;left:0;right:0}.slide-info b{font-size:22px}.slide-info small{opacity:.85;-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.dots{z-index:2;gap:6px;display:flex;position:absolute;bottom:16px;right:18px}.dots button{background:#ffffff8c;border:0;border-radius:99px;width:8px;height:8px;padding:0;transition:width .3s}.dots button[aria-current=true]{background:#fff;width:22px}.carousel .prev,.carousel .next{z-index:2;backdrop-filter:blur(4px);color:#fff;opacity:0;background:#00000059;border:0;border-radius:50%;place-items:center;width:34px;height:34px;margin-top:-17px;transition:opacity .2s,background .2s;display:grid;position:absolute;top:50%}.carousel .prev:hover,.carousel .next:hover{background:#0000008c}.carousel:hover .prev,.carousel:hover .next{opacity:1}.carousel .prev{left:10px}.carousel .next{right:10px}@media (hover:none){.carousel .prev,.carousel .next{display:none}}.pagination{flex-wrap:wrap;justify-content:center;gap:8px;margin:28px 0 8px;display:flex}.pagination a,.pagination span{background:var(--card);min-width:38px;height:38px;box-shadow:var(--shadow);color:var(--text);border-radius:10px;place-items:center;padding:0 10px;display:grid}.pagination a:hover{background:var(--primary);color:#fff}.pagination .current{background:var(--grad);color:#fff;font-weight:600}.pagination .gap{box-shadow:none;background:0 0}.aside{align-content:start;gap:20px;display:grid}.aside .sticky{gap:20px;display:grid}.aside .card,.toc-card{padding:18px 20px}.aside h3,.toc-card h3{align-items:center;gap:8px;margin:0 0 12px;font-size:15.5px;display:flex}.aside h3 .icon,.toc-card h3 .icon{color:var(--primary)}.author-card{text-align:center;isolation:isolate;position:relative;overflow:hidden;padding-top:26px!important}.author-card>*{z-index:1;position:relative}.avatar-ring{--ring:#9fd8f5;border-radius:50%;width:112px;height:112px;margin:0 auto 10px;display:block;position:relative}[data-theme=dark] .avatar-ring{--ring:#39c5bb}.avatar{object-fit:cover;border:3px solid var(--card);width:112px;height:112px;transition:transform .8s var(--ease);border-radius:50%;display:block}.status{z-index:2;background:var(--card);cursor:default;white-space:nowrap;border-radius:99px;justify-content:center;align-items:center;gap:4px;min-width:28px;height:28px;padding:0 6px;font-size:14px;line-height:1;display:inline-flex;position:absolute;bottom:4px;right:2px;box-shadow:0 2px 8px #00000026}.status-text{max-width:0;color:var(--text-2);transition:max-width .35s var(--ease);font-size:12px;overflow:hidden}.status:hover .status-text,.status:focus .status-text{max-width:6em}.author-name{letter-spacing:.02em;margin:0;font-size:21px}.author-desc{color:var(--text-2);margin:2px 0 14px;font-size:14px}.author-stats{grid-template-columns:repeat(3,1fr);margin-bottom:16px;display:grid}.author-stats a{color:var(--text);gap:2px;display:grid}.author-stats span{color:var(--text-2);font-size:13px}.author-stats b{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.author-stats a:hover b{color:var(--primary)}.follow{background:#39c5bb;justify-content:center;width:100%}.follow:hover{filter:brightness(1.06)}.social{justify-content:center;gap:10px;margin-top:12px;display:flex}.social a{width:36px;height:36px;color:var(--brand,var(--text-2));background:color-mix(in srgb, var(--brand,var(--text-2)) 12%, transparent);transition:transform .3s var(--ease), background .2s;border-radius:50%;place-items:center;display:grid}.social a:hover{background:color-mix(in srgb, var(--brand,var(--text-2)) 22%, transparent);color:var(--brand,var(--primary))}.social a[data-brand=github]{--brand:#6e5494}.social a[data-brand=mail]{--brand:#ea4335}.social a[data-brand=rss]{--brand:#f78422}[data-theme=dark] .social a[data-brand=github]{--brand:#b9a3e3}.notice-card p{color:var(--text-2);margin:0 0 6px;font-size:14px}.list-card ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.list-card a{color:var(--text);grid-template-columns:minmax(0,1fr);column-gap:10px;font-size:14px;line-height:1.5;display:grid}.list-card a:has(img){grid-template-columns:56px minmax(0,1fr)}.list-card a span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.list-card a:has(img) :is(span,time){grid-column:2}.list-card a time{color:var(--muted);font-size:12px}.list-card a img{object-fit:cover;border-radius:8px;grid-row:span 2;width:56px;height:56px}.list-card a:hover span{color:var(--primary)}.tag-cloud{flex-wrap:wrap;gap:6px;display:flex}.tag-cloud a{background:color-mix(in srgb, var(--primary) calc(8% + var(--w,0) * 18%), transparent);color:var(--text-2);font-size:calc(12.5px + var(--w,0) * 3px);border-radius:999px;padding:2px 10px;transition:background-color .25s,color .2s}.tag-cloud a:hover{background:var(--primary);color:#fff}.tag-cloud sup{opacity:.7;margin-left:2px;font-size:10px}.webinfo-card dl{grid-template-columns:1fr auto;gap:6px;margin:0;font-size:14px;display:grid}.webinfo-card dt{color:var(--text-2)}.webinfo-card dd{font-variant-numeric:tabular-nums;margin:0}.pixiv-card .carousel{aspect-ratio:3/4;background:var(--card-2);border-radius:10px;position:relative;overflow:hidden}.pixiv-card .viewport,.pixiv-card .slides,.pixiv-card .slide{height:100%}.pixiv-card .slide img{object-fit:cover;width:100%;height:100%}.pixiv-card .slide span{color:#fff;background:linear-gradient(#0000,#000000b3);padding:30px 12px 10px;font-size:13px;display:grid;position:absolute;inset:auto 0 0}.pixiv-card .slide b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.skeleton{background:var(--border);animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45}}.history-card .viewport{height:64px}.h3-actions{gap:2px;margin-left:auto;display:inline-flex}.mini-btn{width:24px;height:24px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.mini-btn:hover{background:var(--primary-soft);color:var(--primary)}.history-card .slides{height:100%;transition:transform .6s var(--ease);flex-direction:column}.history-card .slide{flex:0 0 100%;font-size:13.5px;line-height:1.5;display:grid}.history-card .slide b{color:var(--primary);font-size:13px}.history-card .slide span{-webkit-line-clamp:2;color:var(--text-2);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.toc-card{max-height:calc(100vh - var(--header-h) - 40px);flex-direction:column;display:flex}.toc-card h3{flex-shrink:0}.toc-pct{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-weight:500}.toc{overscroll-behavior:contain;margin:0 -8px;overflow:auto}.toc ol{margin:0;padding:0;list-style:none}.toc a{color:var(--text-2);border-left:2px solid #0000;border-radius:8px;gap:6px;padding:4px 8px;font-size:14px;line-height:1.5;display:flex}.toc .lv1 a{padding-left:22px;font-size:13.5px}.toc .lv2 a{padding-left:36px;font-size:13px}.toc .num{color:var(--muted);font-variant-numeric:tabular-nums}.toc a:hover{background:var(--primary-soft);color:var(--primary)}.toc a.active{color:var(--primary);background:var(--primary-soft);border-left-color:var(--primary);font-weight:500}.rightside{z-index:40;transition:transform .35s var(--ease);justify-items:end;gap:8px;display:grid;position:fixed;bottom:36px;right:18px;transform:translate(80px)}.show-rightside .rightside{transform:none}.rs-btn{background:var(--primary);color:#fff;width:38px;height:38px;box-shadow:var(--shadow);border:0;border-radius:10px;place-items:center;transition:filter .2s,transform .2s,opacity .2s;display:grid}.rs-btn:hover{filter:brightness(1.1)}[data-theme=dark] .rs-btn{color:#8fc3f3;background:#1f2a37;border:1px solid #2c3a4a;box-shadow:0 4px 14px #00000059}[data-theme=dark] .rs-btn:hover{filter:none;background:#26364a}.rs-more{gap:8px;display:grid}.rs-more .rs-btn{opacity:0;visibility:hidden;transform:translate(14px)}.rs-open .rs-more .rs-btn{opacity:1;visibility:visible;transform:none}.rs-toggle .icon{transition:transform .3s var(--ease)}.rs-open .rs-toggle .icon{transform:rotate(90deg)}.rs-more .rs-read,.rs-more .rs-comment{display:none}.post-page .rs-more .rs-read,.post-page .rs-more .rs-comment{display:grid}.rs-toc,.at-bottom .rs-bottom{display:none}.rs-top{position:relative}.rs-top .rs-percent{font-size:12px;font-weight:600}.rs-top .icon,.rs-top:hover .rs-percent{display:none}.rs-top:hover .icon{display:block}.modal[open]{flex-direction:column;display:flex}html:has(dialog[open]){overflow:hidden}.modal{background:var(--card);color:var(--text);border:0;border-radius:18px;width:min(560px,100vw - 32px);max-height:min(86dvh,760px);padding:0;overflow:hidden;box-shadow:0 30px 80px #0000004d}.modal::backdrop{backdrop-filter:blur(4px);background:#0a0f1973}.modal[open]{animation:pop .25s var(--ease)}@keyframes pop{0%{opacity:0;transform:translateY(12px)scale(.98)}}.modal-head{justify-content:space-between;align-items:center;padding:16px 18px 6px 22px;display:flex}.modal-head h2{margin:0;font-size:18px}.modal-head{flex-shrink:0}.modal-body{overscroll-behavior:contain;flex:1;min-height:0;padding:4px 22px 30px;overflow-y:auto}fieldset{border:0;margin:14px 0 0;padding:0}legend{color:var(--text-2);margin-bottom:8px;font-size:14px;font-weight:600}.seg{flex-wrap:wrap;gap:8px;display:flex}.seg legend{width:100%}.seg label{flex:1;min-width:90px;position:relative}.seg input{opacity:0;pointer-events:none;width:100%;height:100%;margin:0;position:absolute;inset:0}.seg span{text-align:center;border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:8px 10px;transition:all .2s;display:block}.seg input:checked+span{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:600}.seg input:focus-visible+span{outline:2px solid var(--primary)}.switches .fx-list{grid-template-columns:1fr 1fr;align-items:start;gap:10px 14px;margin-top:12px;display:grid}.switch{cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;line-height:20px;display:flex;position:relative}.switch input{opacity:0;width:36px;height:20px;margin:0;position:absolute;top:0;left:0}.switch .track{background:var(--border);border-radius:99px;flex-shrink:0;width:36px;height:20px;transition:background .2s;position:relative}.switch .track:after{content:"";width:16px;height:16px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.switch input:checked+.track{background:var(--primary)}.switch input:checked+.track:after{transform:translate(16px)}.switch input:disabled~*{opacity:.45}.switch input:focus-visible+.track{outline:2px solid var(--primary);outline-offset:2px}.switch.master{background:var(--card-2);border-radius:12px;padding:10px 12px}.switch.master small{color:var(--muted);font-size:12px;display:block}.cache-info p{margin:4px 0;font-size:14px}.cache-info .hint{color:var(--muted);margin:8px 0 12px;font-size:13px}.search{width:min(640px,100vw - 24px);margin-top:10dvh}.modal-body:focus{outline:none}.search-box{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 18px;display:flex}.search-box input{color:inherit;background:0 0;border:0;outline:0;flex:1;font-size:17px}@media (hover:none){.search-box kbd{display:none}}.search-box kbd{font:12px var(--font-mono);border:1px solid var(--border);color:var(--muted);border-radius:6px;padding:2px 6px}.search-results{overscroll-behavior:contain;flex:1;min-height:0;max-height:60dvh;padding:8px;overflow-y:auto}.search-results .muted{text-align:center;margin:0;padding:18px}.hit{color:var(--text);border-radius:10px;gap:2px;padding:10px 14px;display:grid}.hit:hover,.hit:focus{background:var(--primary-soft)}.hit b{color:var(--primary)}.hit span{color:var(--text-2);font-size:13.5px}.hit mark{background:var(--mark);color:inherit;border-radius:3px}.lightbox{cursor:zoom-out;background:0 0;border:0;max-width:96vw;max-height:96vh;padding:0}.lightbox::backdrop{background:#000000d9}.lightbox img{border-radius:6px;max-width:96vw;max-height:90vh}.lightbox p{color:#ddd;text-align:center;margin:8px 0 0}.lightbox[open] img{animation:zoomin .25s var(--ease)}@keyframes zoomin{0%{opacity:.3;transform:scale(.94)}}#toasts .toast{pointer-events:auto;align-items:center;gap:12px;display:flex}.toast-action{color:#fff;font:inherit;background:#ffffff38;border:0;border-radius:999px;padding:3px 12px;font-size:13px}.toast-action:hover{background:#ffffff57}#toasts{left:50%;top:calc(var(--header-h) + 14px);z-index:2147483000;pointer-events:none;justify-items:center;gap:8px;display:grid;position:fixed;transform:translate(-50%)}.toast{color:#fff;animation:toastin .3s var(--ease);background:#2b3340;border-radius:12px;max-width:min(420px,100vw - 40px);padding:12px 18px;font-size:14.5px;font-weight:500;box-shadow:0 10px 30px #00000040}.toast-success{background:#2f9e6f}.toast-warn{background:#d9822b}.toast.out{opacity:0;transition:all .3s;transform:translateY(-8px)}@keyframes toastin{0%{opacity:0;transform:translateY(-10px)}}.site-footer{text-align:center;color:var(--text-2);background:color-mix(in srgb, var(--card) 70%, transparent);border-top:1px solid var(--border);margin-top:48px;padding:34px 0 40px;font-size:14px}.site-footer p{margin:4px 0}.footer-text{color:var(--text);letter-spacing:.1em;font-size:15px}.heartbeat{color:#ff5c8a;display:inline-block}@media (width<=1100px){:root{--aside-w:270px}.menu-link{padding:7px 9px}}@media (width<=960px){.layout{grid-template-columns:minmax(0,1fr)}.layout>.main,.layout>.aside{grid-area:auto/1}.aside .sticky{position:static}.menu-toggle{display:inline-grid}.menu{top:var(--header-h);min-width:220px;max-height:calc(100vh - var(--header-h) - 24px);background:var(--card);color:var(--text);box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;transition:.25s var(--ease);border-radius:14px;flex-direction:column;padding:8px;position:fixed;right:12px;overflow:auto;transform:translateY(-8px)}.menu-open .menu{opacity:1;visibility:visible;transform:none}.submenu{opacity:1;visibility:visible;box-shadow:none;background:0 0;border:0;padding:0 0 0 26px;display:none;position:static;transform:none}.has-sub:focus-within .submenu,.has-sub:hover .submenu{display:none}.has-sub.open .submenu{display:block;transform:none}.has-sub .caret{transition:transform .2s}.has-sub:hover .caret{transform:none}.has-sub.open .caret{transform:rotate(180deg)}.post-page .toc-card{z-index:45;width:min(320px,100vw - 90px);max-height:60vh;box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;transform-origin:100% 100%;transition:.25s var(--ease);position:fixed;bottom:36px;right:66px;transform:scale(.95)}.toc-open .post-page .toc-card,.toc-open .toc-card{opacity:1;visibility:visible;transform:none}.post-page:not(.no-toc) .rs-toc{display:grid}}@media (width<=680px){body{font-size:15px}.container{padding:0 12px}.post-card,.post-card.flip{grid-template-columns:1fr;height:auto}.post-card .cover,.post-card.flip .cover{aspect-ratio:16/9;order:0}.post-card .info{padding:16px 18px 20px}.post-card .title{font-size:18px}.top-carousel .slide{height:200px}.hero.small{height:300px}.switches .fx-list{grid-template-columns:1fr}.rightside{right:10px}}@media print{.site-header,.rightside,.aside,.site-footer,.comments,.reward,.post-nav,.hero{display:none!important}.page{padding:0}.layout{display:block}.card{box-shadow:none;border:0}}[data-style=vivid] .menu>.menu-item:first-child>.menu-link .icon{color:#ff8a3d}[data-style=vivid] .menu>.menu-item:nth-child(2)>.menu-link .icon{color:#3d9cf0}[data-style=vivid] .menu>.menu-item:nth-child(3)>.menu-link .icon{color:#f5b400}[data-style=vivid] .menu>.menu-item:nth-child(4)>.menu-link .icon{color:#2fbf71}[data-style=vivid] .menu>.menu-item:nth-child(5)>.menu-link .icon{color:#e85d9e}[data-style=vivid] .menu>.menu-item:nth-child(6)>.menu-link .icon{color:#8f7cff}[data-style=vivid] .menu>.menu-item:nth-child(7)>.menu-link .icon{color:#16a3b8}.hit-group{color:var(--muted);letter-spacing:.02em;margin:10px 14px 4px;font-size:12px;font-weight:600}.hit small{color:var(--muted);font-size:12px}.hit.active{background:var(--primary-soft);outline:1px solid color-mix(in srgb, var(--primary) 40%, transparent)}@media (width>=1700px){:root{--container:1580px;--aside-w:320px}body{font-size:16px}.post-list{grid-template-columns:repeat(2,minmax(0,1fr))}.post-card,.post-card.flip{grid-template-rows:230px auto;grid-template-columns:1fr;height:auto}.post-card.flip .cover{order:0}.post-card .info{justify-content:flex-start;padding:20px 24px 24px}.top-carousel .slide{height:340px}}@media (width>=2200px){:root{--container:1900px;--aside-w:340px}body{font-size:17px}.prose{font-size:17.5px}.post-card,.post-card.flip{grid-template-rows:280px auto}.hero.small{height:460px}}:root{--sticky-top:calc(var(--header-h) + 16px)}.nav-hidden{--sticky-top:16px}.layout>.aside{align-self:stretch}.aside .sticky{top:min(var(--sticky-top), calc(100vh - var(--sticky-h,0px) - 16px));transition:top .35s var(--ease);position:sticky}[data-side=right] .layout:not(.single):not(.post-layout){grid-template-columns:minmax(0, 1fr) var(--aside-w)}[data-side=right] .layout:not(.single):not(.post-layout)>.main{grid-column:1}[data-side=right] .layout:not(.single):not(.post-layout)>.aside{grid-column:2}.layout.post-layout{grid-template-columns:var(--aside-w) minmax(0, 1fr);grid-template-rows:auto auto 1fr;grid-template-areas:"author main""related main""toc main"}[data-side=right] .layout.post-layout{grid-template-columns:minmax(0, 1fr) var(--aside-w);grid-template-areas:"main author""main related""main toc"}.layout.post-layout>.main{grid-area:main}.layout.post-layout>.side-author{grid-area:author;align-self:start}.layout.post-layout>.side-related{grid-area:related;align-self:start}.layout.post-layout>.side-related .sticky{position:static}.layout.post-layout>.toc-rail{grid-area:toc;align-self:stretch;min-width:0}.post-layout .toc-card{top:var(--sticky-top);transition:top .35s var(--ease);position:sticky}@media (width>=1700px){.layout.post-layout{grid-template-columns:var(--aside-w) minmax(0, 1fr) 300px;grid-template-rows:auto 1fr;grid-template-areas:"author main related""toc main related"}[data-side=right] .layout.post-layout{grid-template-columns:300px minmax(0, 1fr) var(--aside-w);grid-template-areas:"related main author""related main toc"}.layout.post-layout>.side-related{align-self:stretch}.layout.post-layout>.side-related .sticky{position:sticky}}@media (width<=960px){.layout.post-layout,[data-side=right] .layout.post-layout{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"main"}.layout.post-layout>:is(.side-author,.side-related){display:none}.layout.post-layout>.toc-rail{grid-area:auto;display:contents}[data-side=right] .layout:not(.single):not(.post-layout){grid-template-columns:minmax(0,1fr)}[data-side=right] .layout:not(.single):not(.post-layout)>:is(.main,.aside){grid-column:1}.aside .sticky{position:static}}[data-focus="1"] .layout.post-layout>.side-related{display:none}@media (width>=1700px){[data-style=vivid][data-focus="1"] body:not(.read-mode) .layout.post-layout{grid-template-columns:var(--aside-w) minmax(0, 1fr);grid-template-areas:"author main""toc main"}[data-style=vivid][data-focus="1"][data-side=right] body:not(.read-mode) .layout.post-layout{grid-template-columns:minmax(0, 1fr) var(--aside-w);grid-template-areas:"main author""main toc"}}
|
|
1
|
+
@layer astro.images{:where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down}[data-astro-image-pos=top]{object-position:top}[data-astro-image-pos=bottom]{object-position:bottom}[data-astro-image-pos=left]{object-position:left}[data-astro-image-pos=right]{object-position:right}[data-astro-image-pos=center]{object-position:center}[data-astro-image-pos=top-left]{object-position:top left}[data-astro-image-pos=top-right]{object-position:top right}[data-astro-image-pos=top-center]{object-position:top center}[data-astro-image-pos=bottom-left]{object-position:bottom left}[data-astro-image-pos=bottom-right]{object-position:bottom right}[data-astro-image-pos=bottom-center]{object-position:bottom center}[data-astro-image-pos=left-top]{object-position:left top}[data-astro-image-pos=left-bottom]{object-position:left bottom}[data-astro-image-pos=left-center]{object-position:left center}[data-astro-image-pos=right-top]{object-position:right top}[data-astro-image-pos=right-bottom]{object-position:right bottom}[data-astro-image-pos=right-center]{object-position:right center}[data-astro-image-pos=center-top]{object-position:center top}[data-astro-image-pos=center-bottom]{object-position:center bottom}[data-astro-image-pos=center-left]{object-position:center left}[data-astro-image-pos=center-right]{object-position:center right}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.post{padding:32px 40px 28px}.post-head{display:none}.post-head h1{margin:0 0 6px;font-size:30px;line-height:1.35}.post-head .post-meta{color:var(--muted);justify-content:flex-start}.post-head .post-meta a{color:inherit}.notice{background:var(--primary-soft);color:var(--text-2);border-radius:10px;align-items:center;gap:8px;margin:0 0 16px;padding:10px 14px;font-size:14px;display:flex}.notice.warn{background:#f0a02024}.notice .icon{color:var(--primary)}.notice.warn .icon{color:#e08a00}.series{background:var(--card-2);border-radius:12px;margin:0 0 18px;padding:10px 16px}.series summary{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:flex}.series ol{margin:8px 0 0;padding-left:26px}.prose{color:var(--text);overflow-wrap:break-word;font-size:16px;line-height:1.85;position:relative}.prose>:first-child{margin-top:0}.prose p{margin:0 0 1.1em}.prose :is(h1,h2,h3,h4,h5,h6){scroll-margin-top:calc(var(--header-h) + 20px);margin:1.9em 0 .8em;line-height:1.4;position:relative}.prose h1{font-size:1.75em}.prose h2{font-size:1.5em}.prose h3{font-size:1.28em}.prose h4{font-size:1.12em}.prose :is(h5,h6){font-size:1em}.prose h2{border-bottom:1px dashed var(--border);padding-bottom:.35em}.prose .anchor{color:var(--muted);opacity:0;margin-left:.4em;font-weight:400;transition:opacity .2s}.prose :is(h2,h3,h4):hover .anchor{opacity:1}.prose a{color:var(--primary);border-bottom:1px solid color-mix(in srgb, var(--primary) 35%, transparent);transition:border-color .2s,color .2s}.prose a:hover{color:var(--primary-2);border-color:currentColor}.prose :is(ul,ol){margin:0 0 1.1em;padding-left:1.6em}.prose li{margin:.25em 0}.prose li::marker{color:var(--primary)}.prose blockquote{border-left:4px solid var(--primary);background:var(--primary-soft);color:var(--text-2);border-radius:0 10px 10px 0;margin:1.2em 0;padding:.8em 1.2em}.prose blockquote>:last-child{margin-bottom:0}.prose hr{background:linear-gradient(90deg, transparent, var(--border), transparent);border:0;height:1px;margin:2em 0;position:relative;overflow:visible}.prose img{cursor:zoom-in;border-radius:8px;max-width:100%;height:auto;margin:1em auto;display:block}[data-theme=dark] .prose img{filter:brightness(.92);background:#eceef1}.prose p>img:only-child{margin:1.2em auto}.prose video{border-radius:8px;max-width:100%;margin:1em auto;display:block}.prose strong{color:color-mix(in srgb, var(--text) 85%, var(--primary))}.prose del{color:var(--muted)}.prose mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 .2em}.prose kbd{font:.85em var(--font-mono);border:1px solid var(--border);background:var(--card-2);border-bottom-width:2px;border-radius:5px;padding:.1em .45em}.prose :not(pre)>code{font:.88em var(--font-mono);background:color-mix(in srgb, var(--primary) 9%, var(--card-2));color:color-mix(in srgb, var(--text) 70%, #d6336c);border-radius:5px;padding:.15em .4em}.table-wrap{border:1px solid var(--border);border-radius:10px;margin:1.2em 0;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:.94em}.prose :is(th,td){border-bottom:1px solid var(--border);text-align:left;padding:.55em .9em}.prose th{background:var(--card-2);white-space:nowrap;font-weight:600}.prose tr:last-child td{border-bottom:0}.prose tbody tr:hover{background:color-mix(in srgb, var(--primary) 4%, transparent)}.prose dl dt{font-weight:600}.prose dl dd{margin:0 0 .6em 1.5em}.prose center,.prose [align=center]{text-align:center}.prose .katex-display{padding:.3em 0;overflow:auto hidden}.prose :is(psw,pwd){--mask:#a9adb3;background:var(--mask);cursor:help;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:3px;padding:0 .15em;transition:background-color .28s}[data-theme=dark] .prose :is(psw,pwd){--mask:#3b414b}.prose .psw-in{opacity:0;transition:opacity .28s}.prose :is(psw,pwd):is(:hover,:focus,:active){background:0 0}.prose :is(psw,pwd):is(:hover,:focus,:active) .psw-in{opacity:1}.code-block{background:var(--code-bg);border:1px solid var(--border);border-radius:12px;margin:1.3em 0;position:relative;overflow:hidden}.code-block figcaption{font:12px var(--font-mono);color:var(--muted);background:color-mix(in srgb, var(--code-bg) 80%, var(--border));align-items:center;gap:8px;padding:6px 12px;display:flex}html:not(.no-decor) .code-block figcaption:before{content:"";background:#ff5f57;border-radius:50%;width:10px;height:10px;margin-right:38px;box-shadow:16px 0 #febc2e,32px 0 #28c840}.code-block .lang{text-transform:uppercase;letter-spacing:.05em}.code-block .copy{color:var(--muted);font:inherit;background:0 0;border:0;border-radius:6px;margin-left:auto;padding:2px 8px}.code-block .copy:hover{background:var(--primary-soft);color:var(--primary)}.code-block .copy.ok{color:#2f9e6f}.code-block pre{font:13.5px/1.65 var(--font-mono);tab-size:4;margin:0;padding:14px 16px;overflow-x:auto;background:0 0!important}.code-block code{counter-reset:line;min-width:max-content;display:block}.code-block .line:before{counter-increment:line;content:counter(line);text-align:right;width:2.4em;color:var(--muted);opacity:.55;user-select:none;margin-right:1em;display:inline-block}.code-block[data-lines="1"] .line:before,.code-block[data-lines="0"] .line:before{display:none}.code-block.collapsed pre{max-height:360px;overflow:hidden}.code-block.collapsed:after{content:"";background:linear-gradient(transparent, var(--code-bg));pointer-events:none;height:90px;position:absolute;inset:auto 0 0}.code-expand{z-index:1;background:var(--primary);color:#fff;box-shadow:var(--shadow);border:0;border-radius:999px;padding:4px 14px;font-size:13px;position:absolute;bottom:10px;left:50%;translate:-50%}.astro-code,.astro-code span{color:var(--shiki-light);background-color:#0000!important}[data-theme=dark] .astro-code,[data-theme=dark] .astro-code span{color:var(--shiki-dark)}details.folding{border:1px solid var(--border);background:var(--card-2);border-radius:10px;margin:1em 0;overflow:hidden}details.folding>summary{cursor:pointer;align-items:center;gap:.5em;padding:.6em 1em;font-weight:600;list-style:none;display:flex}details.folding>summary:before{content:"▸";color:var(--fc,var(--primary));transition:transform .2s}details.folding[open]>summary:before{transform:rotate(90deg)}details.folding>summary::-webkit-details-marker{display:none}details.folding>:not(summary){padding:0 1.1em}details.folding[open]{padding-bottom:.4em}details.folding[data-color=green]{--fc:#2f9e6f;border-left:4px solid #2f9e6f}details.folding[data-color=cyan]{--fc:#16a3b8;border-left:4px solid #16a3b8}details.folding[data-color=red]{--fc:#e5484d;border-left:4px solid #e5484d}details.folding[data-color=blue]{--fc:var(--primary);border-left:4px solid var(--primary)}.tabs{border:1px solid var(--border);border-radius:12px;margin:1.2em 0;overflow:hidden}.tab-bar{background:var(--card-2);border-bottom:1px solid var(--border);display:flex;overflow-x:auto}.tab-bar button{white-space:nowrap;color:var(--text-2);background:0 0;border:0;border-bottom:2px solid #0000;padding:.6em 1.1em}.tab-bar button[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary);background:var(--card);font-weight:600}.tabs>section.tab{padding:1em 1.2em .2em}.tip{--tc:var(--primary);background:color-mix(in srgb, var(--tc) 10%, transparent);border-left:4px solid var(--tc);border-radius:10px;grid-template-columns:1.3em minmax(0,1fr);align-items:start;column-gap:.75em;margin:1em 0;padding:.7em 1.1em;display:grid}.tip:before{content:"i";box-sizing:border-box;width:1.625em;height:1.625em;font:700 .8em/1 var(--font-sans);color:#fff;background:var(--tc);border-radius:50%;grid-area:1/1/99;place-items:center;margin-top:.34em;display:grid}.tip>*{grid-column:2;margin-top:0}.tip[data-kind=success]{--tc:#2f9e6f}.tip[data-kind=success]:before{content:"✓"}.tip[data-kind=warning]{--tc:#e08a00}.tip[data-kind=warning]:before{content:"!"}.tip[data-kind=error]{--tc:#e5484d}.tip[data-kind=error]:before{content:"✕"}.tip>:last-child{margin-bottom:0}.encrypted{place-items:center;padding:40px 10px;display:grid}.unlock{text-align:center;width:min(380px,100%);color:var(--text-2);justify-items:center;gap:10px;display:grid}.unlock .icon{color:var(--primary)}.unlock .hint{margin:0}.unlock .row{gap:8px;width:100%;display:flex}.unlock input{border:1px solid var(--border);background:var(--card-2);min-width:0;color:var(--text);border-radius:999px;flex:1;padding:9px 14px;font-size:15px}.unlock input:focus{outline:2px solid var(--primary);border-color:#0000}.unlock .err{color:#e5484d;min-height:1.5em;margin:0;font-size:14px}.shake{animation:.4s shake}@keyframes shake{20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.region-gate{z-index:5;background:color-mix(in srgb, var(--card) 70%, transparent);backdrop-filter:blur(14px);border-radius:12px;place-items:start center;min-height:240px;padding-top:80px;display:grid;position:absolute;inset:-8px}.region-gate p{background:var(--card);box-shadow:var(--shadow);color:var(--text-2);border-radius:12px;margin:0;padding:14px 22px}.region-gate[data-state=blocked] p{color:#e5484d}.region-gate[data-state=ok]{display:none}.post-tags{flex-wrap:wrap;gap:8px;margin:28px 0 0;display:flex}.post-tags :is(a,span){background:var(--primary-soft);color:var(--primary);border-radius:999px;align-items:center;gap:4px;padding:3px 12px;font-size:13px;transition:all .2s;display:inline-flex}.post-tags a:hover{background:var(--primary);color:#fff}.copyright{background:var(--card-2);color:var(--text-2);border-radius:12px;margin:24px 0 0;padding:16px 20px;font-size:14px;position:relative;overflow:hidden}.copyright:after{content:"©";color:var(--primary);opacity:.07;pointer-events:none;font-size:140px;line-height:1;position:absolute;top:-30px;right:-8px}.copyright p{margin:2px 0}.copyright b{color:var(--text);font-size:15px}.copyright a{word-break:break-all}.cr-meta{flex-wrap:wrap;gap:4px 18px;display:flex;margin-top:6px!important}.reward{justify-items:center;gap:14px;margin:28px 0 0;display:grid}.reward-btn{color:#fff;background:linear-gradient(120deg,#ffb347,#ff7eb3);border:0;border-radius:999px;align-items:center;gap:10px;padding:9px 22px 9px 14px;font-weight:600;transition:transform .2s;display:inline-flex;box-shadow:0 6px 18px #ff7eb359}.coin{color:#b37400;background:radial-gradient(circle at 35% 30%,#fff6c2,#ffd23f 45%,#e6a800);border-radius:50%;place-items:center;width:26px;height:26px;font-size:14px;font-weight:800;display:grid;box-shadow:inset 0 -2px #00000026}.flipping .coin{animation:coinflip 1s var(--ease)}.reward-btn{transition:transform .3s var(--ease), box-shadow .3s}@keyframes coinflip{0%{transform:translateY(0)rotateY(0)}45%{transform:translateY(-46px)rotateY(900deg)}70%{transform:translateY(0)rotateY(1440deg)scale(1.1)}85%{transform:translateY(-8px)rotateY(1440deg)}to{transform:none}}.reward-qr{gap:20px;display:none}.reward.open .reward-qr{animation:pop .3s var(--ease);display:flex}.reward-qr a{color:var(--text-2);justify-items:center;gap:4px;font-size:13px;display:grid}.reward-qr img{width:140px;height:140px;box-shadow:var(--shadow);border-radius:10px}.post-nav{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.post-nav a{color:var(--text);gap:4px;padding:16px 20px;display:grid}.post-nav a:hover{box-shadow:var(--shadow-hover)}.post-nav .next{text-align:right}.post-nav small{color:var(--muted);align-items:center;gap:4px;display:inline-flex}.post-nav .next small{justify-content:flex-end}.post-nav b{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;display:-webkit-box;overflow:hidden}.comments{margin-top:20px;padding:24px 30px}.comments h2{align-items:center;gap:8px;margin:0 0 14px;font-size:18px;display:flex}.comments h2 .icon{color:var(--primary)}#tcomment .tk-input .el-textarea__inner{background:var(--card-2);color:var(--text);border-color:var(--border);border-radius:12px;min-height:120px!important}#tcomment .el-input__inner{background:var(--card-2);color:var(--text);border-color:var(--border);border-radius:10px}#tcomment .tk-comment{border-bottom:1px dashed var(--border);padding:14px 0}#tcomment .tk-avatar{border-radius:50%}#tcomment .el-button--primary{background:var(--primary);border-color:var(--primary);border-radius:999px}#tcomment .tk-content{font-size:14.5px}.read-mode :is(.site-header,.hero,.site-footer,.post-nav,.comments,.side-author,.side-related,.toc-rail,.rightside){display:none!important}.read-mode .page{padding-top:32px}.read-mode .layout.post-layout,[data-side=right] .read-mode .layout.post-layout{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"main"}[data-style=vivid] .read-mode .layout.post-layout{max-width:920px}.read-mode .post-head{display:block}.read-mode .post{box-shadow:none}.read-exit{z-index:60;border:1px solid var(--border);background:var(--card);color:var(--text-2);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-size:13px;display:none;position:fixed;top:16px;right:20px}.read-exit:hover{color:var(--primary);border-color:var(--primary)}.read-mode .read-exit{display:inline-flex}@media (width<=680px){.post{padding:22px 18px}.prose{font-size:15.5px}.comments{padding:18px}.post-nav{grid-template-columns:1fr}.code-block pre{font-size:12.5px}}.page-title{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.page-sub{color:var(--muted);margin:0 0 28px;display:none}.home-intro{border-bottom:1px solid var(--border);padding:10px 0 30px;display:none}.home-intro h1{font-family:var(--font-serif);margin:0;font-size:34px}.home-intro p{color:var(--muted);margin:6px 0 0}.page-card{padding:30px 36px}.center{text-align:center}.layout.single.wide{max-width:var(--container)}.timeline{position:relative}.tl-year{border-left:2px solid var(--border);margin-left:10px;padding-left:26px;position:relative}.tl-year+.tl-year{padding-top:6px}.tl-y{align-items:baseline;gap:10px;margin:0 0 12px;font-size:22px;display:flex;position:relative}.tl-y:before{content:"";background:var(--grad);width:14px;height:14px;box-shadow:0 0 0 4px var(--card);border-radius:50%;margin-top:-7px;position:absolute;top:50%;left:-35px}.tl-y small{color:var(--muted);font-size:13px;font-weight:400}.zodiac{font-size:22px}.tl-year ol{gap:12px;margin:0 0 22px;padding:0;list-style:none;display:grid}.tl-item{grid-template-columns:96px 1fr;align-items:center;gap:14px;display:grid;position:relative}.tl-item:before{content:"";background:var(--card);border:2px solid var(--primary);border-radius:50%;width:8px;height:8px;margin-top:-4px;transition:background .2s;position:absolute;top:50%;left:-31px}.tl-item:hover:before{background:var(--primary)}.tl-cover{border-radius:8px;width:96px;height:64px;display:block;overflow:hidden}.tl-cover img{object-fit:cover;width:100%;height:100%;transition:transform .4s var(--ease)}.tl-item time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px;display:block}.tl-item a:not(.tl-cover){color:var(--text);align-items:baseline;gap:4px;display:inline-flex}.tl-item a:not(.tl-cover):hover{color:var(--primary)}.tag-cloud.big{justify-content:center;gap:10px;padding:8px 0}.tag-cloud.big a{font-size:calc(14px + var(--w) * 10px);padding:4px 14px}.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}@media (width<=560px){.cat-grid{grid-template-columns:1fr}}.cat-card{background:var(--card-2);min-width:0;color:var(--text);border:1px solid var(--border);transition:.3s var(--ease);border-radius:14px;grid-template-columns:minmax(0,1fr);gap:2px;padding:20px;display:grid}.cat-card:hover{box-shadow:var(--shadow-hover);color:var(--text);border-color:var(--primary)}.cat-card .icon{color:var(--primary)}.cat-card b{margin-top:6px;font-size:18px}.cat-card>span{color:var(--muted);font-size:13px}.cat-card ul{color:var(--text-2);min-width:0;margin:8px 0 0;padding-left:1.2em;font-size:13px;list-style:outside}.cat-card li::marker{color:var(--primary)}.cat-card li{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stats-tiles{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-bottom:26px;display:grid}.tile{background:var(--card-2);border:1px solid var(--border);border-radius:14px;gap:2px;padding:18px;display:grid}.tile b{font-variant-numeric:tabular-nums;color:var(--text);font-size:30px;line-height:1.2}.tile b small{margin-left:2px;font-size:15px}.tile span{color:var(--muted);font-size:13px}.chart{margin:0 0 30px}.chart h2{margin:0 0 4px;font-size:18px}.chart-sub{color:var(--muted);margin:0 0 12px;font-size:13px}.chart-row{grid-template-columns:1fr 1fr;gap:30px;display:grid}.heatmap{color:var(--muted);grid-template-columns:40px repeat(12,minmax(0,1fr));gap:5px;font-size:12px;display:grid}.hm-m{text-align:center;white-space:nowrap}@media (width<=560px){.hm-m .u{display:none}.heatmap{grid-template-columns:34px repeat(12,minmax(0,1fr));gap:3px}}.hm-y{font-variant-numeric:tabular-nums;align-self:center}.hm-c{aspect-ratio:1;background:var(--card-2);border:1px solid var(--border);border-radius:4px}.hm-c[data-l="1"]{background:color-mix(in srgb, var(--primary) 30%, var(--card));border-color:#0000}.hm-c[data-l="2"]{background:color-mix(in srgb, var(--primary) 52%, var(--card));border-color:#0000}.hm-c[data-l="3"]{background:color-mix(in srgb, var(--primary) 76%, var(--card));border-color:#0000}.hm-c[data-l="4"]{background:var(--primary);border-color:#0000}.heatmap .hm-c:hover{outline:2px solid var(--text);outline-offset:1px}.hm-legend{color:var(--muted);align-items:center;gap:4px;margin-top:10px;font-size:12px;display:flex}.hm-legend .hm-c{width:14px}.bars-v{border-bottom:1px solid var(--border);align-items:flex-end;gap:clamp(8px,3vw,28px);height:220px;padding-top:24px;display:flex}.bars-v .col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;max-width:80px;height:100%;display:flex;position:relative}.bars-v .bar{background:var(--primary);border-radius:4px 4px 0 0;width:100%;min-height:4px;transition:opacity .2s}.bars-v .col:hover .bar{opacity:.8}.bars-v .val{color:var(--text);font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:13px;font-weight:600}.bars-v-labels{gap:clamp(8px,3vw,28px);margin-top:6px;display:flex}.bars-v-labels span{text-align:center;max-width:80px;color:var(--muted);font-variant-numeric:tabular-nums;flex:1;font-size:12px}.bars-h{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.bars-h li{grid-template-columns:7em 1fr 3em;align-items:center;gap:10px;font-size:14px;display:grid}.bars-h a{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bars-h a:hover{color:var(--primary)}.bars-h .track{background:var(--card-2);border-radius:4px;height:12px;overflow:hidden}.bars-h .fill{background:var(--primary);border-radius:0 4px 4px 0;height:100%;display:block}.bars-h li:hover .fill{opacity:.8}.bars-h b{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.chart-table summary{cursor:pointer;color:var(--text-2);font-size:14px}.chart-table table{border-collapse:collapse;width:100%;font-size:13px}.chart-table :is(th,td){text-align:center;border-bottom:1px solid var(--border);padding:4px 8px}.about-hero{align-items:center;gap:26px;margin-bottom:24px;display:flex}.about-avatar{object-fit:cover;width:140px;height:140px;box-shadow:var(--shadow-hover);border-radius:28px}.about-hero h2{margin:0 0 6px;font-size:26px}.about-hero p{color:var(--text-2);margin:0 0 8px}.about-hero .social{justify-content:flex-start;margin:0}.about h3{margin:26px 0 10px}.skill-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.skill-list li{background:var(--card-2);border-radius:12px;padding:12px 16px;display:grid}.skill-list span{color:var(--text-2);font-size:14px}.flink-group h2{align-items:baseline;gap:10px;margin:0 0 14px;font-size:20px;display:flex}.flink-group h2 small{color:var(--muted);font-size:13px;font-weight:400}.flink-group+.flink-group{margin-top:28px}.flinks{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.flink{--fc:var(--primary);background:var(--card-2);color:var(--text);border:1px solid var(--border);transition:.3s var(--ease);border-radius:14px;align-items:center;gap:12px;padding:14px;display:flex}.flink:hover{background:var(--fc);color:#fff;box-shadow:var(--shadow-hover);border-color:#0000}.flink-fallback{background:var(--fc);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:54px;height:54px;font-size:22px;font-weight:700;display:grid}.flink img{object-fit:cover;width:54px;height:54px;transition:transform .5s var(--ease);background:var(--card);border-radius:50%;flex-shrink:0}.flink div{min-width:0;display:grid}.flink b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.flink span{opacity:.75;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.flink-apply{margin-top:34px}.page-card .comments{box-shadow:none;border:0;margin-top:30px;padding:0}.envelope{place-items:center;padding:10px 0 24px;display:grid}.letter{background:repeating-linear-gradient(transparent 0 31px, color-mix(in srgb, var(--primary) 18%, transparent) 31px 32px), var(--card-2);width:min(520px,100%);box-shadow:var(--shadow);border-radius:12px;padding:26px 30px;font-size:16px;line-height:32px;position:relative}.letter p{margin:0}.letter .sign{text-align:right;color:var(--muted)}.letter:before{content:"";background:repeating-linear-gradient(135deg, #e5484d 0 12px, transparent 12px 24px, var(--primary) 24px 36px, transparent 36px 48px);border-radius:12px 12px 0 0;height:6px;position:absolute;inset:0 0 auto}.bangumi-tabs{border:0;margin-top:0}.bangumi-tabs>section.tab{padding:16px 0 0}.bangumis{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;display:grid}.bangumi{transition:transform .3s var(--ease), box-shadow .3s;background:var(--card-2);color:var(--text);border:1px solid var(--border);transition:.3s var(--ease);border-radius:14px;grid-template-columns:96px 1fr;gap:14px;padding:12px;display:grid}.bangumi:hover{box-shadow:var(--shadow-hover);color:var(--text)}.bangumi img{object-fit:cover;border-radius:8px;width:96px;height:128px}.bangumi div{align-content:start;gap:2px;min-width:0;display:grid}.bangumi small{color:var(--muted)}.bangumi .score{color:#f5a524;font-size:13px;font-weight:600}.bangumi p{color:var(--text-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:4px 0 0;font-size:13px;display:-webkit-box;overflow:hidden}.not-found{place-items:center;min-height:60vh;display:grid}.nf-card{grid-template-columns:1fr 1fr;align-items:center;max-width:900px;display:grid;overflow:hidden}.nf-img{object-fit:contain;align-self:center;width:100%;height:auto}.nf-card>div{padding:30px}.nf-card h1{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:64px}.nf-actions{flex-wrap:wrap;gap:10px;margin:14px 0 20px;display:flex}.btn.ghost{background:var(--primary-soft);color:var(--primary)}.nf-card ul{margin:6px 0 0;padding-left:1.2em}@media (width<=760px){.page-card{padding:22px 18px}.chart-row{grid-template-columns:1fr}.about-hero{text-align:center;flex-direction:column}.about-hero .social{justify-content:center}.nf-card,.tl-item{grid-template-columns:1fr}.tl-cover{display:none}}.heatmap,.bars-v,.bars-v-labels{max-width:720px}.bars-v .col,.bars-v-labels span{max-width:none}:root[data-style=minimal]{--primary:#b4532a;--primary-2:#8a3a1a;--grad:linear-gradient(120deg, #b4532a, #c9773f);--bg:#faf8f3;--bg-deco:none;--card:#faf8f3;--card-2:#f2eee5;--text:#2a2723;--text-2:#57514a;--muted:#948b80;--border:#e6dfd2;--shadow:none;--shadow-hover:0 8px 30px #3c281414;--radius:0px;--container:760px;--code-bg:#f3efe6}:root[data-style=minimal][data-theme=dark]{--primary:#e0915f;--primary-2:#f0b088;--bg:#161513;--card:#161513;--card-2:#201e1b;--text:#e3ddd3;--text-2:#b9b1a5;--muted:#847c71;--border:#2e2b27;--code-bg:#1e1c19}[data-style=minimal] body{font-size:16.5px}[data-style=minimal] .card{box-shadow:none;background:0 0;border:0}[data-style=minimal] .hero,[data-style=minimal] .aside,[data-style=minimal] .top-carousel,[data-style=minimal] .rightside .rs-toc{display:none!important}[data-style=minimal] .page,[data-style=minimal] .has-hero .page{padding-top:calc(var(--header-h) + 48px)}[data-style=minimal] .layout{grid-template-columns:minmax(0,1fr)}[data-style=minimal] .layout>.main{grid-column:1}[data-style=minimal] .site-header{background:color-mix(in srgb, var(--bg) 88%, transparent);border-bottom-color:var(--border)}[data-style=minimal] .site-header.transparent:not(:is(.scrolled *)){background:color-mix(in srgb, var(--bg) 88%, transparent);color:var(--text);border-bottom-color:var(--border);backdrop-filter:blur(10px)}[data-style=minimal] .site-header.transparent:not(:is(.scrolled *)) .brand{color:var(--text);text-shadow:none}[data-style=minimal] .brand{font-family:var(--font-serif);font-weight:700}[data-style=minimal] .menu-link .icon{display:none}[data-style=minimal] .nav.container{max-width:1000px}[data-style=minimal] .post-list{gap:0}[data-style=minimal] .post-card,[data-style=minimal] .post-card.flip{border-bottom:1px solid var(--border);border-radius:0;height:auto;min-height:0;padding:26px 0;display:block}[data-style=minimal] .post-card:hover{box-shadow:none;transform:none}[data-style=minimal] .post-card .cover{display:none}[data-style=minimal] .post-card .info{padding:0}[data-style=minimal] .post-card .title{font-family:var(--font-serif);font-size:22px;font-weight:700}[data-style=minimal] .post-card .excerpt{-webkit-line-clamp:2}[data-style=minimal] .post-card .meta{order:-1}[data-style=minimal] .pagination a,[data-style=minimal] .pagination span{box-shadow:none;border:1px solid var(--border);background:0 0;border-radius:4px}[data-style=minimal] .pagination .current{background:var(--text);color:var(--bg);border-color:var(--text)}[data-style=minimal] .badge{color:var(--primary);background:0 0;border:1px solid}[data-style=minimal] .post{padding:0}[data-style=minimal] .post-head{text-align:center;margin-bottom:40px;display:block}[data-style=minimal] .post-head h1{font-family:var(--font-serif);letter-spacing:.02em;font-size:34px}[data-style=minimal] .post-head .post-meta{justify-content:center;font-size:14px}[data-style=minimal] .prose{font-family:var(--font-serif);text-align:start;hanging-punctuation:allow-end;font-size:18px;line-height:2}[data-style=minimal] .prose :is(h1,h2,h3,h4,h5,h6){font-family:var(--font-sans);padding-left:0}[data-style=minimal] .prose :is(h1,h2,h3,h4,h5,h6):before{display:none}[data-style=minimal] .prose h2{border-bottom:0;font-size:1.35em}[data-style=minimal] .prose h2:after{content:"";background:var(--primary);width:2em;height:2px;margin-top:.4em;display:block}[data-style=minimal] .prose a{border-bottom-style:dotted}[data-style=minimal] .prose blockquote{background:0 0;border-left-width:2px;font-style:normal}[data-style=minimal] .prose :is(ul,ol,table,.code-block,.tabs,details.folding){text-align:left}[data-style=minimal] .prose img{border-radius:2px}[data-style=minimal] .code-block,[data-style=minimal] .tabs,[data-style=minimal] details.folding,[data-style=minimal] .copyright,[data-style=minimal] .tile{border-radius:4px}[data-style=minimal] .code-block figcaption:before{display:none}[data-style=minimal] .reward-btn{color:var(--primary);box-shadow:none;background:0 0;border:1px solid}[data-style=minimal] .post-nav a{border-top:1px solid var(--border);border-radius:0;padding:18px 0}[data-style=minimal] .post-nav a:hover{box-shadow:none;transform:none}[data-style=minimal] .comments{border-top:1px solid var(--border);border-radius:0;padding:30px 0 0}[data-style=minimal] .page-card{padding:0}[data-style=minimal] .page-title{clip:auto;width:auto;height:auto;font-family:var(--font-serif);margin:0 0 6px;font-size:32px;position:static}[data-style=minimal] .page-sub,[data-style=minimal] .home-intro{display:block}[data-style=minimal] .tl-cover{display:none}[data-style=minimal] .tl-item{grid-template-columns:1fr}[data-style=minimal] .tl-y:before{background:var(--primary)}[data-style=minimal] .flink,[data-style=minimal] .cat-card,[data-style=minimal] .bangumi,[data-style=minimal] .skill-list li{border-radius:4px}[data-style=minimal] .site-footer{background:0 0}[data-style=minimal] .rs-btn,[data-style=minimal][data-theme=dark] .rs-btn{background:var(--card-2);color:var(--text);border:1px solid var(--border);box-shadow:none}[data-style=minimal] .layout.post-layout,[data-style=minimal][data-side=right] .layout.post-layout{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"main"}[data-style=minimal] .layout.post-layout>:is(.side-author,.side-related,.toc-rail){display:none}[data-style=minimal][data-side=right] .layout:not(.single):not(.post-layout){grid-template-columns:minmax(0,1fr)}[data-style=minimal][data-side=right] .layout:not(.single):not(.post-layout)>.main{grid-column:1}[data-style=minimal] .post-list{grid-template-columns:1fr}[data-style=minimal] .post-card,[data-style=minimal] .post-card.flip{grid-template-rows:none}@media (width>=1700px){:root[data-style=minimal]{--container:820px}}:root[data-style=minimal][data-wide="1"]{--container:1080px}@media (width>=1700px){:root[data-style=minimal][data-wide="1"]{--container:1240px}}html:not(.no-hover) .btn:hover{transform:translateY(-1px)}html:not(.no-hover) .post-card:hover{transform:translateY(-4px)}html:not(.no-hover) .post-card:hover .cover img{transform:scale(1.06)}html:not(.no-hover) .social a:hover{transform:translateY(-3px)}html:not(.no-hover) .rs-btn:hover{transform:translateY(-2px)}html:not(.no-hover) .cat-card:hover,html:not(.no-hover) .flink:hover,html:not(.no-hover) .bangumi:hover,html:not(.no-hover) .post-nav a:hover{transform:translateY(-4px)}html:not(.no-hover) .tl-item:hover .tl-cover img{transform:scale(1.1)}html:not(.no-hover) .flink:hover img,html:not(.no-hover) .avatar-ring:hover .avatar{transform:rotate(360deg)}html:not(.no-hover) .reward-btn:hover{transform:translateY(-2px)}html:not(.no-hover) .theme-toggle:hover .icon{transform:rotate(40deg)}html:not(.no-hover) .top-carousel .slide:hover img{transform:scale(1.03)}.post-card,.cat-card,.flink,.bangumi,.post-nav a,.tag-cloud a,.post-tags a,.social a,.tl-item a{transition:transform .35s var(--ease), box-shadow .3s ease, background-color .25s ease, border-color .25s ease, color .2s ease}.no-hover .post-card:hover,.no-hover .cat-card:hover,.no-hover .flink:hover,.no-hover .bangumi:hover{box-shadow:var(--shadow-hover)}.reveal{opacity:0;transform:translateY(24px)}.reveal.in{opacity:1;transition:opacity .6s var(--ease), transform .6s var(--ease);transform:none}.no-reveal .reveal{opacity:1;transform:none}.fx-heart{z-index:300;background:var(--c);pointer-events:none;will-change:transform, opacity;width:10px;height:10px;animation:1.3s linear forwards fx-heart;position:fixed;transform:rotate(45deg)}.fx-heart:before,.fx-heart:after{content:"";background:inherit;border-radius:50%;width:10px;height:10px;position:absolute}.fx-heart:before{left:-5px}.fx-heart:after{top:-5px}@keyframes fx-heart{to{opacity:0;transform:translateY(-78px)rotate(45deg)scale(1.3)}}.fx-canvas{z-index:300;pointer-events:none;position:fixed;inset:0}html:not(.no-cursor) body{cursor:url(/cur/Normal.svg),auto}html:not(.no-cursor) :is(a,button,summary,label,[role=tab],.reward-btn){cursor:url(/cur/Link.svg),pointer}html:not(.no-cursor) :is(input,textarea,[contenteditable]){cursor:url(/cur/HandWriting.svg),text}.avatar-ring:after{content:"";box-shadow:0 0 6px 4px var(--ring);opacity:.35;pointer-events:none;border-radius:50%;position:absolute;inset:-4px}html:not(.no-decor) .avatar-ring.anim-on:after{animation:4s ease-in-out infinite breathe}@keyframes breathe{50%{opacity:1;transform:scale(1.03)}}.author-card:before{content:"";z-index:0;opacity:.75;pointer-events:none;background:linear-gradient(100deg,#e8d8b9,#eccec5,#a3e9eb,#bdbdf0,#eec1ea,#e8d8b9,#eccec5);width:300%;position:absolute;top:0;bottom:0;left:0}[data-theme=dark] .author-card:before{opacity:0}html:not(.no-decor) .author-card.anim-on:before{animation:10s ease-in-out infinite alternate flow}@keyframes flow{to{transform:translate(-66.66%)}}html:not(.no-decor)[data-style=vivid] .prose :is(h1,h2,h3,h4,h5,h6){padding-left:1.35em}html:not(.no-decor)[data-style=vivid] .prose :is(h1,h2,h3,h4,h5,h6):before{content:"";background:var(--fan,#fb7061);width:1em;height:1em;-webkit-mask:var(--fan-svg) center / contain no-repeat;mask:var(--fan-svg) center / contain no-repeat;position:absolute;top:.32em;left:0}html:not(.no-decor)[data-style=vivid] .prose :is(h1,h2,h3,h4,h5,h6).anim-on:before{animation:4s linear infinite spin}.prose h1{--fan:#ef50a8}.prose h2{--fan:#fb7061}.prose h3{--fan:#ffbf00}.prose h4{--fan:#a9e000}.prose h5{--fan:#57c850}.prose h6{--fan:#5ec1e0}:root{--fan-svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23000'%3E%3Cpath d='M12 11C10.6 7.2 11.2 3 14.6 2.1c2.6-.7 3.8 2.4 1.7 4.4-1.3 1.3-2.8 2.6-4.3 4.5z'/%3E%3Cpath d='M13 12c3.8-1.4 8-.8 8.9 2.6.7 2.6-2.4 3.8-4.4 1.7-1.3-1.3-2.6-2.8-4.5-4.3z'/%3E%3Cpath d='M12 13c1.4 3.8.8 8-2.6 8.9-2.6.7-3.8-2.4-1.7-4.4 1.3-1.3 2.8-2.6 4.3-4.5z'/%3E%3Cpath d='M11 12C7.2 13.4 3 12.8 2.1 9.4c-.7-2.6 2.4-3.8 4.4-1.7 1.3 1.3 2.6 2.8 4.5 4.3z'/%3E%3Ccircle cx='12' cy='12' r='1.6'/%3E%3C/g%3E%3C/svg%3E")}@keyframes spin{to{transform:rotate(-360deg)}}html:not(.no-decor) .heartbeat.anim-on{animation:1.3s ease-in-out infinite heartbeat}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}45%{transform:scale(1.15)}}html:not(.no-decor) .hero-down.anim-on{animation:1.8s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(8px)}}.no-pageTransition ::view-transition-group(*),.no-pageTransition ::view-transition-old(*),.no-pageTransition ::view-transition-new(*){animation:none!important}.theme-vt::view-transition-old(root),.theme-vt::view-transition-new(root){mix-blend-mode:normal;animation:none}[data-motion=reduce] *,[data-motion=reduce] :before,[data-motion=reduce] :after{scroll-behavior:auto!important;animation:none!important}[data-motion=reduce] *{transition-property:color,background-color,border-color,box-shadow,opacity!important;transition-duration:.15s!important}[data-motion=reduce] .carousel.vertical .slides{transition:none!important}@media (hover:none){html:not(.no-hover) .post-card:hover{transform:none}}:root{--font-sans:-apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Segoe UI", Roboto, sans-serif;--font-serif:"Noto Serif SC", "Source Han Serif SC", "Songti SC", "STSong", Georgia, serif;--font-mono:"JetBrains Mono", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--primary:#3d9cf0;--primary-2:#ff7eb3;--primary-soft:color-mix(in srgb, var(--primary) 12%, transparent);--grad:linear-gradient(120deg, #4facfe 0%, #8f7cff 50%, #ff7eb3 100%);--bg:#f3f6fb;--bg-deco:radial-gradient(1200px 600px at 100% -10%, #e4f0ff 0%, transparent 60%), radial-gradient(900px 500px at -10% 20%, #ffeaf3 0%, transparent 55%);--card:#fff;--card-2:#f6f8fb;--text:#2c3440;--text-2:#5d6876;--muted:#8a96a6;--border:#e6ebf2;--shadow:0 1px 2px #1e325a0a, 0 6px 24px #1e325a0f;--shadow-hover:0 4px 10px #1e325a0f, 0 18px 44px #1e325a1f;--radius:14px;--radius-sm:8px;--header-h:60px;--container:1240px;--aside-w:300px;--ease:cubic-bezier(.22, .8, .24, 1);--code-bg:#f7f8fa;--mark:#fff3a8;color-scheme:light}[data-theme=dark]{--primary:#5aa9f2;--primary-2:#ff8fbe;--bg:#0f1216;--bg-deco:radial-gradient(1200px 600px at 100% -10%, #142338 0%, transparent 60%), radial-gradient(900px 500px at -10% 20%, #2a1626 0%, transparent 55%);--card:#171b21;--card-2:#1d222a;--text:#d5dbe3;--text-2:#a3adba;--muted:#76818f;--border:#262c35;--shadow:0 1px 2px #0000004d, 0 6px 24px #00000040;--shadow-hover:0 4px 10px #00000059, 0 18px 44px #0006;--code-bg:#1b1f26;--mark:#5c4d14;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}html:not([data-motion=reduce]){scroll-behavior:smooth}body{min-height:100vh;font:15.5px/1.75 var(--font-sans);color:var(--text);background:var(--bg-deco), var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-attachment:fixed;flex-direction:column;margin:0;transition:background-color .3s,color .3s;display:flex}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-2)}img,svg,video,canvas{vertical-align:middle;max-width:100%}img{height:auto}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}::selection{background:color-mix(in srgb, var(--primary) 30%, transparent)}.icon{flex-shrink:0}.muted{color:var(--muted)}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 20px}.skip-link{z-index:100;background:var(--card);border-radius:6px;padding:6px 12px;position:absolute;top:8px;left:-999px}.skip-link:focus{left:8px}.page{padding-top:calc(var(--header-h) + 24px);flex:1}.has-hero .page{padding-top:28px}[hidden]{display:none!important}html{scrollbar-color:color-mix(in srgb, var(--primary) 45%, transparent) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--primary) 45%, transparent);border-radius:8px}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);transition:box-shadow .3s var(--ease), transform .3s var(--ease), background-color .3s}.btn{background:var(--primary);color:#fff;border:0;border-radius:999px;align-items:center;gap:6px;padding:8px 18px;font-weight:500;transition:filter .2s,transform .2s;display:inline-flex}.btn:hover{color:#fff;filter:brightness(1.08)}.icon-btn{width:38px;height:38px;color:inherit;background:0 0;border:0;border-radius:10px;place-items:center;transition:background .2s,color .2s;display:inline-grid}.icon-btn:hover{background:color-mix(in srgb, currentColor 12%, transparent)}.link-btn{color:var(--primary);background:0 0;border:0;padding:0}.badge{background:var(--grad);color:#fff;border-radius:999px;padding:0 8px;font-size:12px;line-height:20px;display:inline-block}.layout{grid-template-columns:var(--aside-w) minmax(0, 1fr);align-items:start;gap:24px;display:grid}.layout>.main{grid-area:1/2;min-width:0}.layout>.aside{grid-area:1/1}.layout.single{grid-template-columns:minmax(0,1fr);max-width:980px}.layout.single>.main{grid-column:1}.site-header{z-index:50;height:var(--header-h);background:color-mix(in srgb, var(--card) 88%, transparent);-webkit-backdrop-filter:saturate(160%)blur(8px);border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);transition:transform .35s var(--ease), background-color .3s, border-color .3s;position:fixed;inset:0 0 auto}.nav-hidden .site-header{transform:translateY(-100%)}.site-header.transparent:not(:is(.scrolled *)){backdrop-filter:none;color:#fff;background:0 0;border-color:#0000}.site-header.transparent:not(:is(.scrolled *)) .brand{color:#fff;text-shadow:0 2px 8px #0000004d}.nav{align-items:center;gap:12px;height:100%;display:flex}.brand{color:var(--text);letter-spacing:.02em;white-space:nowrap;margin-right:auto;font-size:19px;font-weight:700}.brand:hover{color:var(--primary)}.menu{gap:2px;margin:0;padding:0;list-style:none;display:flex}.menu-item{position:relative}.menu-link{color:inherit;white-space:nowrap;background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;padding:7px 12px;font-size:15px;transition:background .2s;display:flex}.menu-link:hover,.menu-item.active .menu-link{background:color-mix(in srgb, currentColor 10%, transparent);color:inherit}.menu-item.active .menu-link{font-weight:600}.caret{opacity:.7;transition:transform .2s}.submenu{background:var(--card);min-width:180px;color:var(--text);box-shadow:var(--shadow-hover);border:1px solid var(--border);opacity:0;visibility:hidden;transition:.2s var(--ease);border-radius:12px;max-height:70vh;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:50%;overflow:auto;transform:translate(-50%,-6px)}.submenu:before{content:"";height:10px;position:absolute;inset:-10px 0 auto}.submenu a{color:var(--text);white-space:nowrap;border-radius:8px;padding:7px 12px;font-size:14px;display:block}.submenu a:hover{background:var(--primary-soft);color:var(--primary)}@media (hover:hover){.has-sub:hover .submenu,.has-sub:focus-within .submenu{opacity:1;visibility:visible;transform:translate(-50%)}}.has-sub.open .submenu{opacity:1;visibility:visible;transform:translate(-50%)}@media (hover:hover){.has-sub:hover .caret{transform:rotate(180deg)}}.has-sub.open .caret{transform:rotate(180deg)}.nav-actions{gap:2px;display:flex}.menu-toggle{display:none}.theme-toggle .icon{transition:transform .5s var(--ease)}.theme-toggle .i-moon,[data-theme=dark] .theme-toggle .i-sun{display:none}[data-theme=dark] .theme-toggle .i-moon{display:block}.hero{color:#fff;background:#1d2633;place-items:center;height:100svh;min-height:480px;display:grid;position:relative;overflow:hidden}.hero.small{height:380px;min-height:0}.hero-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0006,#00000040 45%,#00000080);position:absolute;inset:0}[data-theme=dark] .hero-bg{filter:brightness(.72)}.hero.small:after{background:radial-gradient(#00000080,#0000004d 70%),linear-gradient(#00000059,#0000008c)}.fx-bubbles{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-inner{z-index:3;text-align:center;max-width:980px;padding:0 20px;position:relative}.hero-title{text-wrap:balance;letter-spacing:.04em;text-shadow:0 4px 24px #00000059;margin:0;font-size:clamp(30px,5.2vw,52px);font-weight:700;line-height:1.3}.hero-sub{opacity:.95;text-shadow:0 2px 10px #0006;min-height:1.6em;margin:14px 0 0;font-size:clamp(16px,2.2vw,21px)}[data-typing].typing .ch{opacity:0}[data-typing].typing .ch.on{opacity:1}[data-typing] .ch.caret{animation:1s step-end infinite caret;box-shadow:2px 0}@keyframes caret{50%{box-shadow:2px 0 #0000}}@keyframes blink{50%{opacity:0}}.hero-down{z-index:3;color:#fff;margin-left:-14px;position:absolute;bottom:24px;left:50%}.hero-down:hover{color:#fff}.post-hero-info{padding-top:var(--header-h);flex-direction:column;align-items:center;gap:10px;display:flex}.post-hero-info .hero-title{font-size:clamp(24px,3.6vw,38px)}.hero-cat{backdrop-filter:blur(6px);color:#fff;background:#ffffff2e;border:1px solid #ffffff40;border-radius:999px;padding:2px 14px;font-size:13px}.hero-cat:hover{color:#fff;background:#ffffff47}.post-meta{flex-wrap:wrap;justify-content:center;gap:4px 16px;font-size:13.5px;display:flex}.post-meta>*{align-items:center;gap:5px;display:inline-flex}.hero .post-meta{opacity:.92}.post-list{gap:20px;display:grid}.post-card{grid-template-columns:42% 1fr;height:230px;display:grid;overflow:hidden}.post-card:hover{box-shadow:var(--shadow-hover)}.post-card.flip{grid-template-columns:1fr 42%}.post-card.flip .cover{order:2}.post-card .cover{background:var(--card-2);display:block;position:relative;overflow:hidden}.post-card .cover img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease);position:absolute;inset:0}.post-card .info{flex-direction:column;justify-content:center;gap:8px;min-width:0;padding:22px 28px;display:flex}.post-card .title{margin:0;font-size:20px;line-height:1.45}.post-card .title a{color:var(--text);background:linear-gradient(var(--primary), var(--primary)) 0 100% / 0 2px no-repeat;transition:background-size .35s var(--ease), color .2s;align-items:baseline;gap:6px;display:inline-flex}.post-card .title a:hover{color:var(--primary);background-size:100% 2px}.post-card .meta{color:var(--muted);flex-wrap:wrap;gap:4px 14px;font-size:13px;display:flex}.post-card .meta>*{color:inherit;align-items:center;gap:4px;display:inline-flex}.post-card .meta .badge{color:#fff}.post-card .meta a:hover{color:var(--primary)}.post-card .excerpt{color:var(--text-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:14.5px;display:-webkit-box;overflow:hidden}.top-carousel{margin-bottom:20px;position:relative;overflow:hidden}.carousel .viewport{border-radius:inherit;overflow:hidden}.carousel:not(.vertical) .viewport{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;overflow-x:auto}.carousel:not(.vertical) .viewport::-webkit-scrollbar{display:none}.carousel .slides{display:flex}.carousel.vertical .slides{transition:transform .6s var(--ease)}.carousel:not(.vertical) .slide{scroll-snap-align:start;scroll-snap-stop:always}.carousel .slide{flex:0 0 100%;display:block;position:relative}.top-carousel .slide{color:#fff;height:280px;overflow:hidden}.top-carousel .slide img{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease)}.top-carousel .slide:after{content:"";background:linear-gradient(#0000 40%,#000000a6);position:absolute;inset:0}.slide-info{z-index:1;justify-items:start;gap:4px;padding:22px 26px;display:grid;position:absolute;bottom:0;left:0;right:0}.slide-info b{font-size:22px}.slide-info small{opacity:.85;-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.dots{z-index:2;gap:6px;display:flex;position:absolute;bottom:16px;right:18px}.dots button{background:#ffffff8c;border:0;border-radius:99px;width:8px;height:8px;padding:0;transition:width .3s}.dots button[aria-current=true]{background:#fff;width:22px}.carousel .prev,.carousel .next{z-index:2;backdrop-filter:blur(4px);color:#fff;opacity:0;background:#00000059;border:0;border-radius:50%;place-items:center;width:34px;height:34px;margin-top:-17px;transition:opacity .2s,background .2s;display:grid;position:absolute;top:50%}.carousel .prev:hover,.carousel .next:hover{background:#0000008c}.carousel:hover .prev,.carousel:hover .next{opacity:1}.carousel .prev{left:10px}.carousel .next{right:10px}@media (hover:none){.carousel .prev,.carousel .next{display:none}}.pagination{flex-wrap:wrap;justify-content:center;gap:8px;margin:28px 0 8px;display:flex}.pagination a,.pagination span{background:var(--card);min-width:38px;height:38px;box-shadow:var(--shadow);color:var(--text);border-radius:10px;place-items:center;padding:0 10px;display:grid}.pagination a:hover{background:var(--primary);color:#fff}.pagination .current{background:var(--grad);color:#fff;font-weight:600}.pagination .gap{box-shadow:none;background:0 0}.aside{align-content:start;gap:20px;display:grid}.aside .sticky{gap:20px;display:grid}.aside .card,.toc-card{padding:18px 20px}.aside h3,.toc-card h3{align-items:center;gap:8px;margin:0 0 12px;font-size:15.5px;display:flex}.aside h3 .icon,.toc-card h3 .icon{color:var(--primary)}.author-card{text-align:center;isolation:isolate;position:relative;overflow:hidden;padding-top:26px!important}.author-card>*{z-index:1;position:relative}.avatar-ring{--ring:#9fd8f5;border-radius:50%;width:112px;height:112px;margin:0 auto 10px;display:block;position:relative}[data-theme=dark] .avatar-ring{--ring:#39c5bb}.avatar{object-fit:cover;border:3px solid var(--card);width:112px;height:112px;transition:transform .8s var(--ease);border-radius:50%;display:block}.status{z-index:2;background:var(--card);cursor:default;white-space:nowrap;border-radius:99px;justify-content:center;align-items:center;gap:4px;min-width:28px;height:28px;padding:0 6px;font-size:14px;line-height:1;display:inline-flex;position:absolute;bottom:4px;right:2px;box-shadow:0 2px 8px #00000026}.status-text{max-width:0;color:var(--text-2);transition:max-width .35s var(--ease);font-size:12px;overflow:hidden}.status:hover .status-text,.status:focus .status-text{max-width:6em}.author-name{letter-spacing:.02em;margin:0;font-size:21px}.author-desc{color:var(--text-2);margin:2px 0 14px;font-size:14px}.author-stats{grid-template-columns:repeat(3,1fr);margin-bottom:16px;display:grid}.author-stats a{color:var(--text);gap:2px;display:grid}.author-stats span{color:var(--text-2);font-size:13px}.author-stats b{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.author-stats a:hover b{color:var(--primary)}.follow{background:#39c5bb;justify-content:center;width:100%}.follow:hover{filter:brightness(1.06)}.social{justify-content:center;gap:10px;margin-top:12px;display:flex}.social a{width:36px;height:36px;color:var(--brand,var(--text-2));background:color-mix(in srgb, var(--brand,var(--text-2)) 12%, transparent);transition:transform .3s var(--ease), background .2s;border-radius:50%;place-items:center;display:grid}.social a:hover{background:color-mix(in srgb, var(--brand,var(--text-2)) 22%, transparent);color:var(--brand,var(--primary))}.social a[data-brand=github]{--brand:#6e5494}.social a[data-brand=mail]{--brand:#ea4335}.social a[data-brand=rss]{--brand:#f78422}[data-theme=dark] .social a[data-brand=github]{--brand:#b9a3e3}.notice-card p{color:var(--text-2);margin:0 0 6px;font-size:14px}.list-card ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.list-card a{color:var(--text);grid-template-columns:minmax(0,1fr);column-gap:10px;font-size:14px;line-height:1.5;display:grid}.list-card a:has(img){grid-template-columns:56px minmax(0,1fr)}.list-card a span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.list-card a:has(img) :is(span,time){grid-column:2}.list-card a time{color:var(--muted);font-size:12px}.list-card a img{object-fit:cover;border-radius:8px;grid-row:span 2;width:56px;height:56px}.list-card a:hover span{color:var(--primary)}.tag-cloud{flex-wrap:wrap;gap:6px;display:flex}.tag-cloud a{background:color-mix(in srgb, var(--primary) calc(8% + var(--w,0) * 18%), transparent);color:var(--text-2);font-size:calc(12.5px + var(--w,0) * 3px);border-radius:999px;padding:2px 10px;transition:background-color .25s,color .2s}.tag-cloud a:hover{background:var(--primary);color:#fff}.tag-cloud sup{opacity:.7;margin-left:2px;font-size:10px}.webinfo-card dl{grid-template-columns:1fr auto;gap:6px;margin:0;font-size:14px;display:grid}.webinfo-card dt{color:var(--text-2)}.webinfo-card dd{font-variant-numeric:tabular-nums;margin:0}.pixiv-card .carousel{aspect-ratio:3/4;background:var(--card-2);border-radius:10px;position:relative;overflow:hidden}.pixiv-card .viewport,.pixiv-card .slides,.pixiv-card .slide{height:100%}.pixiv-card .slide img{object-fit:cover;width:100%;height:100%}.pixiv-card .slide span{color:#fff;background:linear-gradient(#0000,#000000b3);padding:30px 12px 10px;font-size:13px;display:grid;position:absolute;inset:auto 0 0}.pixiv-card .slide b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.skeleton{background:var(--border);animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.45}}.history-card .viewport{height:64px}.h3-actions{gap:2px;margin-left:auto;display:inline-flex}.mini-btn{width:24px;height:24px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.mini-btn:hover{background:var(--primary-soft);color:var(--primary)}.history-card .slides{height:100%;transition:transform .6s var(--ease);flex-direction:column}.history-card .slide{flex:0 0 100%;font-size:13.5px;line-height:1.5;display:grid}.history-card .slide b{color:var(--primary);font-size:13px}.history-card .slide span{-webkit-line-clamp:2;color:var(--text-2);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.toc-card{max-height:calc(100vh - var(--header-h) - 40px);flex-direction:column;display:flex}.toc-card h3{flex-shrink:0}.toc-pct{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-weight:500}.toc{overscroll-behavior:contain;margin:0 -8px;overflow:auto}.toc ol{margin:0;padding:0;list-style:none}.toc a{color:var(--text-2);border-left:2px solid #0000;border-radius:8px;gap:6px;padding:4px 8px;font-size:14px;line-height:1.5;display:flex}.toc .lv1 a{padding-left:22px;font-size:13.5px}.toc .lv2 a{padding-left:36px;font-size:13px}.toc .num{color:var(--muted);font-variant-numeric:tabular-nums}.toc a:hover{background:var(--primary-soft);color:var(--primary)}.toc a.active{color:var(--primary);background:var(--primary-soft);border-left-color:var(--primary);font-weight:500}.rightside{z-index:40;transition:transform .35s var(--ease);justify-items:end;gap:8px;display:grid;position:fixed;bottom:36px;right:18px;transform:translate(80px)}.show-rightside .rightside{transform:none}.rs-btn{background:var(--primary);color:#fff;width:38px;height:38px;box-shadow:var(--shadow);border:0;border-radius:10px;place-items:center;transition:filter .2s,transform .2s,opacity .2s;display:grid}.rs-btn:hover{filter:brightness(1.1)}[data-theme=dark] .rs-btn{color:#8fc3f3;background:#1f2a37;border:1px solid #2c3a4a;box-shadow:0 4px 14px #00000059}[data-theme=dark] .rs-btn:hover{filter:none;background:#26364a}.rs-more{gap:8px;display:grid}.rs-more .rs-btn{opacity:0;visibility:hidden;transform:translate(14px)}.rs-open .rs-more .rs-btn{opacity:1;visibility:visible;transform:none}.rs-toggle .icon{transition:transform .3s var(--ease)}.rs-open .rs-toggle .icon{transform:rotate(90deg)}.rs-more .rs-read,.rs-more .rs-comment{display:none}.post-page .rs-more .rs-read,.post-page .rs-more .rs-comment{display:grid}.rs-toc,.at-bottom .rs-bottom{display:none}.rs-top{position:relative}.rs-top .rs-percent{font-size:12px;font-weight:600}.rs-top .icon,.rs-top:hover .rs-percent{display:none}.rs-top:hover .icon{display:block}.modal[open]{flex-direction:column;display:flex}html:has(dialog[open]){overflow:hidden}.modal{background:var(--card);color:var(--text);border:0;border-radius:18px;width:min(560px,100vw - 32px);max-height:min(86dvh,760px);padding:0;overflow:hidden;box-shadow:0 30px 80px #0000004d}.modal::backdrop{backdrop-filter:blur(4px);background:#0a0f1973}.modal[open]{animation:pop .25s var(--ease)}@keyframes pop{0%{opacity:0;transform:translateY(12px)scale(.98)}}.modal-head{justify-content:space-between;align-items:center;padding:16px 18px 6px 22px;display:flex}.modal-head h2{margin:0;font-size:18px}.modal-head{flex-shrink:0}@media (hover:none){.mouse-only{display:none!important}}.modal-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:4px 22px 30px;overflow-y:auto}fieldset{border:0;margin:14px 0 0;padding:0}legend{color:var(--text-2);margin-bottom:8px;font-size:14px;font-weight:600}.seg{flex-wrap:wrap;gap:8px;display:flex}.seg legend{width:100%}.seg label{flex:1;min-width:90px;position:relative}.seg input{opacity:0;pointer-events:none;width:100%;height:100%;margin:0;position:absolute;inset:0}.seg span{text-align:center;border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:8px 10px;transition:all .2s;display:block}.seg input:checked+span{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:600}.seg input:focus-visible+span{outline:2px solid var(--primary)}.switches .fx-list{grid-template-columns:1fr 1fr;align-items:start;gap:10px 14px;margin-top:12px;display:grid}.switch{cursor:pointer;align-items:flex-start;gap:10px;font-size:14px;line-height:20px;display:flex;position:relative}.switch input{opacity:0;width:36px;height:20px;margin:0;position:absolute;top:0;left:0}.switch .track{background:var(--border);border-radius:99px;flex-shrink:0;width:36px;height:20px;transition:background .2s;position:relative}.switch .track:after{content:"";width:16px;height:16px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.switch input:checked+.track{background:var(--primary)}.switch input:checked+.track:after{transform:translate(16px)}.switch input:disabled~*{opacity:.45}.switch input:focus-visible+.track{outline:2px solid var(--primary);outline-offset:2px}.switch.master{background:var(--card-2);border-radius:12px;padding:10px 12px}.switch.master small{color:var(--muted);font-size:12px;display:block}.cache-info p{margin:4px 0;font-size:14px}.cache-info .hint{color:var(--muted);margin:8px 0 12px;font-size:13px}.search{width:min(640px,100vw - 24px);margin-top:10dvh}.modal-body:focus{outline:none}.search-box{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 18px;display:flex}.search-box input{color:inherit;background:0 0;border:0;outline:0;flex:1;font-size:17px}@media (hover:none){.search-box kbd{display:none}}.search-box kbd{font:12px var(--font-mono);border:1px solid var(--border);color:var(--muted);border-radius:6px;padding:2px 6px}.search-results{overscroll-behavior:contain;flex:auto;min-height:0;max-height:60dvh;padding:8px;overflow-y:auto}.search-results .muted{text-align:center;margin:0;padding:18px}.hit{color:var(--text);border-radius:10px;gap:2px;padding:10px 14px;display:grid}.hit:hover,.hit:focus{background:var(--primary-soft)}.hit b{color:var(--primary)}.hit span{color:var(--text-2);font-size:13.5px}.hit mark{background:var(--mark);color:inherit;border-radius:3px}.lightbox{cursor:zoom-out;background:0 0;border:0;max-width:96vw;max-height:96vh;padding:0}.lightbox::backdrop{background:#000000d9}.lightbox img{border-radius:6px;max-width:96vw;max-height:90vh}.lightbox p{color:#ddd;text-align:center;margin:8px 0 0}.lightbox[open] img{animation:zoomin .25s var(--ease)}@keyframes zoomin{0%{opacity:.3;transform:scale(.94)}}#toasts .toast{pointer-events:auto;align-items:center;gap:12px;display:flex}.toast-action{color:#fff;font:inherit;background:#ffffff38;border:0;border-radius:999px;padding:3px 12px;font-size:13px}.toast-action:hover{background:#ffffff57}#toasts{left:50%;top:calc(var(--header-h) + 14px);z-index:2147483000;pointer-events:none;justify-items:center;gap:8px;display:grid;position:fixed;transform:translate(-50%)}.toast{color:#fff;animation:toastin .3s var(--ease);background:#2b3340;border-radius:12px;max-width:min(420px,100vw - 40px);padding:12px 18px;font-size:14.5px;font-weight:500;box-shadow:0 10px 30px #00000040}.toast-success{background:#2f9e6f}.toast-warn{background:#d9822b}.toast.out{opacity:0;transition:all .3s;transform:translateY(-8px)}@keyframes toastin{0%{opacity:0;transform:translateY(-10px)}}.site-footer{text-align:center;color:var(--text-2);background:color-mix(in srgb, var(--card) 70%, transparent);border-top:1px solid var(--border);margin-top:48px;padding:34px 0 40px;font-size:14px}.site-footer p{margin:4px 0}.footer-text{color:var(--text);letter-spacing:.1em;font-size:15px}.heartbeat{color:#ff5c8a;display:inline-block}@media (width<=1100px){:root{--aside-w:270px}.menu-link{padding:7px 9px}}@media (width<=960px){.layout{grid-template-columns:minmax(0,1fr)}.layout>.main,.layout>.aside{grid-area:auto/1}.aside .sticky{position:static}.menu-toggle{display:inline-grid}.menu{top:var(--header-h);min-width:220px;max-height:calc(100vh - var(--header-h) - 24px);background:var(--card);color:var(--text);box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;transition:.25s var(--ease);border-radius:14px;flex-direction:column;padding:8px;position:fixed;right:12px;overflow:auto;transform:translateY(-8px)}.menu-open .menu{opacity:1;visibility:visible;transform:none}.submenu{opacity:1;visibility:visible;box-shadow:none;background:0 0;border:0;padding:0 0 0 26px;display:none;position:static;transform:none}.has-sub:focus-within .submenu,.has-sub:hover .submenu{display:none}.has-sub.open .submenu{display:block;transform:none}.has-sub .caret{transition:transform .2s}.has-sub:hover .caret{transform:none}.has-sub.open .caret{transform:rotate(180deg)}.post-page .toc-card{z-index:45;width:min(320px,100vw - 90px);max-height:60vh;box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;transform-origin:100% 100%;transition:.25s var(--ease);position:fixed;bottom:36px;right:66px;transform:scale(.95)}.toc-open .post-page .toc-card,.toc-open .toc-card{opacity:1;visibility:visible;transform:none}.post-page:not(.no-toc) .rs-toc{display:grid}}@media (width<=680px){body{font-size:15px}.container{padding:0 12px}.post-card,.post-card.flip{grid-template-columns:1fr;height:auto}.post-card .cover,.post-card.flip .cover{aspect-ratio:16/9;order:0}.post-card .info{padding:16px 18px 20px}.post-card .title{font-size:18px}.top-carousel .slide{height:200px}.hero.small{height:300px}.switches .fx-list{grid-template-columns:1fr}.rightside{right:10px}}@media print{.site-header,.rightside,.aside,.site-footer,.comments,.reward,.post-nav,.hero{display:none!important}.page{padding:0}.layout{display:block}.card{box-shadow:none;border:0}}[data-style=vivid] .menu>.menu-item:first-child>.menu-link .icon{color:#ff8a3d}[data-style=vivid] .menu>.menu-item:nth-child(2)>.menu-link .icon{color:#3d9cf0}[data-style=vivid] .menu>.menu-item:nth-child(3)>.menu-link .icon{color:#f5b400}[data-style=vivid] .menu>.menu-item:nth-child(4)>.menu-link .icon{color:#2fbf71}[data-style=vivid] .menu>.menu-item:nth-child(5)>.menu-link .icon{color:#e85d9e}[data-style=vivid] .menu>.menu-item:nth-child(6)>.menu-link .icon{color:#8f7cff}[data-style=vivid] .menu>.menu-item:nth-child(7)>.menu-link .icon{color:#16a3b8}.hit-group{color:var(--muted);letter-spacing:.02em;margin:10px 14px 4px;font-size:12px;font-weight:600}.hit small{color:var(--muted);font-size:12px}.hit.active{background:var(--primary-soft);outline:1px solid color-mix(in srgb, var(--primary) 40%, transparent)}@media (width>=1700px){:root{--container:1580px;--aside-w:320px}body{font-size:16px}.post-list{grid-template-columns:repeat(2,minmax(0,1fr))}.post-card,.post-card.flip{grid-template-rows:230px auto;grid-template-columns:1fr;height:auto}.post-card.flip .cover{order:0}.post-card .info{justify-content:flex-start;padding:20px 24px 24px}.top-carousel .slide{height:340px}}@media (width>=2200px){:root{--container:1900px;--aside-w:340px}body{font-size:17px}.prose{font-size:17.5px}.post-card,.post-card.flip{grid-template-rows:280px auto}.hero.small{height:460px}}:root{--sticky-top:calc(var(--header-h) + 16px)}.nav-hidden{--sticky-top:16px}.layout>.aside{align-self:stretch}.aside .sticky{top:min(var(--sticky-top), calc(100vh - var(--sticky-h,0px) - 16px));transition:top .35s var(--ease);position:sticky}[data-side=right] .layout:not(.single):not(.post-layout){grid-template-columns:minmax(0, 1fr) var(--aside-w)}[data-side=right] .layout:not(.single):not(.post-layout)>.main{grid-column:1}[data-side=right] .layout:not(.single):not(.post-layout)>.aside{grid-column:2}.layout.post-layout{grid-template-columns:var(--aside-w) minmax(0, 1fr);grid-template-rows:auto auto 1fr;grid-template-areas:"author main""related main""toc main"}[data-side=right] .layout.post-layout{grid-template-columns:minmax(0, 1fr) var(--aside-w);grid-template-areas:"main author""main related""main toc"}.layout.post-layout>.main{grid-area:main}.layout.post-layout>.side-author{grid-area:author;align-self:start}.layout.post-layout>.side-related{grid-area:related;align-self:start}.layout.post-layout>.side-related .sticky{position:static}.layout.post-layout>.toc-rail{grid-area:toc;align-self:stretch;min-width:0}.post-layout .toc-card{top:var(--sticky-top);transition:top .35s var(--ease);position:sticky}@media (width>=1700px){.layout.post-layout{grid-template-columns:var(--aside-w) minmax(0, 1fr) 300px;grid-template-rows:auto 1fr;grid-template-areas:"author main related""toc main related"}[data-side=right] .layout.post-layout{grid-template-columns:300px minmax(0, 1fr) var(--aside-w);grid-template-areas:"related main author""related main toc"}.layout.post-layout>.side-related{align-self:stretch}.layout.post-layout>.side-related .sticky{position:sticky}}@media (width<=960px){.layout.post-layout,[data-side=right] .layout.post-layout{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"main"}.layout.post-layout>:is(.side-author,.side-related){display:none}.layout.post-layout>.toc-rail{grid-area:auto;display:contents}[data-side=right] .layout:not(.single):not(.post-layout){grid-template-columns:minmax(0,1fr)}[data-side=right] .layout:not(.single):not(.post-layout)>:is(.main,.aside){grid-column:1}.aside .sticky{position:static}}[data-focus="1"] .layout.post-layout>.side-related{display:none}@media (width>=1700px){[data-style=vivid][data-focus="1"] body:not(.read-mode) .layout.post-layout{grid-template-columns:var(--aside-w) minmax(0, 1fr);grid-template-areas:"author main""toc main"}[data-style=vivid][data-focus="1"][data-side=right] body:not(.read-mode) .layout.post-layout{grid-template-columns:minmax(0, 1fr) var(--aside-w);grid-template-areas:"main author""main toc"}}
|