:root{--color-bg:#fff;--color-surface:#f5f7fb;--color-text:#1b2033;--color-muted:#545c70;--color-border:#dde3ee;--color-link:#1743c7;--color-link-hover:#0d2192;--color-brand:#0d2192;--color-brand-text:#fff;--color-header-bg:#0d2192;--color-header-text:#fff;--color-focus:#2f6bff;--color-code-bg:#f1f4fa;--color-mark:#fff3c4;--official-artwork-bg:#fff;--font-body:"PingFang SC", "Noto Sans SC", "Microsoft YaHei", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--radius:10px;--max-width:1080px;--chrome-width:1240px;--gutter:16px;--signal-bg:#0a1236;--signal-surface:#111b4d;--signal-line:#2b3b82;--signal-text:#eef1fb;--signal-muted:#b6bfe0;--signal-accent:#8fb3ff;--signal-focus:#8fb3ff;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:#0e1320;--color-surface:#161d2f;--color-text:#e7eaf3;--color-muted:#a7b0c4;--color-border:#2a3450;--color-link:#8fb3ff;--color-link-hover:#c3d6ff;--color-brand:#8fb3ff;--color-brand-text:#0e1320;--color-header-bg:#161d2f;--color-header-text:#e7eaf3;--color-focus:#8fb3ff;--color-code-bg:#1d2640;--color-mark:#4a4120;color-scheme:dark}}:root[data-theme=dark]{--color-bg:#0e1320;--color-surface:#161d2f;--color-text:#e7eaf3;--color-muted:#a7b0c4;--color-border:#2a3450;--color-link:#8fb3ff;--color-link-hover:#c3d6ff;--color-brand:#8fb3ff;--color-brand-text:#0e1320;--color-header-bg:#161d2f;--color-header-text:#e7eaf3;--color-focus:#8fb3ff;--color-code-bg:#1d2640;--color-mark:#4a4120;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);overflow-wrap:anywhere;flex-direction:column;min-height:100vh;margin:0;font-size:1rem;line-height:1.75;display:flex}main{flex:1 0 auto;width:100%}img,video,svg{max-width:100%;height:auto}a{color:var(--color-link);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--color-link-hover)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px;border-radius:4px}.site-header :focus-visible:not(.search-dialog *){outline-color:var(--color-header-text)}h1,h2,h3,h4{margin:1.5em 0 .6em;line-height:1.35}h1{margin-top:.2em;font-size:1.9rem}h2{font-size:1.45rem}h3{font-size:1.2rem}p{margin:.9em 0}ul,ol{padding-left:1.4em}table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}th,td{border:1px solid var(--color-border);text-align:left;padding:.4em .6em}pre,code{font-family:var(--font-mono);font-size:.92em}code{background:var(--color-code-bg);border-radius:4px;padding:.1em .3em}pre{background:var(--color-code-bg);border-radius:var(--radius);padding:.9em 1em;overflow-x:auto}pre code{background:0 0;padding:0}blockquote{border-left:4px solid var(--color-border);color:var(--color-muted);margin:1em 0;padding:.2em 1em}mark{background:var(--color-mark);color:inherit}.container{width:100%;max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto}.muted{color:var(--color-muted)}.section{margin-block:2.2rem}.section-title{border-bottom:2px solid var(--color-brand);margin:0 0 1rem;padding-bottom:.4rem;font-size:1.35rem;display:inline-block}.card-grid{grid-template-columns:1fr;gap:16px;margin:0;padding:0;list-style:none;display:grid}.meta{color:var(--color-muted);flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.tag-list{flex-wrap:wrap;gap:6px;margin:.6em 0 0;padding:0;list-style:none;display:flex}.tag-list a{border:1px solid var(--color-border);color:var(--color-text);border-radius:999px;padding:2px 10px;font-size:.85rem;text-decoration:none;display:inline-block}.tag-list a:hover{border-color:var(--color-link);color:var(--color-link)}.button{background:var(--color-brand);color:var(--color-brand-text);border-radius:999px;padding:.55em 1.1em;font-weight:600;text-decoration:none;display:inline-block}.button:hover{color:var(--color-brand-text);filter:brightness(1.08)}.button.secondary{color:var(--color-brand);border:2px solid var(--color-brand);background:0 0}.button.secondary:hover{color:var(--color-brand)}.prose img{border-radius:6px;margin:1em auto;display:block}.prose p img+em,.prose figcaption{text-align:center;color:var(--color-muted);font-size:.9rem;display:block}.prose a[href^=http]{word-break:break-all}@media (width>=640px){:root{--gutter:24px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=960px){.card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}}.site-header .header-tools{flex-shrink:0}.site-header .nav-mobile summary{white-space:nowrap}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.card-grid>li{margin-top:0}.card{--card-hover:color-mix(in srgb, var(--color-surface) 94%, var(--color-link));--card-press:color-mix(in srgb, var(--color-surface) 88%, var(--color-link));background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;border-radius:12px;flex-direction:column;height:100%;padding:1rem 1.1rem;transition:border-color .16s ease-out,background-color .16s ease-out;display:flex;position:relative;overflow:hidden}.card img.cover{aspect-ratio:16/9;object-fit:cover;border-radius:0;flex:none;width:calc(100% + 2.2rem);max-width:none;height:auto;margin:-1rem -1.1rem .9rem;transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.card :is(h2,h3){-webkit-line-clamp:3;line-clamp:3;text-wrap:balance;-webkit-box-orient:vertical;margin:0 0 .4em;font-size:1.05rem;display:-webkit-box;overflow:hidden}.card :is(h2,h3) a{color:var(--color-text);text-decoration:none}.card :is(h2,h3) a:after{content:"";position:absolute;inset:0}.card :is(h2,h3) a:focus-visible{outline:none}.card .summary{-webkit-line-clamp:3;line-clamp:3;color:var(--color-muted);-webkit-box-orient:vertical;flex:none;margin:.5em 0 0;font-size:.95rem;display:-webkit-box;overflow:hidden}.card .author,.card .tag-list a{z-index:1;position:relative}.card-foot{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 12px;padding-top:.8rem;display:flex}.card.card>.card-foot{margin:auto 0 0}.card-foot .tag-list{flex:8rem;min-width:0;margin:0}.card-cue{color:var(--color-muted);white-space:nowrap;flex:none;align-items:center;gap:4px;margin-left:auto;font-size:.85rem;line-height:1.75;transition:color .16s ease-out;display:inline-flex}.cue-text{display:inline-grid}.cue-text>*{text-align:right;grid-area:1/1}.cue-seen,.cue-busy{visibility:hidden}.cue-arrow{flex:none;transition:transform .22s cubic-bezier(.16,1,.3,1)}.card[data-seen] .cue-idle{visibility:hidden}.card[data-seen] .cue-seen{visibility:visible}.card[data-opening] .cue-idle,.card[data-opening] .cue-seen{visibility:hidden}.card[data-opening] .cue-busy{visibility:visible}.card[data-opening]{border-color:var(--color-link);background-color:var(--card-press);cursor:progress}.card[data-opening] .card-cue{color:var(--color-link)}.card[data-opening]:before{content:"";z-index:2;background:var(--color-link);transform-origin:0;width:100%;height:2px;animation:6s cubic-bezier(.1,.7,.2,1) both card-opening;position:absolute;bottom:0;left:0;transform:scaleX(.6)}@keyframes card-opening{0%{transform:scaleX(.04)}to{transform:scaleX(.92)}}@media (hover:hover){.card:has(:is(h2,h3) a:hover){border-color:var(--color-link);background-color:var(--card-hover)}.card:has(:is(h2,h3) a:hover) img.cover{transform:scale(1.03)}.card:has(:is(h2,h3) a:hover) :is(h2,h3) a{color:var(--color-link);text-underline-offset:.2em;text-decoration:underline 1px}.card:has(:is(h2,h3) a:hover) .card-cue{color:var(--color-link)}.card:has(:is(h2,h3) a:hover) .cue-arrow{transform:translate(3px)}}.card:has(:is(h2,h3) a:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px;border-color:var(--color-link);background-color:var(--card-hover)}.card:has(:is(h2,h3) a:focus-visible) :is(h2,h3) a{color:var(--color-link);text-underline-offset:.2em;text-decoration:underline 1px}.card:has(:is(h2,h3) a:focus-visible) .card-cue{color:var(--color-link)}.card:has(:is(h2,h3) a:focus-visible) .cue-arrow{transform:translate(3px)}.card:has(:is(h2,h3) a:active){border-color:var(--color-link-hover);background-color:var(--card-press);transition-duration:0s}.card:has(:is(h2,h3) a:active) .cue-arrow{transform:translate(1px)}.card[data-returned]{animation:1.8s cubic-bezier(.16,1,.3,1) both card-returned}@keyframes card-returned{0%{border-color:var(--color-link);background-color:var(--card-press)}}@media (prefers-reduced-motion:reduce){.card[data-returned],.card[data-opening]{border-color:var(--color-link)}}@view-transition{navigation:auto}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}::view-transition-group(card-title){animation-duration:.42s;animation-timing-function:cubic-bezier(.16,1,.3,1)}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s}
