.tag{--tag-bg:#f1f1ef;--tag-ink:#3f3f46;display:inline-flex;align-items:center;gap:.3rem;height:24px;padding:0 .55rem;border:0;border-radius:6px;background:var(--tag-bg);color:var(--tag-ink);font:inherit;font-size:13px;font-weight:500;line-height:1;letter-spacing:-.005em;text-decoration:none;white-space:nowrap;cursor:default;transition-property:filter,scale,box-shadow;transition-duration:.15s,.16s,.15s;transition-timing-function:ease,var(--ease),ease}a.tag,button.tag{cursor:pointer}@media (hover:hover) and (pointer:fine){a.tag:hover,button.tag:hover{filter:brightness(.96)}}a.tag:active,button.tag:active{scale:.96}.tag[data-tint=gray]{--tag-bg:#f1f1ef;--tag-ink:#3f3f46}.tag[data-tint=brown]{--tag-bg:#f4eeee;--tag-ink:#6b3f2a}.tag[data-tint=orange]{--tag-bg:#fbecdd;--tag-ink:#8a4414}.tag[data-tint=yellow]{--tag-bg:#fbf3db;--tag-ink:#7a5a0b}.tag[data-tint=green]{--tag-bg:#edf3ec;--tag-ink:#2b593f}.tag[data-tint=blue]{--tag-bg:#e7f3f8;--tag-ink:#1f4f73}.tag[data-tint=purple]{--tag-bg:#f6f3f9;--tag-ink:#5b3a82}.tag[data-tint=pink]{--tag-bg:#faf1f5;--tag-ink:#8a2b5a}.tag[data-tint=red]{--tag-bg:#fdebec;--tag-ink:#9b2c2c}.tag[aria-pressed=true]{box-shadow:inset 0 0 0 1.5px currentColor}.tag-count{font-family:Paper Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:400;letter-spacing:0;opacity:.6}.tag-sm{height:20px;padding:0 .4rem;font-size:11.5px}.article-header-tags,.tag-cloud{display:flex;flex-wrap:wrap;gap:.35rem}.article-header-tags{margin-top:-.35rem}.article-tags li{padding:0;background:none}.article-audio{display:grid;gap:.6rem;margin:0}.article-audio figcaption{font-size:13px;color:var(--ink-3,#a1a1aa)}.voice{display:grid;grid-template-columns:40px 1fr auto auto;align-items:center;gap:.75rem;padding:.6rem .75rem .6rem .6rem;border-radius:999px;background:#f4f4f5;max-width:460px}.voice-play{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:999px;background:var(--ink,#0a0a0a);color:#fff;cursor:pointer;transition:scale .16s var(--ease)}.voice-play:active{scale:.94}.voice-play svg{width:16px;height:16px;fill:currentColor}.voice-play path{transform-origin:center;transition-property:opacity,scale,filter;transition-duration:.2s;transition-timing-function:cubic-bezier(.2,0,0,1)}.voice-icon-pause,.voice[data-playing] .voice-icon-play{opacity:0;scale:.25;filter:blur(2px)}.voice[data-playing] .voice-icon-pause{opacity:1;scale:1;filter:none}.voice-wave{display:flex;align-items:center;gap:2px;height:32px;cursor:pointer;outline-offset:4px}.voice-bar{flex:1;min-width:2px;border-radius:2px;background:#d4d4d8;transition:background-color .12s ease}.voice-bar[data-on]{background:var(--ink,#0a0a0a)}.voice-time{min-width:2.6rem;font-family:Paper Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;letter-spacing:0;color:var(--ink-2,#52525b);font-variant-numeric:tabular-nums}.voice-speed{min-width:2.4rem;height:26px;border:0;border-radius:999px;background:#fff;box-shadow:0 0 0 1px #e4e4e7;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.article-body .article-video video,.article-video video{display:block;width:100%;height:auto;border-radius:14px;background:#0a0a0a;outline:1px solid oklch(0 0 0/.1);outline-offset:-1px}.avatar-gen{display:inline-block;overflow:hidden;border-radius:999px;flex:none;line-height:0}.avatar-gen svg{width:100%;height:100%}@media print{.article-more,.article-share,.code-copy,.reading-progress,.smooth-cursor,.toc-rail{display:none!important}}.article-menu{position:fixed;z-index:70;display:grid;min-width:15rem;max-height:min(80vh,36rem);overflow-y:auto;transition-property:opacity,transform;transition-duration:.14s;transition-timing-function:var(--ease)}@starting-style{.article-menu{opacity:0;transform:scale(.96)}}.article-menu .menu-item{width:100%;border:0;background:transparent;font:inherit;text-align:left;color:inherit}.article-menu .menu-item:focus-visible,.article-menu .menu-item:hover{background-color:rgb(0 0 0/.045);outline:none}.writing-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.625rem 1rem;border-radius:10px;background:var(--surface-bg);box-shadow:var(--surface-ring),0 2px 4px rgb(0 0 0/.04);color:#3f3f46;font-size:14px;font-weight:500;line-height:20px;text-decoration:none;white-space:nowrap;transition:transform .14s var(--ease),color .12s ease}.writing-button:focus-visible{outline:2px solid #52525b;outline-offset:4px}.writing-button:active:not(:focus-visible){transform:scale(.96)}.writing-empty{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;margin-top:2.5rem;padding:2rem;border:1px solid #ececee;border-radius:16px;background:#fafafa}.writing-empty-icon{color:#71717a}.writing-empty h2{margin:0;color:#27272a;font-size:18px;font-weight:500;line-height:1.4;letter-spacing:-.02em}.writing-empty p{max-width:40ch;margin:.625rem 0 0;color:#52525b;font-size:15px;line-height:1.6;text-wrap:pretty}.writing-index{--ink-3:#71717a}.writing-index [data-cursor=text]{cursor:text}.writing-index .article-header>*,.writing-index .article-nav,.writing-index .writing-empty,.writing-index .writing-years{animation:none}@media (hover:hover) and (pointer:fine){.writing-button:hover{color:#18181b;transform:translateY(-1px)}}@media (prefers-reduced-motion:no-preference){.writing-index .article-header,.writing-index .writing-empty,.writing-index .writing-years{animation:writing-arrive .28s var(--ease) both}.writing-index .writing-empty,.writing-index .writing-years{animation-delay:80ms}}@keyframes writing-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.writing-button{transition:none}.writing-button:active:not(:focus-visible),.writing-button:hover{transform:none}}@media (max-width:767px){.writing-empty{padding:1.5rem;margin-top:2rem}}