/* 布局依据：原站 styles:558/579、routes:4164 与已保存的双视口元素基线。 */
.terminal-session-snapshot>.terminal-prompt{margin-top:32px}.terminal-snapshot-input{display:flex;align-items:center;min-height:44px;margin-top:4px;border-bottom:1px solid color-mix(in oklab,var(--fg)4%,transparent);color:var(--fg)}body[data-terminal=true] #terminal-form[hidden],body[data-terminal=true] .terminal-hints[hidden]{display:none}
/* routes qa：Prompt独立Maple字体边界、原浅深提示色与640可选段。 */
.terminal-prompt{display:inline-flex;max-width:100%;flex-wrap:wrap;align-items:baseline;gap:2px 8px;font-family:Maple Mono,ui-monospace,monospace;font-size:14px;line-height:24px}.terminal-prompt-site{color:#1d6c62;font-weight:700}.terminal-prompt-dir{color:#9e5900;font-weight:600}.terminal-prompt-plain,.terminal-prompt-time{color:#373d39}.terminal-prompt-branch{color:#6b38c2;font-weight:600}.terminal-prompt-release{color:#9b4308;font-weight:600}.terminal-prompt-runtime{color:#0e5f70;font-weight:600}.terminal-prompt .optional{display:none}.terminal-prompt-success,.terminal-prompt-error{padding:0 4px;border-radius:4px;font-size:11px;font-weight:600}.terminal-prompt-success{color:#1b6b3e}.terminal-prompt-error{color:var(--destructive,#b4493d)}.terminal-prompt-time{font-size:11px}.terminal-prompt-media{padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500;color:#6b38c2;background:#d7c2ff26}.dark .terminal-prompt-site,.dark .terminal-prompt-success{color:#7ad7ca}.dark .terminal-prompt-dir{color:#f6c177}.dark .terminal-prompt-plain,.dark .terminal-prompt-time{color:#c8d1cc}.dark .terminal-prompt-branch{color:#c4a7ff}.dark .terminal-prompt-release{color:#ffb86c}.dark .terminal-prompt-runtime{color:#67d8ef}.dark .terminal-prompt-error{color:#ff6b6b}.dark .terminal-prompt-media{color:#d7c2ff}body[data-terminal=true] .terminal-prompt+#terminal-form{margin-top:4px}body[data-terminal=true] #terminal-output+.terminal-prompt{margin-top:32px}@media(min-width:640px){.terminal-prompt .optional{display:inline}}
/* routes mo：页面式终端、正文继承sans，源响应式安全区与触控行高。 */
body[data-terminal=true] .terminal{display:flex;flex:1;flex-direction:column;width:100%;max-width:none;min-height:100%;margin:0;border:0;border-radius:0;box-shadow:none;overflow:visible;font-family:inherit;font-size:14px;line-height:1.65}body[data-terminal=true] .terminal-body{flex:1;max-height:none;min-height:0;overflow:visible;padding:calc(max(12px,env(safe-area-inset-top)) + 68px) 16px 96px}body[data-terminal=true] .terminal-welcome{margin-bottom:32px;color:var(--muted)}body[data-terminal=true] .command-link{min-height:44px;padding:0 4px;border-radius:2px;font-weight:600;text-underline-offset:4px}.terminal-mode-switch{display:inline-flex;min-height:44px;align-items:center;gap:6px;margin-left:6px;padding:0 10px;border-radius:999px;font-weight:600;color:var(--primary)}.terminal-mode-switch svg{width:14px;height:14px}body[data-terminal=true] #terminal-form{display:flex;min-height:44px;gap:0;margin-top:32px;border-bottom:1px solid color-mix(in oklab,var(--fg)4%,transparent)}body[data-terminal=true] #terminal-form:focus-within{border-color:color-mix(in oklab,var(--fg)8%,transparent)}body[data-terminal=true] #terminal-form input{min-height:44px;padding:0;font-family:inherit;font-size:14px}body[data-terminal=true] #terminal-form button{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:6px;color:var(--muted)}.terminal-symbol{margin-right:8px;flex-shrink:0;font-weight:700;color:var(--primary)}body[data-terminal=true] .terminal-hints{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:14px;font-size:12px;opacity:1;line-height:16px}body[data-terminal=true] .terminal-entry{margin:32px 0;white-space:pre-wrap}@media(min-width:640px){body[data-terminal=true] .terminal-body{padding-inline:38px}}@media(min-width:1024px){body[data-terminal=true] .terminal-body{padding-top:36px}}
/* routes Xa/Za/Ya：帮助两列、导航跨两行，44px点击行，13px说明。 */
.terminal-help{display:grid;max-width:768px;gap:20px;white-space:normal}.terminal-help h3{margin:0 0 4px;font-size:12px;line-height:16px;font-weight:700;letter-spacing:.12em;color:var(--muted)}.terminal-help-row{display:grid;min-height:44px;width:100%;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:12px;text-align:start}.terminal-command-name{color:var(--primary)}.terminal-description{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--muted)}.terminal-directory{max-width:768px;white-space:normal}.terminal-directory-row{display:grid;min-height:44px;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;gap:12px;padding:0 8px;border-radius:6px}.terminal-directory-row:hover,.terminal-directory-row:focus-visible{background:color-mix(in oklab,var(--fg)5%,transparent)}.terminal-error{color:var(--destructive,#b4493d)}.terminal-retry-command{min-height:44px;padding:0 8px;text-align:start;color:var(--primary);text-decoration:underline;text-underline-offset:4px}@media(min-width:640px){.terminal-help{grid-template-columns:repeat(2,minmax(0,1fr))}.terminal-help-navigation{grid-row:span 2}.terminal-directory-row{grid-template-columns:112px minmax(0,1fr) auto}}
/* routes-B92ZX412.js:1：建议行h6/gap1.5/px2/rounded与选中前景8%背景。 */
.terminal-suggestions{display:flex;height:24px;gap:6px;align-items:center;overflow-x:auto;font-size:12px;margin-top:14px}.terminal-suggestions[hidden]{display:none}.terminal-suggestions button{display:inline-flex;height:24px;flex-shrink:0;align-items:center;border-radius:4px;padding:0 8px;font-size:12px;line-height:1;color:var(--muted);transition:color .15s,background-color .15s}.terminal-suggestions button[aria-selected=true]{background:color-mix(in oklab,var(--fg)8%,transparent);color:var(--primary);font-weight:600}.terminal-suggestions button:hover{background:color-mix(in oklab,var(--fg)4%,transparent);color:var(--fg)}
.message-form .wall-compose-tools .character-count{font-size:12px;line-height:16px;color:oklch(55.4% .046 257.417)}.message-form .wall-compose-tools .wall-count-warning{color:oklch(66.6% .179 58.318)}.message-form .wall-compose-tools .wall-count-limit{color:oklch(58.6% .253 17.585)}.dark .message-form .wall-compose-tools .character-count{color:oklch(70.4% .04 256.788)}.dark .message-form .wall-compose-tools .wall-count-warning{color:oklch(82.8% .189 84.429)}.dark .message-form .wall-compose-tools .wall-count-limit{color:oklch(71.2% .194 13.428)}
/* guestbook-DbEBCY72.js:1 St；原生AlertDialog适配沿源384/24/18/40尺寸。 */
:root{--wall-delete-red-500:oklch(63.7% .237 25.331);--wall-delete-red-600:oklch(57.7% .245 27.325);--wall-delete-slate-50:oklch(98.4% .003 247.858);--wall-delete-slate-200:oklch(92.9% .013 255.508);--wall-delete-slate-600:oklch(44.6% .043 257.281);--wall-delete-slate-700:oklch(37.2% .044 257.287);--wall-delete-slate-900:oklch(20.8% .042 265.755);--wall-delete-slate-950:oklch(12.9% .042 264.695)}
#wall-delete-dialog{width:calc(100% - 32px);max-width:384px;padding:20px;border-radius:24px;border:1px solid color-mix(in srgb,#fff 60%,transparent);background:color-mix(in srgb,#fff 96%,transparent)}#wall-delete-title{font-size:18px;line-height:28px;font-weight:600;margin:0}#wall-delete-description{margin:8px 0 0;font-size:14px;line-height:24px;color:var(--muted)}#wall-delete-dialog .moment-delete-actions{margin-top:24px;display:flex;justify-content:flex-end;gap:8px}#wall-delete-dialog .moment-delete-actions button{height:40px;padding:0 16px;border-radius:9999px;font-size:14px;font-weight:500}#wall-delete-dialog [data-wall-delete-confirm]{background:#ef4444;color:white}#wall-delete-dialog [data-wall-delete-confirm]:hover{background:#dc2626}#wall-delete-dialog button:disabled{opacity:.6}#wall-delete-dialog [data-wall-delete-error]{color:#dc2626;margin-top:8px;font-size:14px}#wall-delete-dialog::backdrop{background:#02061780;backdrop-filter:blur(4px)}.dark #wall-delete-dialog{background:color-mix(in srgb,#0f172a 96%,transparent);border-color:#ffffff1a}@media(min-width:640px){#wall-delete-dialog{padding:24px}}
/* guestbook-DbEBCY72.js:1 Dt；尺寸和颜色取自源声明，未知访客图使用首字符身份。 */
:root{--wall-delete-slate-300:oklch(86.9% .022 252.894)}.dark #wall-delete-description{color:var(--wall-delete-slate-300)}.dark #wall-delete-dialog [data-wall-delete-cancel]{border-color:var(--wall-delete-slate-700);color:var(--wall-delete-slate-300)}
#wall-delete-title{color:var(--wall-delete-slate-950)}#wall-delete-description{color:var(--wall-delete-slate-600)}#wall-delete-dialog [data-wall-delete-cancel]{border:1px solid var(--wall-delete-slate-200);color:var(--wall-delete-slate-700)}#wall-delete-dialog [data-wall-delete-confirm]{background:var(--wall-delete-red-500)}#wall-delete-dialog [data-wall-delete-confirm]:hover,#wall-delete-dialog [data-wall-delete-error]{background-color:var(--wall-delete-red-600)}#wall-delete-dialog [data-wall-delete-error]{color:var(--wall-delete-red-600);background:none}.dark #wall-delete-title{color:var(--wall-delete-slate-50)}.dark #wall-delete-dialog{background:color-mix(in srgb,var(--wall-delete-slate-900)96%,transparent)}
#wall-delete-dialog{opacity:0;scale:.92;pointer-events:none;transform-origin:50%;transition:transform .22s cubic-bezier(.16,1,.3,1),opacity .22s cubic-bezier(.16,1,.3,1),scale .22s cubic-bezier(.16,1,.3,1),display .22s allow-discrete,overlay .22s allow-discrete}#wall-delete-dialog[open]{opacity:1;scale:1;pointer-events:auto}#wall-delete-dialog::backdrop{opacity:0;transition:opacity .22s cubic-bezier(.16,1,.3,1),display .22s allow-discrete,overlay .22s allow-discrete}#wall-delete-dialog[open]::backdrop{opacity:1}@starting-style{#wall-delete-dialog[open]{opacity:0;scale:.92}#wall-delete-dialog[open]::backdrop{opacity:0}}@media(prefers-reduced-motion:reduce){#wall-delete-dialog,#wall-delete-dialog::backdrop{transition-duration:.01ms!important}}
.wall-dock>div{position:relative}.wall-dock .wall-notification-reminder{top:auto;bottom:calc(100% + 10px);margin-top:0;max-width:168px;z-index:40}
#wall-notifications-dialog{width:calc(100% - 24px);max-width:512px;max-height:80dvh;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--bg);color:var(--fg)}#wall-notifications-dialog[open]{display:flex;flex-direction:column}#wall-notifications-dialog::backdrop{background:#00000073}#wall-notifications-dialog .dialog-head{align-items:flex-start;gap:16px}#wall-notifications-dialog h2{margin:4px 0 0;font-size:20px;line-height:28px;font-weight:700}#wall-notifications-dialog .dialog-head button{width:44px;height:44px;flex-shrink:0}#wall-notification-description{font-size:14px;line-height:20px;color:var(--muted);margin:0 0 16px}[data-wall-notification-list]{min-height:0;overflow-y:auto;padding-right:4px}#wall-notifications-dialog .notification-avatar{width:40px;height:40px}#wall-notifications-dialog .notification-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}#wall-notifications-dialog .notification-list time{display:block}#wall-notifications-dialog .wall-notification-item{border-color:color-mix(in oklab,oklch(90.5% .093 164.15)80%,transparent);background:color-mix(in oklab,oklch(97.9% .021 166.113)70%,transparent)}.dark #wall-notifications-dialog .wall-notification-item{border-color:color-mix(in oklab,oklch(37.8% .077 168.94)60%,transparent);background:color-mix(in oklab,oklch(26.2% .051 172.552)25%,transparent)}[data-wall-notification-error]{margin-top:12px;color:var(--destructive,#dc2626);font-size:14px}
@media(min-width:640px){#wall-notifications-dialog{padding:24px}}@media(prefers-reduced-motion:no-preference){.wall-dock .wall-notification-reminder{animation:wall-notification-enter .3s ease}@keyframes wall-notification-enter{from{opacity:0;transform:translate3d(0,8px,0)scale3d(.75,.75,.75)}}}
html{scrollbar-gutter:stable;font-synthesis:none}body{font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button{padding:0}p{margin-bottom:0}.topbar{position:fixed;top:max(36px,env(safe-area-inset-top));pointer-events:none}.topbar>.island{pointer-events:auto}.footer{gap:8px;padding:0 16px 24px;font-size:13px;line-height:20px;height:44px;flex-shrink:0}.footer>a:first-child{text-decoration:underline;text-underline-offset:4px;text-decoration-color:color-mix(in srgb,var(--fg),transparent 75%)}.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:96px 16px;min-height:448px}.home-composition{height:244px;gap:32px;flex-shrink:0}.introduction{line-height:24px;min-height:24px;height:24px;white-space:nowrap}.home-entries{height:50px}.home-entries a{height:50px;line-height:20px;gap:6px}.home-entries a svg{margin:2px;width:20px;height:20px}.particle-control{width:120px;height:36px;min-height:36px;padding:0 14px;gap:10px;font-size:12px;line-height:16px;justify-content:center}.electric-avatar{border:0;box-shadow:0 0 30px #3885ff26,0 0 60px #3885ff12;animation:none}.electric-avatar:before,.electric-avatar:after{display:none}#electric-ring{position:absolute;inset:-60px;width:226px;height:226px;pointer-events:none}.avatar{position:relative;z-index:1}#particles{position:fixed;inset:0}
.introduction{position:relative}.intro-measure{visibility:hidden}.intro-rendered{position:absolute;left:0;top:0}.syntax-79c0ff{color:#79c0ff}.syntax-7ee787{color:#7ee787}.syntax-8b949e{color:#8b949e}.syntax-a5d6ff{color:#a5d6ff}.syntax-d2a8ff{color:#d2a8ff}.syntax-e6edf3{color:#e6edf3}.syntax-ff7b72{color:#ff7b72}.syntax-ffa657{color:#ffa657}
.icon-moments,.icon-guestbook{overflow:visible}.icon-guestbook path{transform-origin:center}
.icon-theme{overflow:visible}.icon-play,.user-avatar,.sun-center,.moon{transform-origin:center}.icon-theme .moon{display:none}.dark .icon-theme .moon{display:block}.dark .icon-theme .sun-center,.dark .icon-theme .sun-rays{display:none}
.page-blocks{width:100%;max-width:728px;padding:0 24px 48px;margin:0 auto}.page-block{padding:24px;border:1px solid var(--border);border-radius:16px;background:var(--card);margin-bottom:24px}.page-block h2{margin:0 0 16px;font-size:20px}.page-block .prose>:last-child{margin-bottom:0}.page-blocks>.private-content-tools{margin-bottom:20px}
.emoji-tools{margin:4px 0}.emoji-trigger{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;padding:0;color:#94a3b8}.emoji-trigger svg{width:18px;height:18px}.emoji-trigger:hover{background:#f1f5f9;color:#0284c7}.dark .emoji-trigger:hover{background:#1e293b;color:#7dd3fc}.moment-card .message-form .emoji-trigger{padding:0;min-height:36px}.emoji-panel{position:fixed;inset:auto;margin:0;padding:0;border:0;border-radius:16px;box-shadow:0 25px 50px -12px #0004;max-width:calc(100vw - 32px);max-height:calc(100svh - 32px);overflow:auto;background:var(--bg);color:var(--muted);font-size:12px;z-index:70}.emoji-panel em-emoji-picker{--border-radius:16px;--shadow:none}
.moment-card.notification-target,.moment-card.notification-target:hover{box-shadow:0 0 0 4px color-mix(in srgb,var(--primary),transparent 75%),0 20px 25px -5px color-mix(in srgb,var(--primary),transparent 90%);outline:none}.moment-card{scroll-margin-top:24px}
.comment-group{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;border-radius:12px}.comment-avatar{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;overflow:hidden;background:#e2e8f0;color:#475569;margin-top:2px;object-fit:cover;font-size:13px}.comment-group>div{min-width:0;flex:1}.comment-group strong{font-size:13px;line-height:20px;color:#334155;font-weight:600}.comment-group:has(.owner-badge) strong{color:#b45309}.comment-entry{margin-top:4px}.comment-entry+.comment-entry{margin-top:14px}.comment-entry p{margin:0;font-size:14px;line-height:24px;overflow-wrap:anywhere;color:#334155}.comment-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:4px;color:#94a3b8;font-size:11px;line-height:16px}.comment-meta button{opacity:0;font-size:11px}.comment-entry:hover .comment-meta button,.comment-meta button:focus-visible{opacity:1}.comment-meta button:hover{color:#ef4444}.dark .comment-group strong{color:#e2e8f0}.dark .comment-group:has(.owner-badge) strong{color:#fcd34d}.dark .comment-entry p{color:#cbd5e1}.dark .comment-avatar{background:#1e293b;color:#cbd5e1}@media(hover:none){.comment-meta button{opacity:1}}
/* 浮动导航独立布局，不让它的图标和宽度过渡牵连正文；不裁剪礼花溢出。 */
.island{contain:layout style}
.resource-card-shell{display:flex;flex-direction:column;min-width:0}.resource-card-shell .resource-card{flex:1}.resource-card-shell:has([data-resource-card][hidden]){display:none}
.moment-media{display:grid;min-width:0;align-items:start;gap:12px;margin-top:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.moment-media[data-columns="1"]{grid-template-columns:1fr}.moment-media[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.moment-media button{display:block;min-width:0;overflow:hidden;border-radius:calc(.35rem * 1.4);background:transparent;padding:0;cursor:zoom-in}.moment-media img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover;object-position:center;border-radius:calc(.35rem * 1.4)}.moment-media[data-columns="1"] button{width:fit-content;max-width:100%}.moment-media[data-columns="1"] img{width:auto;height:auto;max-width:100%;aspect-ratio:auto;max-height:448px;object-fit:contain}
.owner-badge{display:inline-block;margin-left:6px;background:#fef3c7;color:#b45309;border-radius:4px;padding:1px 5px;font-size:9px;line-height:14px}.dark .owner-badge{background:#78350f66;color:#fcd34d}.comment-pages{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0;font-size:12px;color:#0284c7}.comment-loading{padding:12px;border-radius:12px;background:var(--card);font-size:12px;animation:comment-loading 1s ease-in-out infinite alternate}.comment-error{color:#dc2626;font-size:12px;margin:0}.comment-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px 0}.comment-empty>span{font-size:16px;line-height:24px;user-select:none;opacity:.8}.comment-empty p{margin:6px 0 0;font-size:12px;line-height:16px;font-weight:500;color:color-mix(in oklab,oklch(41.4% .112 45.904) 75%,transparent)}.comment-empty p+p{margin-top:2px;font-size:11px;line-height:16.5px;font-weight:400;color:color-mix(in oklab,oklch(47.3% .137 46.201) 45%,transparent)}.dark .comment-empty p{color:color-mix(in oklab,oklch(92.4% .12 95.746) 70%,transparent)}.dark .comment-empty p+p{color:oklch(55.4% .046 257.417)}.message-card [data-comment-delete]{font-size:11px;color:#737373;margin-top:4px}.message-card [data-comment-delete]:hover{color:#dc2626}@keyframes comment-loading{to{opacity:.5}}@media(prefers-reduced-motion:reduce){.comment-loading{animation:none}}
.moment-card .moment-actions{margin-top:28px;gap:24px}.moment-card .moment-actions button{font-size:14px;gap:6px}.moment-card .moment-actions svg{width:20px;height:20px}.moment-card [data-comments][aria-expanded=true]{color:#2563eb}.moment-card [data-like][aria-pressed=true]{color:#ef4444}.moment-card [data-like][aria-pressed=true] svg{fill:currentColor}#comments-toggle{border:1px solid #e5e7eb;border-radius:999px;background:var(--bg);padding:5px 12px;gap:6px}.comment-status-dot{width:8px;height:8px;border-radius:50%;background:#d1d5db;order:-1}#comments-toggle[aria-checked=true] .comment-status-dot{background:#10b981}.dark #comments-toggle{border-color:#374151}
/* 动态几何对照 moments-Vy8xhb9c:1055、1430、1503；山景与头像为本站自有资产。 */
.moments-page{width:100%;max-width:576px;margin:0 auto;padding-bottom:96px}.moment-cover{position:relative;height:355px;border-radius:0 0 calc(.35rem * 1.8) calc(.35rem * 1.8);background:#b77043;box-shadow:0 1px 3px #0001}.moment-cover>img{width:100%;height:100%;object-fit:cover;object-position:bottom;border-radius:inherit;display:block}.moment-profile{position:absolute;bottom:-56px;right:24px;display:flex;flex-direction:column;align-items:flex-end;gap:10px;z-index:2}.moment-profile>div{display:flex;align-items:flex-start;gap:12px}.moment-profile h1{margin:14px 0 0;font-size:18px;line-height:28px;font-weight:900;color:#fff;letter-spacing:0;text-shadow:0 2px 6px #0009}.moment-profile .avatar{width:80px;height:80px;border-radius:calc(.35rem * 1.4);border:2px solid #fff;background:#fff;box-shadow:0 3px 8px #0002}.moment-profile p{margin:0;font-size:14px;font-weight:500;color:var(--fg);line-height:20px}.moment-profile button{border-radius:calc(.35rem * 1.4)}.moment-feed{margin-top:80px}.moment-feed-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.moment-sort{display:inline-flex;align-items:center;gap:8px;border:1px solid #a7f3d0;background:#ecfdf599;border-radius:999px;padding:5px 12px;font-size:14px;font-weight:500;color:#047857}.moment-sort strong{font-weight:600}.moment-sort span{font-size:20px;line-height:20px}#comments-toggle{display:flex;align-items:center;gap:8px;font-size:12px;line-height:20px;color:var(--muted)}#comments-toggle[aria-checked=true] .switch{background:var(--primary)}#comments-toggle[aria-checked=true] .switch:after{transform:translateX(14px)}.moment-month{font:12px/20px "Maple Mono",ui-monospace,monospace;color:var(--muted);margin:28px 0 12px;font-weight:500}.moment-card{position:relative;border:1px solid var(--moment-card-orange-100);border-radius:calc(.35rem * 1.8);background:oklab(98.7298% -.00554904 .0256385/.3);padding:16px 20px 12px;margin:0 0 16px;transition:box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1)}.moment-card:hover{box-shadow:0 20px 25px -5px #e5e7eb80,0 8px 10px -6px #e5e7eb80}.dark .moment-card:hover{box-shadow:0 20px 25px -5px rgb(0 0 0/.2),0 8px 10px -6px rgb(0 0 0/.2)}@media(prefers-reduced-motion:reduce){.moment-card{transition:none}}.moment-card header{margin:0 0 14px;align-items:center;gap:12px}.moment-card header strong{display:block;font-size:16px;line-height:20px;font-weight:600;color:var(--moment-gray-800)}.moment-card header time{font-size:12px;line-height:16px;font-weight:500;margin-top:4px;color:oklch(44.6% .03 256.802)}.pinned-badge{display:table;font-size:12px;line-height:16px;font-weight:600;border:1px solid color-mix(in oklab,var(--moment-card-amber-200) 80%,transparent);background:var(--moment-card-amber-50);color:var(--moment-card-amber-900);border-radius:999px;padding:4px 12px;margin-bottom:16px}.moment-pin{position:absolute;right:16px;top:16px;transform:rotate(12deg);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fffbeb;color:#d97706;box-shadow:0 0 0 1px #fef3c7}.moment-pin svg{width:16px;height:16px}.dark .moment-pin{background:rgb(120 53 15/.25);color:#fcd34d;box-shadow:0 0 0 1px rgb(146 64 14/.4)}.moment-card .comments{border:0;margin-top:14px;padding-top:0}.moment-card .message-card{padding:10px 0}.moment-card .message-card p{font-size:12px;margin:2px 0}.moment-card .message-card strong{font-size:12px}.moment-load{text-align:center;margin-top:32px;min-height:64px}.moment-load p,.moment-end{color:var(--muted);font-size:12px;text-align:center}.moment-end{margin-top:32px}.moment-notifications{position:absolute;bottom:-54px;left:0;font-size:12px;padding:6px 12px;border:1px solid var(--border);border-radius:999px;background:var(--bg)}.notification-item{padding:12px 0;border-bottom:1px solid var(--border)}.notification-item time{display:block;font-size:11px;color:var(--muted)}#media-preview{max-width:1100px}#media-preview>img{display:block;width:100%;height:60svh;object-fit:contain}.preview-controls{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.preview-controls button{width:44px;height:44px;border:1px solid var(--border);border-radius:50%}.dark .moment-card{border-color:var(--moment-gray-800);background:oklab(0% none none/.6)}.dark .moment-card header strong{color:var(--moment-card-gray-100)}.dark .moment-sort{color:#6ee7b7;background:#064e3b66;border-color:#10b98166}.dark .pinned-badge{color:var(--moment-card-amber-300);background:color-mix(in oklab,var(--moment-card-amber-900) 20%,transparent);border-color:color-mix(in oklab,var(--moment-card-amber-900) 30%,transparent)}.dark .moment-profile .avatar{border-color:#374151}.dark .moment-card header time{color:oklch(87.2% .01 258.338)}
:root{--moment-card-orange-100:oklch(95.4% .038 75.164);--moment-card-amber-50:oklch(98.7% .022 95.277);--moment-card-amber-200:oklch(92.4% .12 95.746);--moment-card-amber-300:oklch(87.9% .169 91.605);--moment-card-amber-900:oklch(41.4% .112 45.904);--moment-card-gray-100:oklch(96.7% .003 264.542)}
/* 动态正文采用源独立规则，限定卡片范围以避免文章排版串扰。 */
.moment-card .moment-prose{--font-code:"Maple Mono", "LXGW WenKai", "LXGW WenKai Screen", "LXGW WenKai TC", "SFMono-Regular", Consolas, "Liberation Mono", monospace}
.moment-card .moment-prose{color:var(--fg);word-break:break-word;font-size:.9375rem;line-height:1.7}
.moment-card .moment-prose>*+*{margin-top:.65rem}
.moment-card .moment-prose h1,.moment-card .moment-prose h2,.moment-card .moment-prose h3{color:var(--fg);letter-spacing:-.02em;font-weight:700;line-height:1.4}
.moment-card .moment-prose h1{margin-top:.9rem;margin-bottom:.35rem;font-size:1.18rem}
.moment-card .moment-prose h2{margin-top:.8rem;margin-bottom:.3rem;font-size:1.08rem}
.moment-card .moment-prose h3{margin-top:.7rem;margin-bottom:.25rem;font-size:.98rem}
.moment-card .moment-prose p{color:inherit;margin-block:.35rem}
.moment-card .moment-prose strong,.moment-card .moment-prose b{color:var(--fg);font-weight:700}
.moment-card .moment-prose em,.moment-card .moment-prose i{font-style:italic}
.moment-card .moment-prose s,.moment-card .moment-prose del{opacity:.75;text-decoration:line-through}
.moment-card .moment-prose a{color:#0284c7;text-underline-offset:3px;font-weight:500;text-decoration:underline;transition:color .15s}
.moment-card .moment-prose a:hover{color:#0369a1}
.dark .moment-card .moment-prose a{color:#38bdf8}
.dark .moment-card .moment-prose a:hover{color:#7dd3fc}
.moment-card .moment-prose ul,.moment-card .moment-prose ol{margin-block:1rem;padding-inline-start:1.25rem}
.moment-card .moment-prose ul{list-style-type:disc}
.moment-card .moment-prose ol{list-style-type:decimal}
.moment-card .moment-prose li{margin-block:.4rem}
.moment-card .moment-prose ul li::marker{color:#94a3b8;font-size:calc(1em - 1px)}
.dark .moment-card .moment-prose ul li::marker{color:#94a3b8}
.moment-card .moment-prose blockquote{background:#f59e0b14;border-inline-start:3px solid #f59e0b;border-radius:0 .5rem .5rem 0;margin-block:.6rem;padding:.45rem .75rem}
.dark .moment-card .moment-prose blockquote{background:#f59e0b1f;border-inline-start-color:#fbbf24}
.moment-card .moment-prose blockquote p{color:var(--fg);opacity:.9;margin:0;font-size:.9em}
.moment-card .moment-prose pre{color:#f8fafc;max-width:100%;font-family:var(--font-code);background:#111827;border-radius:.75rem;margin-block:.6rem;padding:.75rem 1rem;font-size:.8125rem;line-height:1.6;overflow-x:auto}
.dark .moment-card .moment-prose pre{background:#090d16;border:1px solid #ffffff14}
.moment-card .moment-prose code{font-family:var(--font-code)}
.moment-card .moment-prose :not(pre)>code{color:#0369a1;background:#0284c714;border:1px solid #0284c72e;border-radius:.3rem;padding:.1rem .35rem;font-size:.85em}
.dark .moment-card .moment-prose :not(pre)>code{color:#7dd3fc;background:#38bdf81f;border-color:#38bdf833}
.moment-card .moment-prose img:not(.twemoji){object-fit:contain;border-radius:.75rem;max-width:100%;max-height:24rem;margin-top:.5rem;margin-bottom:.5rem}
.moment-card .moment-prose .twemoji{border-radius:0;max-width:none;max-height:none;margin-top:0;margin-bottom:0}
.private-page-tools{position:sticky;top:calc(max(36px,env(safe-area-inset-top)) + 68px);z-index:49;display:flex;align-items:center;gap:12px;flex-wrap:wrap;width:fit-content;margin:8px 16px 0 auto;max-width:calc(100vw - 32px);font-size:12px;background:var(--bg);padding:10px 16px;border:1px solid var(--border);border-radius:16px;box-shadow:0 4px 16px #0002}.private-page-tools span{color:var(--muted)}.private-page-tools a,.private-page-tools button{color:var(--primary)}.private-content-tools{display:flex;gap:12px;justify-content:flex-end;font-size:12px;margin:8px 0;color:var(--primary)}.moment-card .private-content-tools{opacity:0;transition:opacity .15s}.moment-card:hover .private-content-tools,.moment-card:focus-within .private-content-tools{opacity:1}.inline-manager{padding:0!important;margin:0!important;max-width:none!important}.inline-manager>.section-heading,.inline-manager>.admin-tabs{display:none}.message-form .character-count{font-size:10px;text-align:right;color:var(--muted);margin:2px 0 8px}
@media(max-width:767px){.private-page-tools{top:calc(max(12px,env(safe-area-inset-top)) + 70px)}}
@media(max-width:639px){.moments-page{padding-bottom:80px}.moment-cover{height:260px}.moment-profile{right:20px}.moment-feed{padding:0 16px}.moment-card .private-content-tools{opacity:1}.moment-notifications{left:16px}.private-page-tools>span{display:none}}
/* 归档的标题在左、等宽日期在右，来自 article-list:142/250 的公开结构。 */
/* 动态评论采用moments:773–834的独立输入布局；隐私说明保留在容器外。 */
.moment-card .moment-comment-form{margin-top:16px;padding:0;background:none}
.comment-compose{border:1px solid #fde68ab3;border-radius:16px;background:#ffffffe6;box-shadow:0 1px 2px #0000000d;transition:background-color .15s,border-color .15s}
.comment-compose:focus-within{border-color:#fcd34d;background:#fff}
.comment-compose textarea{display:block;min-height:64px;width:100%;resize:none;background:transparent;border:0;border-radius:0;padding:12px 14px 0;color:#1e293b;font-size:14px;line-height:24px;outline:none;box-shadow:none}
.comment-compose textarea::placeholder{color:#94a3b8}
.comment-compose-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px 8px}
.comment-compose-tools{display:flex;align-items:center;gap:4px;min-width:0}
.comment-compose-tools .character-count{padding:0 4px;margin:0;font-size:11px;line-height:16px;color:#94a3b8;font-variant-numeric:tabular-nums}
.moment-card .comment-send{display:inline-flex;align-items:center;gap:6px;height:36px;min-height:36px;padding:0 14px;border:0;border-radius:999px;background:#0ea5e9;color:#fff;font-size:12px;line-height:16px;font-weight:600;box-shadow:0 1px 2px #0ea5e933;transition:background-color .15s,transform .15s}
.comment-send svg{width:14px;height:14px}.moment-card .comment-send:hover{background:#0284c7}.comment-send:active{transform:scale(.95)}.comment-send:disabled{cursor:not-allowed;opacity:.45;transform:none}
.moment-comment-form .message-notice{margin:8px 4px 0;font-size:10px;line-height:16px}.moment-comment-form .form-status{margin:8px 4px 0;font-size:14px;line-height:20px}
.dark .comment-compose{border-color:#1e293b;background:#020617b3}.dark .comment-compose:focus-within{background:#020617}.dark .comment-compose textarea{color:#f1f5f9}.dark .comment-compose textarea::placeholder{color:#64748b}
.comment-delete-panel{position:fixed;inset:auto;margin:0;max-width:calc(100vw - 32px);border:1px solid #e2e8f0e6;border-radius:12px;background:#fff;padding:10px;color:#334155;font-size:12px;line-height:16px;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;z-index:90;outline:none}
.comment-delete-panel p{margin:0 0 8px;font-weight:500}.comment-delete-panel>div{display:flex;align-items:center;justify-content:flex-end;gap:8px}.comment-delete-panel button{border:0;border-radius:4px;padding:4px 8px;font-size:11px;line-height:16px;transition:background-color .15s;color:#64748b}.comment-delete-panel [data-delete-cancel]:hover{background:#f1f5f9}.comment-delete-panel [data-delete-confirm]{background:#ef4444;color:#fff;font-weight:500}.comment-delete-panel [data-delete-confirm]:hover{background:#dc2626}.dark .comment-delete-panel{border-color:#334155;background:#0f172a;color:#e2e8f0}.dark .comment-delete-panel [data-delete-cancel]{color:#94a3b8}.dark .comment-delete-panel [data-delete-cancel]:hover{background:#1e293b}
body[data-section=posts] .content{max-width:896px;padding:176px 32px 104px}.section-heading{margin-bottom:40px;padding-bottom:16px;line-height:20px}.section-heading>span:first-child{font-size:14px}.archive-year{font-size:20px;line-height:28px;margin:32px 0 8px}.archive-year:first-of-type{margin-top:0}.article-row{padding:6px 0;border:0;align-items:flex-start;gap:16px;line-height:28px}.article-row h3{font-size:16px;font-weight:400;line-height:28px}.article-row time{font:14px/20px ui-monospace,monospace;color:#a3a3a3;margin-top:2px}.tags{gap:6px;margin-top:4px}.tags span{font-size:11px;line-height:20px;border-radius:20px;padding:0 8px;background:#0ea5e91f;color:#0369a1;font-weight:500}.tags span:nth-child(2){background:#10b9811f;color:#047857}.dark .tags span{color:#7dd3fc}.dark .tags span:nth-child(2){color:#6ee7b7}
body[data-section=posts] .reading{max-width:896px;padding-top:176px}.back-link{font-size:14px;line-height:20px}.article-heading{margin:24px 0}.article-heading h1{font-size:30px;line-height:36px;font-weight:700;margin:0 0 16px}.article-meta{font:12px/16px ui-monospace,monospace;margin-bottom:8px}.article-description-quote{border-left:3px solid var(--primary);padding:4px 0 4px 18px;margin:24px 0;color:var(--muted);font-size:14px;line-height:24px}.article-credit{font-size:11px;line-height:1.7;padding:14px 18px;border:1px solid var(--border);border-radius:12px;margin:24px 0 32px;color:var(--muted)}.article-credit strong{color:var(--primary)}.article-credit a{text-decoration:underline;text-underline-offset:3px}.article-credit p{margin:4px 0 0}.article-prose{font-size:15px;line-height:1.8}.article-prose>*+*{margin-top:20px}.article-prose p{color:var(--muted);margin-bottom:0}.article-prose h2,.article-prose h3{scroll-margin-top:112px;letter-spacing:-.03em;font-weight:700}.article-prose h2{font-size:20px;line-height:27px;margin-top:36px}.article-prose h3{font-size:17px;line-height:23.8px;margin-top:28px}.article-prose ul{list-style-type:square}.article-prose li+li{margin-top:9.6px}.article-prose pre{position:relative;font-size:13px;line-height:22px;padding:24px 20px;white-space:pre;overflow-x:auto}.article-prose pre .line{display:inline}.article-prose pre code{white-space:pre}.code-copy{position:absolute;right:8px;top:8px;border:1px solid #ffffff29;border-radius:6px;color:#b6c2cc;background:#16212c;padding:3px 8px;font-size:10px;line-height:16px}.chapter-mobile{display:none}.adjacent-articles{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--border);padding-top:24px;margin-top:48px}.adjacent-articles>a{display:flex;flex-direction:column;max-width:48%;gap:8px}.adjacent-articles>a:last-child{text-align:right}.adjacent-articles small{color:var(--muted)}
.island.command-open{width:min(576px,calc(100vw - 32px));height:76px}.island.command-open .island-surface{border-radius:25.6px;border-color:color-mix(in srgb,var(--accent),transparent 76%);box-shadow:0 20px 44px -22px #000000e0,inset 0 1px #ffffff12}.island.command-open .island-trigger,.island.command-open .island-nav,.island.command-open .theme-toggle{display:none}#island-command{position:absolute;inset:0;display:grid;grid-template-rows:44px 16px;grid-template-columns:minmax(0,1fr) 44px;align-content:center;column-gap:4px;padding:7.2px 8.8px 6.4px 13.6px;color:#fff;animation:command-panel-in .32s cubic-bezier(.22,1,.36,1) both}#island-command label{display:flex;flex-direction:row;align-items:center;gap:8.8px;margin:0;min-width:0;grid-area:1/1}#island-command label>span{font:700 18.4px/24px "Maple Mono",ui-monospace,monospace;color:var(--accent);flex:none}#island-command input{border:0;background:transparent;font:13px/20px "Maple Mono",ui-monospace,monospace;color:#fff;width:100%;min-width:0;padding:0;outline:none;caret-color:var(--accent)}#island-command input::placeholder{color:#ffffff57}#island-command>button{grid-area:1/2;width:44px;height:44px;display:grid;place-items:center;font:16px/24px "Maple Mono",ui-monospace,monospace;color:#ffffff94;transition:color .15s,transform .18s cubic-bezier(.22,1,.36,1)}#island-command>button:hover,#island-command>button:focus-visible{color:#fff;transform:translateX(1px)}#island-hint{grid-column:1/-1;margin:0;padding-left:27.2px;color:#ffffff8f;font:10px/16px "Maple Mono",ui-monospace,monospace;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes command-panel-in{from{opacity:0;transform:translateY(-3.2px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:767px){#island-command{padding-left:12px}#island-hint{padding-left:24.8px}}@media(prefers-reduced-motion:reduce){#island-command{animation:none}}
@media(max-width:767px){.topbar{top:calc(max(12px,env(safe-area-inset-top)) + 10px)}}
@media(max-width:639px){.footer{font-size:11px;gap:6px}.hero{padding:96px 16px}.home-composition{height:220px}.introduction{height:20px;min-height:20px;line-height:20px;font-size:14px;max-width:calc(100vw - 32px);white-space:normal}.electric-avatar #electric-ring{width:206px;height:206px}.current-icon>span{font-size:11px}body[data-section=posts] .content,body[data-section=posts] .reading{padding:116px 16px 48px}.article-row{gap:12px;line-height:24px}.article-row h3{font-size:14px;line-height:24px}.article-row time{font-size:12px;line-height:16px}.article-row .tags{display:none}.article-heading h1{font-size:24px;line-height:32px}.article-prose pre{font-size:11px;padding:26px 14px}.article-credit{padding:12px;font-size:10px}.adjacent-articles{font-size:12px}.chapter-mobile{bottom:16px;left:16px;right:16px}.reading{padding-bottom:104px!important}}
@media(max-width:1279px){.chapter-nav{display:none}.chapter-mobile{display:flex;position:fixed;z-index:45;left:16px;right:16px;bottom:16px;margin:auto;max-width:448px;height:48px;align-items:center;gap:12px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--bg),transparent 6%);backdrop-filter:blur(24px);box-shadow:0 12px 32px -16px #0009;padding:0 14px;font:10px/20px ui-monospace,monospace;color:var(--primary)}.chapter-mobile>span{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:14px/20px Sen,"LXGW WenKai",sans-serif;color:var(--fg)}}
/* 来信详情依据源styles:1059–1185、1355–1378；首字头像为未知外站图片的安全替代。 */
.island[data-relay-active=true]:not(.expanded):not(.command-open):not([data-relay-detail=true]){width:min(510px,calc(100vw - 32px))}
.island[data-transmission-active=true]:not(.expanded):not(.command-open):not([data-relay-detail=true]){width:min(510px,calc(100vw - 32px))}.island[data-transmission-active=true]:not(.expanded) .current-icon{visibility:hidden}.island[data-transmission-active=true] .relay-status{display:none}.transmission-status{position:absolute;right:52px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:6.4px;width:248px;height:44px;padding:0 12px;min-width:0;white-space:nowrap;overflow:hidden;color:#e8ddff;font:12px/20px "Maple Mono",ui-monospace,monospace;letter-spacing:-.025em}.transmission-status>[data-transmission-label]{overflow:hidden;text-overflow:ellipsis}.transmission-indicator{display:grid;place-items:center;width:14px;height:14px;flex:none;border:1px solid #d7c2ffb3;border-radius:999px;color:white;font-size:10px}.transmission-status[data-state=transmitting] .transmission-indicator{background:#d7c2ff;border-color:transparent;box-shadow:0 0 #d7c2ff8c;animation:transmission-pulse 1s ease-out infinite}.transmission-status:is([data-state=delivered],[data-state=queued]) .transmission-indicator{color:#a7f3d0;background:#10b98152;border-color:#6ee7b7cc}.transmission-status:is([data-state=network-error],[data-state=rate-limited]){color:#fed7aa}.transmission-status:is([data-state=network-error],[data-state=rate-limited]) .transmission-indicator{color:#fed7aa;background:#ea580c3d;border-color:#fb923cb8}.transmission-status[hidden],.island.expanded .transmission-status,.island.command-open .transmission-status,.island[data-relay-detail=true] .transmission-status{display:none}@keyframes transmission-pulse{70%{box-shadow:0 0 0 5.6px #d7c2ff00}to{box-shadow:0 0 #d7c2ff00}}@media(max-width:767px){.transmission-status{left:96px;right:52px;width:auto;padding:0 4px}}@media(prefers-reduced-motion:reduce){.transmission-indicator{animation:none!important}}
.island:not([data-section=home]) .island-trigger .lights{display:none}
.transmission-indicator{font-weight:800;line-height:1}
.island[data-signal-active=true]:not(.expanded):not(.command-open):not([data-relay-detail=true]){width:min(510px,calc(100vw - 32px))}
.island[data-signal-active=true]:not(.expanded) .current-icon{visibility:hidden}.island[data-signal-active=true] .relay-status{display:none}
.signal-status{position:absolute;right:52px;top:0;z-index:1;display:flex;align-items:center;gap:6.4px;width:248px;min-width:0;height:44px;padding:0 12px;color:#ffffffb8;background:none;border:0;font:12px/20px "Maple Mono",ui-monospace,monospace;letter-spacing:-.025em;text-align:start;white-space:nowrap;overflow:hidden}
.signal-status>:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.signal-status:before{content:"";position:absolute;left:-3.2px;top:10.4px;bottom:10.4px;width:1px;background:#ffffff24}.signal-status[data-kind=locked]{color:#e8ddff}.signal-status[data-kind=oldest]{color:#fde9a9}.signal-indicator{flex:none;color:#d7c2ff;filter:drop-shadow(0 0 4.8px #d7c2ff85)}.signal-status[data-kind=oldest] .signal-indicator{color:#f6cf65;filter:drop-shadow(0 0 6.4px #f6cf65ad)}.signal-avatar{display:grid;place-items:center;flex:none;width:20px;height:20px;border-radius:50%;background:#f8fafc;color:#172033;border:1px solid #ffffff7a}
.signal-status[hidden],.island.expanded .signal-status,.island.command-open .signal-status,.island[data-relay-detail=true] .signal-status{display:none}
.signal-avatar{width:18px;height:18px;border-color:#ffffff5c;box-shadow:0 0 7.2px #d7c2ff47}
.signal-status[data-kind=oldest] .signal-indicator{animation:signal-oldest 2.8s ease-in-out 2}
@keyframes signal-oldest{0%,to{opacity:.62;transform:scale(.92)}42%{opacity:1;transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.signal-status .signal-indicator{animation:none}}
@media(min-width:768px){.island[data-signal-active=true]:not(.expanded):not(.command-open):not([data-relay-detail=true]) .island-trigger{right:300px}}
@media(max-width:767px){.signal-status{left:96px;right:52px;width:auto;padding:0 4px}.signal-status:before{display:none}}
.media-status{display:none}
@media(min-width:768px){.island[data-media-active=true]:not(.expanded):not(.command-open):not([data-relay-detail=true]){width:min(510px,calc(100vw - 32px))}.island[data-media-active=true]:not(.expanded):not(.command-open):not([data-relay-detail=true]) .island-trigger{right:300px}.island[data-media-active=true]:not(.expanded) .current-icon{visibility:hidden}.media-status{position:absolute;right:52px;top:0;z-index:1;display:flex;align-items:center;gap:6.4px;width:248px;min-width:0;height:44px;padding:0 12px;color:#ffffffc7;background:none;border:0;font:12px/20px "Maple Mono",ui-monospace,monospace;letter-spacing:-.025em;text-align:start;white-space:nowrap;overflow:hidden}.media-status>:first-child{flex:none}.media-status:before{content:"";position:absolute;left:-3.2px;top:10.4px;bottom:10.4px;width:1px;background:#ffffff24}.media-title-viewport{min-width:0;white-space:nowrap;overflow:hidden}.media-title-track{will-change:transform;width:max-content;animation:media-marquee 12s linear infinite;display:flex}.media-title-segment{white-space:nowrap;flex:none;padding-inline-end:32px}.media-status:is(:hover,:focus-visible) .media-title-track{animation-play-state:paused}@keyframes media-marquee{to{transform:translate(-50%)}}}
.media-status[hidden],.island.expanded .media-status,.island.command-open .media-status,.island[data-relay-detail=true] .media-status{display:none}
.media-status svg{width:15px;height:15px}.media-status:is(:hover,:focus-visible){color:#fff;background:none}
.island[data-route-feedback=true]:not(.expanded):not(.command-open){width:min(max(256px,var(--route-feedback-width,256px)),calc(100vw - 32px))}.island[data-route-feedback=true] .island-trigger{right:32px}.island[data-route-feedback=true] .current-icon,.island[data-route-feedback=true] .lights,.island[data-route-feedback=true] .relay-status{display:none}.route-feedback{color:#d8f5e3;font:12px/20px "Maple Mono",ui-monospace,monospace;letter-spacing:-.025em;white-space:nowrap;text-overflow:clip;display:inline-block;overflow:hidden;animation:route-feedback-in .36s steps(14,end) both}.route-feedback[hidden]{display:none}@keyframes route-feedback-in{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@media(prefers-reduced-motion:reduce){.media-title-track{will-change:auto;animation:none}.media-title-segment+.media-title-segment{display:none}}
@media(min-width:768px){.island[data-transmission-active=true]:not(.expanded):not(.command-open):not([data-relay-detail=true]) .island-trigger{right:300px}}
.island[data-relay-active=true]:not(.expanded) .current-icon{visibility:hidden}
.relay-status{position:absolute;right:52px;top:0;height:44px;width:248px;display:flex;align-items:center;padding:0 12px;color:#ffffffc7;font:12px "Maple Mono",monospace;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:none}
.relay-status[hidden],.relay-detail[hidden],.island.expanded .relay-status,.island.command-open .relay-status{display:none}
.island[data-relay-detail=true]{width:min(576px,calc(100vw - 32px));height:204px}
.island[data-relay-detail=true] .island-surface{border-color:#d7c2ff38;border-radius:28px;box-shadow:0 22px 54px -22px #000000d1,inset 0 1px #ffffff12}
.island[data-relay-detail=true] .island-trigger,.island[data-relay-detail=true] .island-nav,.island[data-relay-detail=true] .theme-toggle{pointer-events:none;opacity:0;visibility:hidden}
.relay-detail{position:absolute;inset:0;z-index:2;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:16px 17.6px 14.4px;color:#ffffffe0;min-width:0;animation:relay-detail-in .44s var(--island-easing) 70ms both}
.relay-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10.4px;min-width:0}.relay-heading>div{display:grid;gap:1.28px;min-width:0}.relay-heading>div>span{color:#d7c2ff;font:10px "Maple Mono",monospace;letter-spacing:.08em}.relay-heading strong{font-size:14px;font-weight:650;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.relay-heading time{color:#ffffffbd;font:10px "Maple Mono",monospace;white-space:nowrap}
.relay-avatar{display:grid;place-items:center;width:32px;height:32px;background:#f8fafc;color:#172033;border:1px solid #ffffff7a;border-radius:50%;box-shadow:0 0 8.8px #d7c2ff57}
.relay-message{margin:0;color:#ffffffd1;white-space:pre-wrap;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#d7c2ff6b transparent;min-height:0;padding:0 7.2px 0 2.4px;font-size:13px;line-height:1.55;user-select:text}
.relay-actions{display:flex;justify-content:flex-end;align-items:center;gap:7.2px;min-width:0}.relay-actions>span{color:#ffffff6b;font-size:10px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-right:auto}.relay-actions button{flex:none;min-height:40px;border:1px solid #ffffff24;border-radius:999px;padding:0 14.4px;color:#ffffffc7;font-size:11px;font-weight:600;background:none}.relay-actions button:hover,.relay-actions button:focus-visible{color:white;border-color:#d7c2ff7a;transform:translateY(-1px)}.relay-error{color:#fda4af;font-size:11px}.relay-error[hidden]{display:none}
@keyframes relay-detail-in{from{opacity:0;transform:translateY(-5.6px) scale(.97)}to{opacity:1;transform:none}}
@media(max-width:767px){.island[data-relay-detail=true]{width:calc(100vw - 32px);height:212px}.relay-detail{gap:10.4px;padding:14.4px}.relay-heading time{max-width:116px;overflow:hidden;text-overflow:ellipsis}.relay-actions>span{display:none}.relay-status{left:96px;right:52px;width:auto;padding:0 4px}}
@media(prefers-reduced-motion:reduce){.relay-detail{animation:none}}
.moment-month{display:flex;align-items:center;gap:12px;margin:24px 0 16px;padding:6px 0;font-family:inherit;font-size:12px;line-height:16px;font-weight:600;letter-spacing:.025em;color:#4b5563}
.moment-month>span{border:1px solid #ffedd5;background:#ffffffd9;border-radius:999px;padding:4px 12px;white-space:nowrap}
.moment-month:before,.moment-month:after{content:"";height:1px;display:block;background:linear-gradient(to right,transparent,#ffedd5,#fed7aa)}
.moment-month:before{width:64px;flex:none}.moment-month:after{flex:1;background:linear-gradient(to right,#fed7aa,#ffedd5,transparent)}
.dark .moment-month{color:#d1d5db}.dark .moment-month>span{border-color:#374151;background:#111827d9}.dark .moment-month:before{background:linear-gradient(to right,transparent,#4b5563,#4b5563)}.dark .moment-month:after{background:linear-gradient(to right,#4b5563,#4b5563,transparent)}
.gallery-failure{display:grid;aspect-ratio:4/3;width:100%;place-items:center;color:var(--muted)}.gallery-failure svg{width:28px;height:28px}.moment-media [data-gallery-button]:disabled{cursor:default;opacity:1}.gallery-preview-failure{width:288px;border-radius:calc(.35rem * 1.8);background:color-mix(in oklab,#000 40%,transparent);color:color-mix(in oklab,#fff 75%,transparent);backdrop-filter:blur(12px)}.gallery-preview-failure svg{width:40px;height:40px}
#media-preview{width:min(92vw,1152px);max-width:none;max-height:96dvh;margin:auto;padding:0;border:0;background:transparent;outline:none;box-shadow:none;overflow:visible}
#media-preview::backdrop{background:#000c;backdrop-filter:blur(12px)}
#media-preview>.dialog-head{display:none}
#media-preview>img{width:auto;height:auto;max-height:56dvh;max-width:100%;object-fit:cover;border-radius:calc(.35rem * 1.8);margin:0 auto;box-shadow:0 25px 50px -12px #00000040;filter:drop-shadow(0 25px 25px #00000026)}
#media-preview>.gallery-preview-failure{margin:0 auto}
#media-preview .preview-controls{justify-content:center;gap:10px;margin-top:30px}
#media-preview .preview-controls>span,#media-preview[data-single-image=true] .preview-controls{display:none}
#media-preview .preview-controls button{width:36px;height:36px;display:grid;place-items:center;border:1px solid color-mix(in oklab,#fff 20%,transparent);border-radius:999px;background:color-mix(in oklab,#000 50%,transparent);color:white;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;backdrop-filter:blur(12px)}
#media-preview .preview-controls button:hover{background:color-mix(in oklab,#000 80%,transparent)}
#media-preview .preview-controls button svg{width:20px;height:20px}
#media-preview .preview-controls button:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}
.moment-like-icon{position:relative;display:flex;width:20px;height:20px;align-items:center;justify-content:center}.moment-like-count{font-variant-numeric:tabular-nums}.moment-like-icon>span{display:none;pointer-events:none;position:absolute;inset:-4px;border-radius:999px;border:1px solid #f87171;background:#f8717133}.moment-like-icon>span.heart-ripple-wave-2{border-color:#fda4afb3;background:#fb718526}.moment-card [data-like]{padding:0;transition:color .15s}.moment-card [data-like]:hover{color:#ef4444}.moment-card [data-like]:disabled{cursor:default;opacity:1}.moment-card [data-like]:active svg{transform:scale(1.25)}.moment-like-error{margin:8px 0 0;color:#b4493d;font-size:14px}.moment-card [data-like][data-like-animating=true] .moment-like-icon>span{display:block}.moment-card [data-like][data-like-animating=true] svg{animation:heart-pop .46s cubic-bezier(.17,.89,.32,1.28) both}.moment-card [data-like][data-like-animating=true] .heart-ripple-wave-1{animation:heart-ripple-1 .62s cubic-bezier(0,0,.2,1) both}.moment-card [data-like][data-like-animating=true] .heart-ripple-wave-2{animation:heart-ripple-2 .78s cubic-bezier(0,0,.2,1) both}
@keyframes heart-pop{0%{transform:scale(1)}28%{transform:scale(.68)}56%{transform:scale(1.36)}78%{transform:scale(.94)}to{transform:scale(1)}}
@keyframes heart-ripple-1{0%{opacity:.9;transform:scale(.35)}45%{opacity:.55}to{opacity:0;transform:scale(2.4)}}
@keyframes heart-ripple-2{0%{opacity:.75;transform:scale(.45)}55%{opacity:.35}to{opacity:0;transform:scale(3.2)}}
@media(prefers-reduced-motion:reduce){.moment-card [data-like][data-like-animating=true] svg{animation:none}.moment-card [data-like][data-like-animating=true] .moment-like-icon>span{display:none}}
.comments.comment-reveal{display:grid;grid-template-rows:1fr;opacity:1;padding-top:0;transform-origin:top;transition:grid-template-rows .2s cubic-bezier(.16,1,.3,1),opacity .2s cubic-bezier(.16,1,.3,1);will-change:grid-template-rows,opacity}.comment-reveal[aria-hidden=true]{grid-template-rows:0fr;opacity:0;pointer-events:none}.comment-inner{min-height:0;overflow:hidden}.comment-content{padding-top:28px}@media(prefers-reduced-motion:no-preference){.comment-reveal{transform:translateZ(0)}}@media(prefers-reduced-motion:reduce){.comments.comment-reveal{transition:none;will-change:auto}}
.comment-group{transition:background-color .15s,color .15s}.comment-group[data-recent=true]{background:rgb(240 249 255 / .55)}.dark .comment-group[data-recent=true]{background:rgb(8 47 73 / .2)}
.comment-pages [data-comment-expand]{display:inline-flex;align-items:center;gap:6px}.comment-page-spinner{width:12px;height:12px;animation:comment-page-spin 1s linear infinite}@keyframes comment-page-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.comment-page-spinner{animation:none}}
.comment-sending{font-size:11px;color:#0ea5e9}
/* 六色与紧凑手机标签依据article-tags-2wiv2uB_.js:1；不改变其它内容标签。 */
.tags.article-tags span{padding:2px 8px;font-family:Sen,"LXGW WenKai",sans-serif}
.tags.article-tags span.article-tag-tone-0{background:color-mix(in oklab, oklch(68.5% .169 237.323) 12%, transparent);color:oklch(50% .134 242.749)}.tags.article-tags span.article-tag-tone-1{background:color-mix(in oklab, oklch(69.6% .17 162.48) 12%, transparent);color:oklch(50.8% .118 165.612)}.tags.article-tags span.article-tag-tone-2{background:color-mix(in oklab, oklch(76.9% .188 70.08) 14%, transparent);color:oklch(55.5% .163 48.998)}.tags.article-tags span.article-tag-tone-3{background:color-mix(in oklab, oklch(64.5% .246 16.439) 12%, transparent);color:oklch(51.4% .222 16.935)}.tags.article-tags span.article-tag-tone-4{background:color-mix(in oklab, oklch(60.6% .25 292.717) 12%, transparent);color:oklch(49.1% .27 292.581)}.tags.article-tags span.article-tag-tone-5{background:color-mix(in oklab, oklch(71.5% .143 215.221) 12%, transparent);color:oklch(52% .105 223.128)}
.dark .tags.article-tags span.article-tag-tone-0{color:oklch(82.8% .111 230.318)}.dark .tags.article-tags span.article-tag-tone-1{color:oklch(84.5% .143 164.978)}.dark .tags.article-tags span.article-tag-tone-2{color:oklch(87.9% .169 91.605)}.dark .tags.article-tags span.article-tag-tone-3{color:oklch(81% .117 11.638)}.dark .tags.article-tags span.article-tag-tone-4{color:oklch(81.1% .111 293.571)}.dark .tags.article-tags span.article-tag-tone-5{color:oklch(86.5% .127 207.078)}
@media(max-width:639px){.article-row .tags.article-tags{display:flex}.article-row .tags.article-tags span{font-size:10px;line-height:16px}}
.archive-groups{display:flex;flex-direction:column;gap:32px}.archive-group ol{list-style:none;margin:8px 0 0;padding:0}.archive-group .archive-year{margin:0}.archive-pinned{margin:0;color:#c66a3d}.archive-pinned svg{display:block;width:16px;height:16px}.dark .archive-pinned{color:#d58a5c}.article-empty{padding:48px 0}.article-empty h2{font-size:24px;font-weight:700;letter-spacing:-.025em}.article-empty p{max-width:672px;margin-top:16px;font-size:14px;line-height:1.625;color:var(--muted)}.article-empty a{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;font-weight:500}.article-empty a:hover{color:var(--primary)}@media(min-width:640px){.article-empty{padding:64px 0}.article-empty p{font-size:16px;line-height:32px}}
.archive-heading{flex-wrap:wrap;gap:16px}.archive-heading>.archive-title:first-child{display:inline-flex;align-items:center;gap:8px;font-size:11px;line-height:1.5;font-weight:500}.archive-title>.icon-sparkles{flex:none;width:14px;height:14px;animation:about-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@media(min-width:640px){.archive-heading>.archive-title:first-child{font-size:14px;line-height:20px}}
/* 文章导航复用原站字体回退链，不增加远程字体请求。 */
:root{--article-nav-sans:"Sen", "Sen Variable", "LXGW WenKai", "LXGW WenKai Screen", "LXGW WenKai TC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--article-nav-mono:"Maple Mono", "LXGW WenKai", "LXGW WenKai Screen", "LXGW WenKai TC", "SFMono-Regular", Consolas, "Liberation Mono", monospace}
/* about-DUMCewDY.js:1的公共标题与分享控件；仅复用既有源字体链。 */
.about-intro>h1,.about-topline>span,.about-sharing button{font-family:var(--article-nav-sans)}.about-sharing button{line-height:20px}
/* about-DUMCewDY.js:191-309 的公共排版；个人资料与本站隐私说明保持独立。 */
.about-stack-group code{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}
.about-page{font-family:var(--article-nav-sans);--about-secondary:#e8e4d9;--about-secondary-foreground:#27352e}.dark .about-page{--about-secondary:#25322b;--about-secondary-foreground:#e6e3d8}.about-sharing{font-family:var(--article-nav-mono);line-height:20px;color:var(--fg)}.about-sharing [data-about-phase]{color:var(--muted)}.about-connections a{font-weight:400;gap:normal}.about-connections a>span:first-child{font-weight:500;line-height:20px}.about-connections a>span:last-child{font-family:var(--article-nav-mono);font-weight:400;line-height:16px}.about-stack-group h3{line-height:20px}.about-stack-group header>span{font-family:var(--article-nav-mono)}.about-stack-group code{font-family:var(--article-nav-mono);line-height:16px;border-radius:4.48px;color:var(--about-secondary-foreground);background:color-mix(in oklab,var(--about-secondary) 70%,transparent)}.about-stack-group code:hover{background:color-mix(in oklab,var(--primary) 10%,transparent)}
/* article-states-IPyWBsbA.js:1与article-list-C-SeAF57.js:1的空态及置顶容器。 */
.article-empty{font-family:var(--article-nav-sans)}.article-empty>h2{margin:0;line-height:32px}.archive-pinned{font:400 14px/21px var(--article-nav-sans)}
/* article-list-C-SeAF57.js:1的年份与归档行，不改变文章正文。 */
.archive-group .archive-year{font:700 18px/28px var(--article-nav-sans);letter-spacing:-.025em}.archive-group .article-row{font-family:var(--article-nav-sans);font-size:14px}.archive-group .article-row time{font-family:var(--article-nav-mono);color:oklch(70.8% 0 none)}@media(min-width:640px){.archive-group .archive-year{font-size:20px}.archive-group .article-row{font-size:16px}}
.reading>.back-link,.reading>.adjacent-articles{font-family:var(--article-nav-sans)}
.article-meta>.article-tags{font:inherit;align-items:center}
.article-heading>.article-meta{align-items:center}
.reading>.article-heading{margin:24px 0 0}.reading>.article-heading>h1{margin:0;letter-spacing:-.025em;text-wrap:balance;font-family:var(--article-nav-sans)}.article-heading>.article-meta{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;font:12px/16px var(--article-nav-sans)}.article-meta>time,.article-meta>.article-meta-separator,.article-meta>[data-reading-time],.article-meta>.article-meta-pin{font-family:var(--article-nav-mono)}.article-meta>.article-meta-pin{margin-right:0}.article-meta>.article-tags{margin-top:0}.article-meta>.article-tags span{font-family:var(--article-nav-sans)}
.reading>.back-link{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:16px;font-weight:500;transition:color .15s}.reading>.back-link:hover{color:var(--primary)}.reading>.back-link>.icon{width:14px;height:14px}.reading>.adjacent-articles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:40px;padding-top:0;border:0;font-size:14px;line-height:21px}.adjacent-articles>a{max-width:none;gap:normal;padding:16px 0;justify-content:space-between;align-items:flex-start}.adjacent-articles>a:last-child{align-items:flex-end}.adjacent-articles small{display:inline-flex;align-items:center;gap:8px;font:12px/16px var(--article-nav-mono)}.adjacent-articles small>.icon{width:16px;height:16px}.adjacent-articles>a>span{margin-top:8px;max-width:320px;font-weight:600;line-height:24px}.adjacent-articles>a:hover>span{color:var(--primary)}@media(min-width:640px){.reading>.back-link{font-size:14px;line-height:20px}}
.article-quick-edit{position:fixed;right:20px;bottom:20px;z-index:40}.article-quick-edit button{display:inline-flex;min-height:40px;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:color-mix(in srgb,var(--bg) 90%,transparent);border-radius:9999px;padding:8px 16px;color:var(--fg);font-size:12px;line-height:16px;font-weight:600;backdrop-filter:blur(12px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transition:all .15s}.article-quick-edit .icon{width:14px;height:14px;transition:transform .15s}.article-quick-edit button:hover{border-color:color-mix(in srgb,var(--primary) 50%,transparent);background:var(--bg);color:var(--primary)}.article-quick-edit button:hover .icon{transform:scale(1.1)}.article-quick-edit kbd{display:none;border:1px solid color-mix(in srgb,var(--border) 60%,transparent);border-radius:4px;background:color-mix(in srgb,var(--muted) 10%,transparent);padding:2px 6px;font:10px/15px ui-monospace,monospace}@media(min-width:640px){.article-quick-edit button{font-size:14px;line-height:20px}.article-quick-edit kbd{display:inline-block}}@media(max-width:1279px){.reading:has(.chapter-mobile) .article-quick-edit{bottom:80px}}
/* 管理文章页的悬浮入口须进入根层叠上下文，否则主区z1会使其被页脚z2遮住。 */
main:has(.article-quick-edit){z-index:auto}
.article-state-body>[data-page-retry]{display:inline-flex;align-items:center;gap:8px;margin-top:24px;min-height:44px;font-weight:500;color:var(--fg);transition:color .15s}.article-state-body>[data-page-retry]:hover{color:var(--primary)}.article-state-body>[data-page-retry] .icon{width:16px;height:16px;stroke-width:2}.content.page-load-error{max-width:768px;padding-top:176px;padding-bottom:80px;text-align:center}.page-load-error .page-error-code{margin:0;font:12px/16px ui-monospace,monospace;color:#b4493d}.page-load-error h1{margin:16px 0 0;font-size:30px;line-height:36px;font-weight:700}.page-load-error h1+p{margin:16px 0 0;color:var(--muted)}.page-load-error [data-page-retry]{margin-top:32px;min-height:44px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);padding:10px 20px;font-weight:600}body[data-section=guestbook] .page-load-error [data-page-retry]:hover{opacity:.9}.dark .page-load-error .page-error-code{color:#de746a}@media(max-width:639px){.content.page-load-error{padding-top:148px}}
/* 原生dialog位于顶层，章节触发条也须脱离主区父层叠限制，避免页脚遮住。 */
main:has(.chapter-mobile){z-index:auto}#chapter-dialog::backdrop{opacity:1;transition:opacity .22s cubic-bezier(.16,1,.3,1)}#chapter-dialog.closing::backdrop{opacity:0}@starting-style{#chapter-dialog[open]::backdrop{opacity:0}}
.chapter-progress-track>span{height:0}.chapter-progress-track>span.chapter-progress-complete{height:100%}
/* posts._slug第1行k/A/j及源modal-slide-transition，独立SSR使用原生dialog承载焦点。 */
.article-body-wrap{position:relative}.chapter-fallback{margin-top:32px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:16px 0}.chapter-fallback p{margin:0;font:9.92px/1.5 ui-monospace,monospace;letter-spacing:.16em}.chapter-fallback ol{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:14px}.chapter-fallback .chapter-link-number{font:9.92px/1.5 ui-monospace,monospace;opacity:.6;margin-right:4px}.chapter-fallback .chapter-link-rule{display:none}.reading[data-chapters-ready] .chapter-fallback{display:none}.chapter-spine-wrap{display:none;position:absolute;inset-block:0;inset-inline-start:calc(100% + 100px);width:20px;z-index:30}.chapter-spine{position:sticky;top:96px;height:min(58svh,480px);width:20px}.chapter-spine>p{margin:0 0 16px;white-space:nowrap;font:9.28px/1.5 ui-monospace,monospace;letter-spacing:.18em;color:var(--muted)}.chapter-spine-track{position:relative;height:calc(100% - 30px)}.chapter-progress-track{position:absolute;top:12px;bottom:12px;left:0;width:1px;overflow:hidden;background:color-mix(in srgb,var(--border) 30%,transparent)}.chapter-progress-track>span{display:block;width:100%;background:color-mix(in srgb,var(--primary) 25%,transparent);transition:height .3s}.chapter-spine ol{position:relative;display:flex;height:100%;flex-direction:column;justify-content:space-between;list-style:none;margin:0;padding:12px 0}.chapter-spine li{position:relative;display:flex;height:16px;align-items:center}.chapter-spine a{position:absolute;left:-4px;display:flex;width:44px;height:44px;align-items:center;padding-left:4px;outline:none}.chapter-spine-label{pointer-events:none;position:absolute;left:32px;width:min(192px,calc(50vw - 552px));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:12px;line-height:20px;font-weight:500;color:var(--muted);opacity:0;transform:translateX(4px);transition:opacity .2s,transform .2s,color .2s}.chapter-spine-tick{display:block;border-radius:9999px;width:10px;height:2px;background:color-mix(in srgb,var(--muted) 20%,transparent);transition:width .2s,background-color .2s}.chapter-spine .chapter-level-3 .chapter-spine-tick{height:1px}.chapter-spine a[aria-current=location] .chapter-spine-label,.chapter-spine a:hover .chapter-spine-label,.chapter-spine a:focus-visible .chapter-spine-label{opacity:1;transform:none}.chapter-spine a[aria-current=location] .chapter-spine-label{color:var(--fg)}.chapter-spine a:hover .chapter-spine-tick,.chapter-spine a:focus-visible .chapter-spine-tick{width:16px;background:color-mix(in srgb,var(--muted) 40%,transparent)}.chapter-spine a[aria-current=location] .chapter-spine-tick{width:20px;background:color-mix(in srgb,var(--primary) 55%,transparent)}.chapter-mobile .chapter-current-number{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:9999px;background:color-mix(in srgb,var(--primary) 10%,transparent);font:600 9.6px/1.5 ui-monospace,monospace;color:var(--primary)}.chapter-mobile .chapter-current-title{min-width:0;flex:1}.chapter-mobile .chapter-total{flex:none;font:9.92px/1.5 ui-monospace,monospace;color:var(--muted)}.chapter-mobile .icon{width:16px;height:16px;stroke-width:2;color:var(--primary)}#chapter-dialog{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:82dvh;padding:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);border-radius:32px 32px 0 0;background:var(--bg);box-shadow:0 -24px 64px -24px #0008;outline:none;--chapter-start:translateY(calc(100% + 16px));transition:transform .28s cubic-bezier(.16,1,.3,1),opacity .18s ease-out}#chapter-dialog[open]{display:flex;flex-direction:column;animation:chapter-slide-in .28s cubic-bezier(.16,1,.3,1) both}#chapter-dialog.closing{animation:none;transform:var(--chapter-start);opacity:0}#chapter-dialog::backdrop{background:#10171273;backdrop-filter:blur(2px)}.chapter-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);padding:20px 20px 16px}.chapter-drawer-head p{margin:0;font:600 9.6px/1.5 ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase}.chapter-drawer-head h2{margin:4px 0 0;font-size:18px;line-height:28px;font-weight:700}.chapter-drawer-head button{display:grid;place-items:center;width:40px;height:40px;padding:0;border-radius:9999px;background:color-mix(in srgb,var(--muted) 10%,transparent);color:var(--muted);transition:color .15s,background-color .15s}.chapter-drawer-head button .icon{width:16px;height:16px}.chapter-drawer-head button:hover{color:var(--fg)}#chapter-dialog>nav{min-height:0;overflow-y:auto;padding:12px}#chapter-dialog ol{list-style:none;margin:0;padding:0}#chapter-dialog a{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;min-height:48px;gap:8px;padding:8px 12px;border-radius:12px;font-weight:500;color:var(--muted);transition:color .15s,background-color .15s}#chapter-dialog .chapter-level-3 a{margin-left:20px}#chapter-dialog a[aria-current=location]{background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary)}#chapter-dialog a:hover{color:var(--fg)}#chapter-dialog .chapter-link-number{font:9.92px/1.5 ui-monospace,monospace;color:var(--fg)}#chapter-dialog .chapter-link-text{min-width:0;line-height:20px}#chapter-dialog .chapter-link-rule{height:1px;width:20px;background:var(--border)}#chapter-dialog .chapter-level-3 .chapter-link-rule{width:12px}#chapter-dialog a[aria-current=location] .chapter-link-rule{background:var(--primary)}@keyframes chapter-slide-in{from{transform:var(--chapter-start);opacity:0}to{transform:none;opacity:1}}@media(min-width:768px){#chapter-dialog{--chapter-start:translateX(calc(100% + 16px))}}@media(min-width:1280px){.chapter-spine-wrap{display:block}}@media(max-width:1279px){.chapter-mobile{bottom:max(16px,env(safe-area-inset-bottom));z-index:50}}@media(prefers-reduced-motion:reduce){#chapter-dialog[open]{animation:none}#chapter-dialog,.chapter-spine-label,.chapter-spine-tick,.chapter-progress-track>span{transition:none}}@media print{.chapter-mobile{display:none}}
/* 原件article-states的独立404容器；不覆盖其它内容页和API错误。 */
body[data-section=posts] .content.article-state{display:flex;align-items:center;min-height:58svh;padding-top:64px;padding-bottom:64px}.article-state>section{width:100%}.article-state-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--primary);font-size:12px;line-height:16px;font-weight:500;margin:0}.article-state-eyebrow .icon{width:14px;height:14px}.article-state h1{margin:24px 0 0;font-size:30px;line-height:36px;font-weight:700;letter-spacing:-.025em}.article-state-body{margin-top:20px;max-width:672px;color:var(--muted);font-size:14px;line-height:1.625}.article-state-body>p{margin:0}.article-state-body>a{display:inline-flex;align-items:center;min-height:44px;gap:8px;margin-top:24px;font-weight:500;color:var(--fg);transition:color .15s}.article-state-body>a:hover{color:var(--primary)}.article-state-body>a .icon,.article-empty>a .icon{width:16px;height:16px}.article-empty>a{gap:8px;transition:color .15s}.article-meta-pin{display:inline-flex;align-items:center;gap:4px;margin-right:8px;color:#c66a3d;font-weight:600;letter-spacing:.05em}.article-meta-pin svg{width:12px;height:12px}.dark .article-meta-pin{color:#d58a5c}@media(min-width:640px){body[data-section=posts] .content.article-state{padding-top:96px;padding-bottom:96px}.article-state-eyebrow{font-size:14px;line-height:20px}.article-state h1{font-size:48px;line-height:48px}.article-state-body{font-size:16px;line-height:32px}}@media(min-width:1024px){.article-state h1{font-size:30px;line-height:36px}}
/* 卡片独立作用域，避免动态正文与文章段落样式侵入。 */
[data-sonner-toast].font-sans{font-family:Sen,"Sen Variable","LXGW WenKai","LXGW WenKai Screen","LXGW WenKai TC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.private-content-tools button:has(.icon-plus),.private-page-tools button:has(.icon-plus),.section-heading button:has(.icon-plus){display:inline-flex;align-items:center;gap:6px}.private-content-tools .icon-plus,.private-page-tools .icon-plus,.section-heading .icon-plus{width:16px;height:16px}
.x-post-card .x-card-icon{width:16px;height:16px;flex-shrink:0}.x-post-footer [data-x-post-copy]{display:inline-flex;align-items:center;gap:6px}
.article-prose>.x-post-card{width:min(100%,36rem);margin-block:1.25rem}
.prose .x-post-card .x-post-avatar{background:#0f1419;color:#fff;font-size:14px;font-weight:700;overflow:hidden}.prose .x-post-card .x-post-avatar img{display:block;width:40px;height:40px;max-width:none;max-height:none;object-fit:cover;margin:0;border-radius:0}.x-post-avatar:hover,.x-post-follow:hover{opacity:.85}.x-post-card [data-x-post-expand]{font-size:14px;color:#1d9bf0;padding:0;font-weight:400}.x-post-card [data-x-post-expand]:hover{text-decoration:underline}.x-post-photos{display:grid;gap:6px;overflow:hidden;border-radius:16px;border:1px solid #e2e8f0cc;margin-top:12px}.x-post-photos-single{grid-template-columns:1fr}.x-post-photos-multiple{grid-template-columns:repeat(2,minmax(0,1fr))}.x-post-photos>div{position:relative;overflow:hidden;background:#f1f5f9}.prose .x-post-card .x-post-photos img{display:block;width:100%;height:auto;max-height:320px;object-fit:cover;margin:0;border-radius:0}.x-post-date{margin-top:12px;color:#536471;font-size:13px}.x-post-likes{display:inline-flex;align-items:center;gap:6px}.x-post-likes>span:last-child{font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}.x-post-likes>span:first-child{font-size:18px;line-height:16px}.x-post-footer .x-post-likes:hover{color:#f91880}.dark .prose .x-post-card .x-post-avatar{background:#e7e9ea;color:#000}.dark .x-post-date{color:#71767b}.dark .x-post-photos{border-color:#1e293b}.dark .x-post-photos>div{background:#0f172a}
.prose .x-post-card{min-width:0;overflow:hidden;cursor:pointer;border:1px solid #cfd9de66;border-radius:16px;background:#fff;color:#0f1419;padding:16px;margin:16px 0;box-shadow:none;font-family:Sen,"LXGW WenKai",system-ui,sans-serif}.x-post-heading{display:flex;align-items:flex-start;gap:12px}.x-post-author{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.x-post-author>span:last-child{min-width:0}.x-post-author strong{display:block;font-size:15px;line-height:20px;font-weight:700;overflow:hidden;text-overflow:ellipsis}.x-post-handle{display:block;color:#536471;font-size:14px;line-height:20px;overflow:hidden;text-overflow:ellipsis}.x-post-avatar{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#eff3f4;color:#536471;font-size:18px}.x-post-follow{display:flex;align-items:center;justify-content:center;height:28px;padding:0 12px;border-radius:999px;background:#0f1419;color:white!important;font-size:12px;font-weight:600;white-space:nowrap}.x-post-mark{font:700 18px/28px system-ui,sans-serif}.prose .x-post-card .x-post-text{margin:12px 0 0;font-size:14px;line-height:1.625;white-space:pre-wrap;overflow-wrap:anywhere}.x-post-footer{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;border-top:1px solid #f1f5f9;margin-top:10px;padding-top:10px;font-size:14px;color:#536471}.x-post-footer button{padding:0}.x-post-footer a:hover,.x-post-footer button:hover{color:#0f1419}.x-post-author:hover strong{text-decoration:underline}.x-post-card:focus-visible{outline:2px solid var(--primary);outline-offset:4px}
.dark .prose .x-post-card{background:#000;color:#e7e9ea;border-color:#2f3336}.dark .x-post-handle,.dark .x-post-footer{color:#71767b}.dark .x-post-footer{border-color:#2f3336}.dark .x-post-follow{background:#e7e9ea;color:#0f1419!important}.dark .x-post-footer a:hover,.dark .x-post-footer button:hover{color:#fff}
#notifications-dialog{width:calc(100% - 24px);max-width:512px;max-height:80dvh;padding:16px;border-radius:16px;outline:none;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}
#notifications-dialog{--notice-rose-50:oklch(96.9% .015 12.422);--notice-rose-100:oklch(94.1% .03 12.58);--notice-rose-200:oklch(89.2% .058 10.001);--notice-rose-700:oklch(51.4% .222 16.935);--notice-rose-900:oklch(41% .159 10.272);--notice-rose-950:oklch(27.1% .105 12.094);--notice-slate-50:oklch(98.4% .003 247.858);--notice-slate-200:oklch(92.9% .013 255.508);--notice-slate-700:oklch(37.2% .044 257.287);--notice-slate-900:oklch(20.8% .042 265.755);--notice-sky-50:oklch(97.7% .013 236.62);--notice-sky-100:oklch(95.1% .026 236.824);--notice-sky-200:oklch(90.1% .058 230.902);--notice-sky-700:oklch(50% .134 242.749);--notice-sky-900:oklch(39.1% .09 240.876);--notice-sky-950:oklch(29.3% .066 243.157)}
#notifications-dialog[open]{display:flex;flex-direction:column}#notifications-dialog::backdrop{background:#00000073;backdrop-filter:blur(4px)}#notifications-dialog .dialog-head{gap:8px;margin-bottom:0}#notifications-dialog h2{font-size:18px;line-height:28px;font-weight:600}#notifications-dialog .dialog-head button{width:44px;height:44px;flex-shrink:0}#notifications-dialog .dialog-head svg{width:20px;height:20px}#notification-description{font-size:14px;line-height:20px;color:var(--muted);margin:0 0 16px}#notifications-dialog [data-notification-list]{min-height:0;overflow-y:auto;padding-inline-end:4px}#notifications-dialog [data-notification-status]{font-size:14px;line-height:20px;color:#dc2626;margin:12px 0 0}.notification-empty{padding:24px 0;margin:0;text-align:center;font-size:14px;line-height:20px;color:var(--muted)}.notification-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.notification-list .notification-item{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid;border-radius:12px}.notification-avatar{width:36px;height:36px;flex-shrink:0;border-radius:8px;background:var(--card);display:grid;place-items:center;color:var(--primary);font-size:16px;font-weight:600}.notification-item>div{min-width:0;flex:1}.notification-author{display:flex;align-items:center;gap:8px;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:20px;font-weight:600}.notification-unread{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#ef4444}.notification-kind{display:inline-flex;align-items:center;gap:6px;border-radius:9999px;padding:4px 8px;margin:4px 0 0;font-size:12px;line-height:16px;font-weight:500}.notification-kind svg{width:14px;height:14px}.notification-moment{display:block;width:100%;margin-top:8px;padding:8px 12px;border:1px solid color-mix(in srgb,currentColor,transparent 90%);border-radius:8px;background:color-mix(in srgb,var(--bg),transparent 30%);text-align:left}.notification-moment:enabled:hover{background:var(--bg)}.notification-moment:disabled{cursor:default}.notification-moment>span:first-child{display:block;font-size:11px;line-height:16px;font-weight:500;color:var(--muted)}.notification-moment>span:last-child{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;margin-top:4px;font-size:12px;line-height:20px;color:var(--fg)}.notification-comment-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:24px;margin:8px 0 0}.notification-list time{font-size:12px;line-height:16px;margin-top:8px;color:var(--muted)}.notification-like{border-color:color-mix(in oklab,var(--notice-rose-200)80%,transparent)!important;background:color-mix(in oklab,var(--notice-rose-50)70%,transparent)}.notification-like .notification-kind{background:var(--notice-rose-100);color:var(--notice-rose-700)}.notification-unlike{border-color:color-mix(in oklab,var(--notice-slate-200)80%,transparent)!important;background:color-mix(in oklab,var(--notice-slate-50)80%,transparent)}.notification-unlike .notification-kind{background:color-mix(in oklab,var(--notice-slate-200)75%,transparent);color:var(--notice-slate-700)}.notification-comment.notification-item{border-color:color-mix(in oklab,var(--notice-sky-200)80%,transparent)!important;background:color-mix(in oklab,var(--notice-sky-50)70%,transparent)}.notification-comment .notification-kind{background:var(--notice-sky-100);color:var(--notice-sky-700)}
.dark .notification-like{border-color:color-mix(in oklab,var(--notice-rose-900)60%,transparent)!important;background:color-mix(in oklab,var(--notice-rose-950)25%,transparent)}.dark .notification-like .notification-kind{background:color-mix(in oklab,var(--notice-rose-900)50%,transparent);color:var(--notice-rose-200)}.dark .notification-unlike{border-color:color-mix(in oklab,var(--notice-slate-700)70%,transparent)!important;background:color-mix(in oklab,var(--notice-slate-900)45%,transparent)}.dark .notification-unlike .notification-kind{background:color-mix(in oklab,var(--notice-slate-700)70%,transparent);color:var(--notice-slate-200)}.dark .notification-comment.notification-item{border-color:color-mix(in oklab,var(--notice-sky-900)60%,transparent)!important;background:color-mix(in oklab,var(--notice-sky-950)25%,transparent)}.dark .notification-comment .notification-kind{background:color-mix(in oklab,var(--notice-sky-900)50%,transparent);color:var(--notice-sky-200)}
.all-moment-notifications{display:flex;align-items:center;gap:6px;border-radius:9999px;border:1px solid #e5e7eb;background:#fff;padding:5px 12px;font-size:12px;line-height:16px;color:#4b5563;transition:border-color .15s}.all-moment-notifications svg{width:14px;height:14px}.all-moment-notifications:hover{border-color:#d1d5db}.dark .all-moment-notifications{border-color:#374151;background:#1f2937;color:#d1d5db}.dark .all-moment-notifications:hover{border-color:#4b5563}.moment-feed-controls{flex-wrap:wrap}.moment-notification-reminder{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:10px;display:inline-flex;min-height:44px;max-width:156px;align-items:center;gap:6px;border-radius:8px;background:var(--fg);color:var(--bg);padding:6px 10px;font-size:12px;line-height:16px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.moment-notification-reminder[hidden]{display:none}.moment-notification-reminder [data-notification-count]{white-space:nowrap}.notification-actors{display:flex;flex-shrink:0}.notification-actors .notification-avatar{width:28px;height:28px;border-radius:6px;background:#fff;outline:2px solid var(--fg);font-size:12px;position:relative}.notification-actors .notification-avatar+.notification-avatar{margin-left:-8px}.notification-actors .notification-avatar:nth-child(1){z-index:3}.notification-actors .notification-avatar:nth-child(2){z-index:2}.notification-actors .notification-avatar:nth-child(3){z-index:1}
@media(min-width:640px){#notifications-dialog{padding:24px}}.moment-profile.has-notification-reminder p{transform:translateY(16px)}
.moment-notification-reminder{z-index:3}
@media(prefers-reduced-motion:no-preference){.moment-notification-reminder{translate:-50% 0;transform:none;animation:notification-enter .3s ease}@keyframes notification-enter{from{opacity:0;transform:translate3d(0,-8px,0)scale3d(.75,.75,.75)}}}
/* 原通知弹窗沿用相同220毫秒过渡，不改变其它弹窗的布局。 */
#notifications-dialog{opacity:0;scale:.92;pointer-events:none;transition:transform .22s cubic-bezier(.16,1,.3,1),opacity .22s cubic-bezier(.16,1,.3,1),scale .22s cubic-bezier(.16,1,.3,1),display .22s allow-discrete,overlay .22s allow-discrete}#notifications-dialog[open]{opacity:1;scale:1;pointer-events:auto}#notifications-dialog::backdrop{opacity:0;transition:opacity .22s cubic-bezier(.16,1,.3,1),display .22s allow-discrete,overlay .22s allow-discrete}#notifications-dialog[open]::backdrop{opacity:1}@starting-style{#notifications-dialog[open]{opacity:0;scale:.92}#notifications-dialog[open]::backdrop{opacity:0}}@media(prefers-reduced-motion:reduce){#notifications-dialog,#notifications-dialog::backdrop{transition-duration:.01ms!important}}
/* moments-Vy8xhb9c.js:1631-1676：列表控制条靠左紧邻，字号行高不继承卡片正文。 */
.moment-feed-controls{justify-content:flex-start;gap:8px;margin-bottom:12px}.moment-sort{font-size:12px;line-height:16px}.moment-sort span{font-size:14px;line-height:14px}#comments-toggle{gap:6px;line-height:16px}
/* moments:1639-1664：数量与排序操作分区，独立按钮只改变排序。 */
.moment-sort{padding:0;gap:0;overflow:hidden}.moment-sort .moment-sort-count{display:inline-flex;align-items:center;gap:2px;padding:5px 10px 5px 12px;font-size:12px;line-height:16px}.moment-sort-count>span{font-size:12px;line-height:16px}.moment-sort button{display:inline-flex;align-self:stretch;align-items:center;justify-content:center;width:28px;border-left:1px solid #a7f3d0;transition:color .2s,background-color .2s}.moment-sort button svg{width:14px;height:14px}.moment-sort button:hover{background:#d1fae599;color:#022c22}.moment-sort button:disabled{cursor:wait;opacity:.6}.moment-sort [data-sort-loading] svg{width:12px;height:12px;animation:moment-sort-spin 1s linear infinite}.dark .moment-sort button{border-color:#064e3b66}.dark .moment-sort button:hover{background:#064e3b4d;color:#a7f3d0}@media(prefers-reduced-motion:reduce){.moment-sort [data-sort-loading] svg{animation:none}}
@keyframes moment-sort-spin{to{transform:rotate(360deg)}}
/* moments-Vy8xhb9c.js:1677-1694：动态专用空态，不覆盖其它栏目的通用提示。 */
.moment-empty{margin-top:40px;border-radius:calc(.35rem * 1.8);border:1px dashed color-mix(in srgb,var(--fg)20%,transparent);background:color-mix(in srgb,var(--card)60%,transparent);padding:64px 24px;text-align:center}.moment-empty p{margin:8px 0 0;font-size:14px;line-height:20px;color:var(--muted)}.moment-empty .moment-empty-label{margin:0;font-family:"Maple Mono",ui-monospace,monospace;font-size:12px;line-height:16px;color:var(--primary)}.moment-empty h2{margin:12px 0 0;font-size:20px;line-height:28px;font-weight:600;color:var(--fg)}
/* moments:1639-1676 与 styles-Ddd2hKrp.css：保留原色值和混色空间，不用近似十六进制替代。 */
:root{--moment-emerald-50:oklch(97.9% .021 166.113);--moment-emerald-100:oklch(95% .052 163.051);--moment-emerald-200:oklch(90.5% .093 164.15);--moment-emerald-300:oklch(84.5% .143 164.978);--moment-emerald-500:oklch(69.6% .17 162.48);--moment-emerald-800:oklch(43.2% .095 166.913);--moment-emerald-900:oklch(37.8% .077 168.94);--moment-emerald-950:oklch(26.2% .051 172.552);--moment-gray-200:oklch(92.8% .006 264.531);--moment-gray-300:oklch(87.2% .01 258.338);--moment-gray-600:oklch(44.6% .03 256.802);--moment-gray-700:oklch(37.3% .034 259.733);--moment-gray-800:oklch(27.8% .033 256.848)}
.moment-sort{background:var(--moment-emerald-50);border-color:color-mix(in oklab,var(--moment-emerald-200)80%,transparent);color:var(--moment-emerald-800)}.moment-sort-count strong{font-variant-numeric:tabular-nums}.moment-sort button{color:var(--moment-emerald-800);border-color:color-mix(in oklab,var(--moment-emerald-200)80%,transparent)}.moment-sort button:hover{background:color-mix(in oklab,var(--moment-emerald-100)60%,transparent);color:var(--moment-emerald-950)}.dark .moment-sort{background:color-mix(in oklab,var(--moment-emerald-900)20%,transparent);border-color:color-mix(in oklab,var(--moment-emerald-900)30%,transparent);color:var(--moment-emerald-300)}.dark .moment-sort button{border-color:color-mix(in oklab,var(--moment-emerald-900)40%,transparent);color:color-mix(in oklab,var(--moment-emerald-300)80%,transparent)}.dark .moment-sort button:hover{background:color-mix(in oklab,var(--moment-emerald-900)30%,transparent);color:var(--moment-emerald-200)}
#comments-toggle{background:#fff;color:var(--moment-gray-600);border-color:var(--moment-gray-200);transition:all .15s cubic-bezier(.4,0,.2,1)}#comments-toggle:hover{border-color:var(--moment-gray-300)}.comment-status-dot{background:var(--moment-gray-300)}.dark #comments-toggle{background:var(--moment-gray-800);color:var(--moment-gray-300);border-color:var(--moment-gray-700)}.dark #comments-toggle:hover{border-color:var(--moment-gray-600)}.dark .comment-status-dot{background:var(--moment-gray-600)}#comments-toggle[aria-checked=true] .comment-status-dot{background:var(--moment-emerald-500)}
/* 源 styles-Ddd2hKrp.css:11510–11554，根快照圆形转场。 */
::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none;display:block}
::view-transition-old(root){z-index:1}
::view-transition-new(root){z-index:999;will-change:clip-path}
::view-transition-group(root){z-index:0;animation:none}
::view-transition-image-pair(root){isolation:isolate}
html[data-theme-transition=active] *,html[data-theme-transition=active] :before,html[data-theme-transition=active] :after{transition:none!important;animation-duration:0s!important}
html[data-theme-transition=active] :is(#main,.topbar){view-transition-name:none}
/* 源fs与outline/icon-lg；局部偏移避免文章工具和浮窗争用同一点击区域。 */
/* 保留Sonner动画；仅裁去越过导航的部分，避免入场与退场瞬间吞掉导航点击。 */
#yu-toast-root [data-sonner-toaster][data-y-position=top]{clip-path:inset(-10px -100vw -100vh -100vw)}
.back-to-top{position:fixed;inset-inline-end:16px;bottom:calc(max(1rem,env(safe-area-inset-bottom)) + var(--back-to-top-offset,0px));z-index:50;display:inline-flex;flex:none;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:9999px;background:var(--bg);background-clip:padding-box;color:var(--fg);opacity:0;pointer-events:none;transition:opacity .15s cubic-bezier(.4,0,.2,1);user-select:none}
.back-to-top[data-visible=true]{opacity:1;pointer-events:auto}
.back-to-top:hover{background:#ebe7dc;color:var(--fg)}
.back-to-top:active{transform:translateY(1px)}
.back-to-top .icon{width:16px;height:16px;pointer-events:none}
.dark .back-to-top{background:color-mix(in oklab,#ece8dc42 30%,transparent)}
.dark .back-to-top:hover{background:color-mix(in oklab,#ece8dc42 50%,transparent)}
@media(min-width:640px){.back-to-top{inset-inline-end:24px}}
/* 窄屏独立后台为右下浮钮预留操作空间，不改变公开页面或内联编辑。 */
@media(max-width:1055px){body[data-section=admin] .admin:not([data-inline]) .admin-actions{margin-inline-end:60px}}
/* 源index:15587、23438–23492及glass-panel；公共错误页不影响文章专用状态。 */
.route-error{width:100%;max-width:1024px;margin:0 auto;min-height:62svh;display:flex;align-items:center;padding:64px 16px;font-family:var(--article-nav-sans);--route-error-destructive:#b4493d}
.route-error-card{width:100%;border:1px solid color-mix(in oklab,var(--border)70%,transparent);border-radius:24px;padding:24px;background:var(--card);box-shadow:6px 6px 0 color-mix(in oklch,var(--fg)9%,transparent)}
.route-error-icon{display:flex;width:48px;height:48px;align-items:center;justify-content:center;border-radius:16px;background:color-mix(in oklab,var(--route-error-destructive)10%,transparent);color:var(--route-error-destructive)}
.route-error-icon .icon{width:24px;height:24px}.route-error-code{margin:40px 0 0;font:600 14px/20px var(--article-nav-mono);letter-spacing:.18em;color:var(--muted)}
.route-error h1{margin:12px 0 0;font-size:30px;line-height:36px;font-weight:600;letter-spacing:-.035em}.route-error-description{margin:16px 0 0;max-width:576px;line-height:28px;color:var(--muted)}
.route-error-actions{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px}.route-error-actions>a,.route-error-actions>button{display:inline-flex;height:48px;align-items:center;justify-content:center;flex-shrink:0;gap:6px;padding:0 16px;border-radius:.35rem;font-size:14px;font-weight:500;white-space:nowrap;border:1px solid var(--border);background:var(--bg);color:var(--fg)}
.route-error-actions .icon{width:16px;height:16px;flex-shrink:0}.route-error-actions>a:hover{background:#ebe7dc}.route-error-actions>button{border-color:transparent;background:var(--primary);color:#fbf9f1}.route-error-actions>button:hover{background:color-mix(in oklab,var(--primary)80%,transparent)}
.dark .route-error{--route-error-destructive:#de746a}.dark .route-error-actions>a{border-color:#ece8dc42;background:color-mix(in oklab,#ece8dc42 30%,transparent)}.dark .route-error-actions>a:hover{background:color-mix(in oklab,#ece8dc42 50%,transparent)}.dark .route-error-actions>button{color:#122018}
@media(min-width:640px){.route-error{padding-inline:24px}.route-error-card{padding:40px}.route-error h1{font-size:36px;line-height:40px}}@media(min-width:1024px){.route-error{padding-inline:32px}}
/* 源index:ev的命令入口；资源栏目额外占位，桌面为44px独立按钮预留空间。 */
.island-command-launcher{display:none}.island.expanded:not(.command-open):not([data-relay-detail=true]) .island-command-launcher{position:absolute;inset-block-start:2px;inset-inline-end:48px;z-index:2;display:grid;place-items:center;width:44px;height:44px;color:#ffffffb8;background:transparent;border:0}
.island-command-launcher .icon{width:16px;height:16px}@media(min-width:768px){.island-nav{right:96px}}
