.notes-page{display:block;margin:0 auto;max-width:var(--notes-content-width);width:100%}.notes-list{min-width:0;width:100%}.notes-month:before{background:var(--color-line);content:"";display:block;height:1px;margin-bottom:clamp(1.125rem,2.2vw,1.5rem);width:clamp(40px,6vw,44px)}.notes-month+.notes-month{margin-top:clamp(.9rem,2.4vw,1.35rem)}.notes-item{padding:0 0 clamp(1.75rem,3.4vw,2.2rem)}.notes-month-list .notes-item:first-child{padding-top:0}.notes-month-list .notes-item:last-child{padding-bottom:clamp(1.25rem,2.6vw,1.7rem)}.notes-item-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:.55rem .85rem}.notes-item-indicators{display:flex;align-items:center;gap:.3em;margin-left:-.3em}.notes-item-title{font-family:var(--font-serif);font-size:1.05rem;font-weight:700;line-height:1.35;margin:0;max-width:100%;min-width:0}.notes-item-title a{box-sizing:content-box;color:var(--color-text);display:inline-block;hyphens:auto;max-width:100%;overflow-wrap:anywhere;padding-right:.04em;text-decoration:none;vertical-align:top;white-space:normal;word-break:normal}.notes-item-title a:hover,.notes-item-title a:focus-visible{color:var(--color-hover-text)}.notes-item-pin{background-color:var(--color-muted);display:inline-block;height:1.1em;margin-left:.3em;mask-image:url("../../icons/ui/pin.2150d9b1f1.svg");mask-position:center;mask-repeat:no-repeat;mask-size:contain;vertical-align:text-bottom;width:1.1em}.notes-item-music,.notes-item-bilingual{color:var(--color-muted);font-size:1.1em;margin-left:.3em;vertical-align:text-bottom;display:inline-block;line-height:1}hr.notes-divider{border:none;border-top:1px dashed var(--color-line);margin:clamp(.5rem,1.5vw,1rem) 0 clamp(1.5rem,3.5vw,2.5rem)}.notes-item-meta{color:var(--color-muted);display:inline-flex;font-family:var(--font-cormorant);font-size:1.05rem;font-weight:600;font-style:italic;gap:.7rem;line-height:1;margin:0;white-space:nowrap}.notes-item-summary,.notes-empty{color:var(--color-muted);font-family:var(--font-body);font-size:.98rem;line-height:1.75;margin:12px 0 0;max-width:var(--notes-content-width)}.notes-aside{align-self:start;min-width:0;position:sticky;top:88px}.articles{margin-top:12px}.articles h2{font-size:1.25rem;margin:0}.note-list{list-style:none;margin:0;padding:0}.note-list li{border-bottom:1px solid var(--color-line);padding:20px 0}.note-list a{font-size:1.15rem;font-weight:700}.note-list time{color:var(--color-muted);display:block;font-size:.9rem}.note-list .note-summary{color:var(--color-muted);font-size:1.05rem}@media(max-width:960px){.notes-aside{display:none!important}.notes-item-summary{display:none}.notes-item{padding:0 0 clamp(1.2rem,3.4vw,1.5rem)}.notes-item-header{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"title title" "indicators meta";gap:.25rem .65rem;align-items:center}.notes-item-title{grid-area:title;font-size:1rem;margin-bottom:0}.notes-item-indicators{grid-area:indicators}.notes-item-meta{grid-area:meta;align-items:center;display:flex;font-size:1.05rem;gap:.65em;margin:0;justify-self:start}}.tag-back-container{align-items:center;display:flex;gap:.5rem;margin-bottom:clamp(1.5rem,3.5vw,2.5rem)}.tag-back-container[hidden]{display:none!important}.tag-back-btn{align-items:center;background:transparent;border:none;border-radius:50%;color:var(--color-muted);cursor:pointer;display:inline-flex;justify-content:center;padding:.2rem;text-decoration:none;transition:color .16s ease,background .16s ease}.tag-back-btn:hover,.tag-back-btn:focus-visible{color:var(--color-hover-text);background:var(--color-surface)}.tag-back-btn .material-symbol{font-size:1.5rem}.tag-back-title{color:var(--color-text);font-family:var(--font-serif);font-size:clamp(1.5rem,2.2vw,1.8rem);font-weight:700;margin:0}.pagination{margin-top:3rem;margin-bottom:2rem;padding-top:1.5rem;border-top:1px dashed var(--color-line)}.pagination-inner{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-cormorant);font-size:.95rem;color:var(--color-muted)}.pagination-btn{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none;color:var(--color-muted);transition:color var(--transition-fast, .2s);cursor:pointer}.pagination-btn:hover:not(.is-disabled){color:var(--color-accent)}.pagination-btn.is-disabled{opacity:.3;pointer-events:none}.pagination-info{flex-grow:1;text-align:center;letter-spacing:.05em}.memos-body .page-main{padding-left:calc(var(--side-rail-width) + 24px);padding-right:40px}.memos-page{--memo-gutter: 24px;--memo-header-height: 72px;display:grid;grid-template-columns:minmax(0,44rem) 16rem;align-items:stretch;max-width:60rem;margin:0 auto;border:1px solid var(--color-line)}.memos-feed{min-width:0}.memos-header{display:flex;align-items:stretch;justify-content:space-between;min-height:var(--memo-header-height)}.memos-heading{display:flex;align-items:baseline;align-self:center;gap:10px;padding:16px var(--memo-gutter);white-space:nowrap}.memos-header h1{font-family:var(--font-serif);font-size:var(--note-title-size);line-height:1.2;margin:0}.memos-count{color:var(--color-muted);font-size:.78rem;font-variant-numeric:tabular-nums}.memos-toolbar{display:flex;width:55%;max-width:22rem;min-width:0;border-left:1px solid var(--color-line)}.memos-search{display:flex;flex:1;min-width:0;align-items:center;gap:10px;padding:12px 20px}.memos-search .material-symbol{font-size:1.2rem;color:var(--color-muted)}.memos-search input{background:none;border:0;outline:none;color:var(--color-text);width:100%;min-width:0;font:inherit;font-size:.9rem}.memos-search:focus-within{box-shadow:inset 0 -2px var(--color-accent)}.memos-search input::placeholder{color:var(--color-muted);opacity:.8}.memos-filter-toggle{display:none}.memos-active-filters{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px var(--memo-gutter);border-top:1px solid var(--color-line);color:var(--color-muted);font-size:.85rem}.memos-active-filters [data-memos-active-label]{min-width:0;overflow-wrap:anywhere}.memos-active-filters button{flex-shrink:0}.memos-active-filters button,.memos-all-dates{border:0;padding:4px 0;background:none;color:var(--color-accent);font:inherit;cursor:pointer}.memos-cards{display:flex;flex-direction:column}.memo-card{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:24px var(--memo-gutter) 26px;border-top:1px solid var(--color-line);min-width:0}.memo-avatar-column{padding-top:1px}.memo-entry{min-width:0}.memo-entry-header{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;min-height:28px}.memo-author{display:flex;align-items:center;gap:10px;color:var(--color-muted);font-size:.88rem}.memo-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;flex-shrink:0}.memo-avatar-column .memo-avatar{display:block;width:36px;height:36px}.memo-entry-header .memo-author{color:var(--color-text);font-weight:600}.memo-card .memo-content{margin:4px 0 0;font-size:var(--note-text-size);overflow-wrap:anywhere}.memo-card .memo-content>*,.memo-card .memo-content p{margin-bottom:16px}.memo-content>:first-child{margin-top:0}.memo-card .memo-content>:last-child,.memo-card .memo-content>:last-child>p:last-child{margin-bottom:0}.memo-content img{max-width:100%}.memos-page .memo-content{container-type:inline-size}.memos-page .memo-content .memo-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.memos-page .memo-content .memo-photo-grid>*{margin:0;min-width:0}.memos-page .memo-content .memo-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;border-radius:6px}.memo-content .md-gallery{max-width:100%}.memos-page .memo-photo-tile{position:relative;width:fit-content;max-width:calc(50cqw - 4px);overflow:hidden;border-radius:6px}.memos-page span.memo-photo-tile{display:inline-block;vertical-align:middle}.memos-page .memo-photo-grid .memo-photo-tile{width:auto;max-width:100%}.memos-page .memo-photo-tile img{display:block;width:auto;max-height:calc((100cqw - 8px)*.375);margin:0;transition:transform .22s cubic-bezier(.22,.61,.36,1),filter .22s cubic-bezier(.22,.61,.36,1)}.memos-page .memo-content .memo-photo-tile figcaption{padding:24px 16px 12px}.memos-page .has-more-photos:before{content:"";position:absolute;inset:0 0 auto;height:48px;max-height:50%;z-index:1;background:linear-gradient(to bottom,rgb(0 0 0 / .55),transparent);pointer-events:none}.memos-page .memo-content .memo-more-photos{position:absolute;right:8px;top:8px;z-index:1;display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:28px;padding:2px 10px;background:none;color:#fff;font-family:var(--font-ui);font-size:.78rem;line-height:1.4;text-decoration:none}.memo-photo-count,.memo-photo-hint{overflow:hidden;white-space:nowrap;transition:opacity .22s cubic-bezier(.22,.61,.36,1)}.memo-photo-count{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:1.1rem;opacity:1}.memo-photo-hint{max-width:0;opacity:0;transition:max-width .22s cubic-bezier(.22,.61,.36,1),opacity .22s cubic-bezier(.22,.61,.36,1)}.memo-photo-tile:hover .memo-photo-count,.memo-photo-tile:focus-within .memo-photo-count{opacity:0}.memo-photo-tile:hover .memo-photo-hint,.memo-photo-tile:focus-within .memo-photo-hint{max-width:16em;opacity:1}.memos-page .has-more-photos:hover img,.memos-page .has-more-photos:focus-within img{transform:scale(1.025);filter:brightness(.9)}@media(prefers-reduced-motion:reduce){.memos-page .memo-photo-tile img,.memo-photo-count,.memo-photo-hint{transition:none}.memos-page .has-more-photos:hover img,.memos-page .has-more-photos:focus-within img{transform:none}}html[data-reduced-motion=true] .memos-page .memo-photo-tile img,html[data-reduced-motion=true] .memo-photo-count,html[data-reduced-motion=true] .memo-photo-hint{transition:none}html[data-reduced-motion=true] .memos-page .has-more-photos img{transform:none}.memo-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-top:18px;color:var(--color-muted);font-size:var(--note-text-size);line-height:1.75}.memo-labels{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.memo-location{display:inline-flex;align-items:center;gap:3px}.memo-location .material-symbol{font-size:1em}.memo-tag{padding:0;background:none;border:0;color:var(--color-accent);font:inherit;cursor:pointer}.memo-dates{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin-left:auto}.memo-updated{color:var(--color-muted);font-size:.75rem}.memo-permalink{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--color-muted);font-size:.75rem;font-variant-numeric:tabular-nums;text-decoration:none;white-space:nowrap}.memo-permalink:hover{color:var(--color-accent)}.memo-permalink .material-symbol{font-size:.9rem}.memos-aside{min-width:0;border-left:1px solid var(--color-line)}.memos-aside .memos-filters{position:sticky;top:88px}.memos-filters{color:var(--color-muted);font-size:.85rem}.memos-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:var(--memo-header-height, 64px);padding:12px 16px;border-bottom:1px solid var(--color-line);color:var(--color-text)}.memos-calendar-heading button{display:flex;padding:4px;border:0;background:none;color:var(--color-muted);cursor:pointer}.memos-calendar-heading button:disabled{opacity:.3;cursor:default}.memos-calendar-heading button .material-symbol{font-size:1.2rem}.memos-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px 0;padding:16px 16px 0;text-align:center}.memos-calendar-grid>span{display:grid;place-items:center;min-height:30px;font-size:.76rem;color:var(--color-faint)}.memos-calendar-grid>.memos-weekday{color:var(--color-muted);padding-bottom:4px}.memos-calendar-grid button{position:relative;min-width:0;min-height:30px;border:0;border-radius:6px;background:none;color:var(--color-text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer}.memos-calendar-grid button:after{position:absolute;content:"";width:3px;height:3px;bottom:2px;left:calc(50% - 1.5px);background:var(--color-accent);border-radius:50%}.memos-calendar-grid button:hover{background:var(--color-accent-soft)}.memos-calendar-grid button[aria-pressed=true]{background:var(--color-accent);color:var(--color-paper)}.memos-calendar-grid button[aria-pressed=true]:after{background:currentColor}.memos-all-dates{font-size:.8rem;margin:12px 20px 20px}.memos-tag-filter{border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line)}.memos-tag-filter h2{color:var(--color-text);font:inherit;margin:0;padding:16px 20px;border-bottom:1px solid var(--color-line)}.memos-filter-tags{font-size:var(--note-text-size);line-height:1.75;display:flex;flex-wrap:wrap;gap:8px 12px;padding:16px 20px 20px}.memos-filter-tags button{display:inline-flex;align-items:baseline;gap:6px;font:inherit;border:0;padding:3px 0;background:none;color:var(--color-muted);cursor:pointer}.memos-filter-tags button[aria-pressed=true],.memos-filter-tags button:hover{color:var(--color-accent)}.memos-filter-tags small{font-size:.75rem;opacity:.65}.memos-empty{color:var(--color-muted);margin:0;padding:28px var(--memo-gutter);border-top:1px solid var(--color-line)}.memos-empty-state{display:flex;flex-direction:column;align-items:center;gap:28px;padding:48px var(--memo-gutter);border-top:1px solid var(--color-line);color:var(--color-muted);text-align:center}.memos-empty-scene{display:block;width:min(100%,28rem);height:auto;flex-shrink:0}.memos-empty-state p{margin:0}.memos-page [hidden],.memo-content [data-memo-overflow]{display:none!important}.memos-page button:focus-visible,.memos-page a:focus-visible,.memos-filters button:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}::highlight(memo-search){background:var(--color-marker);color:var(--color-text)}.memo-search-highlight{background:var(--color-marker);color:inherit}.memo-detail-back{display:flex;align-items:center;color:var(--color-muted);text-decoration:none}@media(max-width:1100px)and (min-width:961px){.memos-body .page-main{padding-left:210px;padding-right:24px}.memos-page{grid-template-columns:minmax(0,1fr) 13rem;--memo-gutter: 20px}}@media(max-width:960px){.memos-body .page-main{padding:24px 20px 56px}.memos-page{display:block;max-width:var(--notes-content-width)}.memos-aside{display:none}.memos-filter-toggle{display:grid;place-items:center;flex-shrink:0;width:44px;border:0;border-left:1px solid var(--color-line);color:var(--color-muted);background:none;cursor:pointer}.memos-filter-toggle .material-symbol{font-size:1.15rem}.memos-toolbar{flex:1}.memos-filters{max-width:24rem;margin:0 auto;font-size:.95rem}.memos-calendar-grid>span,.memos-calendar-grid button{min-height:40px}.memos-filter-tags{gap:10px 16px}}@media(max-width:600px){.memos-body .page-main{padding:0 0 40px}.memos-page{--memo-gutter: 16px;--memo-header-height: 64px;border-top:0;border-left:0;border-right:0}.memos-header h1{font-size:1.25rem}.memos-heading{gap:8px}.memos-search{padding:12px;gap:6px}.memos-search input{font-size:.82rem}.memo-card{grid-template-columns:30px minmax(0,1fr);gap:10px;padding-top:20px;padding-bottom:22px}.memo-avatar-column .memo-avatar{width:30px;height:30px}.memo-entry-header{gap:4px 8px}.memo-permalink{font-size:.7rem}}.memo-body .memo-location,.memo-body .note-tag-capsule{font-size:var(--note-text-size);line-height:1.75}.memo-card[data-memo-card]{cursor:pointer}.memo-card .memo-avatar{border-radius:8px}.memo-card .memo-tag{text-decoration:none}.memo-card .memo-updated,.memo-card .memo-number,.memo-card [data-like-count],.memos-count .memo-number{font-family:"Cormorant Garamond Meta",var(--font-cormorant);font-style:italic;font-weight:600;font-synthesis:none}.memo-permalink,.memo-updated,.memos-count .memo-number{font-size:clamp(1rem,1.3vw,1.12rem)}.memo-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:18px;color:var(--color-muted)}.memo-actions .article-action{min-width:32px;min-height:32px;gap:6px;font-size:clamp(1rem,1.3vw,1.12rem)}.memo-actions .material-symbol{font-size:1.15rem}.memo-actions>:last-child:after{left:auto;right:0;transform:none}.memo-actions .memo-view-action,.memo-actions .is-unavailable{cursor:default}.memo-actions .is-unavailable{opacity:.5}.memo-actions .article-action:focus-visible,.memo-permalink:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.memo-detail-layout{display:grid;grid-template-columns:minmax(0,44rem) 16rem;max-width:60rem;margin:0 auto;border:1px solid transparent}.memo-detail-page{--memo-gutter: 24px;min-width:0;outline:1px solid var(--color-line)}.memo-detail-toolbar{display:flex;align-items:center;gap:16px;min-height:72px;box-sizing:border-box;padding:16px var(--memo-gutter)}.memo-detail-toolbar h1{font-size:1.2rem;margin:0;font-family:var(--font-serif)}.memo-detail-toolbar .bilingual-toggle-btn{margin-left:auto}.memo-detail-post .post-content{margin-top:4px}.memo-detail-page .post-comments{margin:0;padding:24px var(--memo-gutter);border-top:1px solid var(--color-line);scroll-margin-top:80px}.memo-body .page-main{padding-left:calc(var(--side-rail-width) + 24px);padding-right:40px}@media(max-width:960px){.memo-body .page-main{padding:24px 20px 56px}}@media(max-width:600px){.memo-body .page-main{padding:0 0 40px}.memo-detail-page{--memo-gutter: 16px;border:0}.memo-actions{gap:4px}.memo-permalink,.memo-updated{font-size:1rem}}.memos-filters [data-memo-tag],.memos-filters [data-memos-date],.memo-labels button{touch-action:manipulation;user-select:none;-webkit-touch-callout:none}@media(max-width:1100px)and (min-width:961px){.memo-body .page-main{padding-left:210px;padding-right:24px}.memo-detail-layout{grid-template-columns:minmax(0,1fr) 13rem}.memo-detail-page{--memo-gutter: 20px}}@media(max-width:960px){.memo-detail-layout{display:block;max-width:var(--notes-content-width)}}@media(max-width:600px){.memo-detail-layout{border:0}.memo-detail-page{outline:none}.memo-detail-toolbar{min-height:64px}}.note-detail-page{position:relative;max-width:min(var(--note-body-width),100%)}.note-detail{margin-left:0;max-width:var(--note-body-width);min-width:0;position:relative;width:min(var(--note-body-width),100%)}.note-toc-wrapper{pointer-events:auto;position:static;width:100%}.note-sticky-column{display:flex;flex-direction:column;pointer-events:auto;position:static}.note-toc-stage{position:relative;width:100%}.note-toc{clip-path:inset(0);color:var(--color-muted);font-family:var(--font-ui);font-size:.78rem;line-height:1.45;margin-bottom:clamp(2rem,5vw,3.2rem);max-width:100%;opacity:1;transform:translateY(0);transition:color .16s ease,opacity var(--reading-toc-rail-state-duration) ease,transform var(--reading-toc-rail-state-duration) var(--reading-toc-rail-state-ease),clip-path var(--reading-toc-rail-state-duration) var(--reading-toc-rail-state-ease),visibility 0s linear 0s;visibility:visible;width:100%}.note-toc-panel{max-height:none}.note{min-width:0;position:relative}.note-title-wrapper{position:relative}.note-back-link{align-items:center;border-radius:999px;color:var(--color-muted);display:inline-flex;height:calc(var(--note-title-size) * 1.15);justify-content:center;left:-3.5rem;position:absolute;text-decoration:none;top:0;transition:color .16s ease;width:calc(var(--note-title-size) * 1.15)}.note-back-link .material-symbol{font-size:var(--note-title-size)}.note-back-link:hover,.note-back-link:focus-visible{color:var(--color-hover-text)}.note-back-link:hover .material-symbol,.note-back-link:focus-visible .material-symbol{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.note-back-link:focus-visible{outline:1px solid var(--color-accent);outline-offset:4px}.note-header{margin-bottom:clamp(2.5rem,5vw,4.5rem)}.note-title{color:var(--color-text);font-family:var(--font-serif);font-size:var(--note-title-size);font-weight:700;hyphens:auto;letter-spacing:0;line-height:1.15;margin:0;max-width:100%;overflow-wrap:anywhere;word-break:normal}.note-title>span{box-sizing:content-box;display:inline-block;max-width:100%;padding-right:.04em;vertical-align:top;white-space:normal}.article-meta-rows{margin:1.2rem 0 0;display:flex;flex-direction:column;gap:.6rem;color:var(--color-muted);font-family:"Cormorant Garamond Meta",var(--font-serif);font-style:italic;font-weight:600;font-size:clamp(.95rem,1.3vw,1.12rem);line-height:1}.article-shared-meta,.article-stagger-meta{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.article-shared-meta>*,.article-stagger-meta>*{display:inline-flex;align-items:center;gap:.3em}.notes-item-pin{background-color:var(--color-muted);display:inline-block;height:1.1em;mask-image:url("../../icons/ui/pin.2150d9b1f1.svg");mask-position:center;mask-repeat:no-repeat;mask-size:contain;width:1.1em}.article-actions-meta .article-action,.article-actions-meta .bilingual-toggle-btn{white-space:nowrap}.article-actions-meta .bilingual-toggle-btn{width:auto;height:auto;min-height:28px;gap:.35em;transform:none}.article-actions-meta .bilingual-toggle-btn .material-symbol{font-size:1.15em}.article-actions-meta .is-unavailable{cursor:default;opacity:.5}.notes-item-music,.notes-item-bilingual{color:var(--color-muted);font-size:1.1em;line-height:1}.note-summary{color:var(--color-muted);font-size:.94rem;line-height:1.75;margin:1.25rem 0 0;max-width:42rem}.note-summary:first-letter{color:var(--color-accent);float:left;font-family:var(--font-ui);font-size:3.4em;font-style:italic;font-weight:700;line-height:.92;margin-top:4px;padding:4px 10px 0 0}@media(min-width:1200px){.note-detail-page{max-width:var(--note-body-width)}.note-detail-page .notes-aside{height:100%;left:calc(100% + clamp(28px,3vw,48px));margin-top:0;position:absolute;top:0;width:var(--note-toc-width)}.note-toc-wrapper{--reading-toc-rail-eligible: 1;--reading-toc-rail-direction: 1;--reading-toc-rail-line-inset: 12px;pointer-events:auto;position:sticky;top:88px;width:var(--note-toc-width);z-index:10}.note-sticky-column{pointer-events:auto;position:static}.note-toc-stage{width:var(--note-toc-width)}.note-toc{margin-bottom:0;max-width:none;width:var(--note-toc-width)}.note-toc-panel{max-height:calc(100dvh - 88px - 3rem)}.note-toc-stage.has-reading-rail{height:var(--reading-toc-rail-height)}.note-toc-stage.has-reading-rail .note-toc{left:0;position:absolute;top:0}.note-toc-stage.has-reading-rail .note-toc-panel{max-height:calc(var(--reading-toc-rail-height) - 3rem)}.note-toc-stage.has-reading-rail.is-reading:not(.is-hovered) .note-toc{pointer-events:none;transition:visibility 0s linear calc(var(--reading-toc-rail-state-duration) + .4s);visibility:hidden}.note-toc-stage.has-reading-rail.is-reading .note-toc-header,.note-toc-stage.has-reading-rail.is-reading .note-toc-indicator,.note-toc-stage.has-reading-rail.is-reading .note-toc-reading-controls{transition:opacity var(--reading-toc-rail-state-duration) ease,transform var(--reading-toc-rail-state-duration) var(--reading-toc-rail-state-ease)}.note-toc-stage.has-reading-rail.is-reading .note-toc-panel li{transition:opacity var(--reading-toc-rail-state-duration) ease,transform var(--reading-toc-rail-state-duration) var(--reading-toc-rail-state-ease);transition-delay:calc(var(--toc-index, 0) * 15ms)}.note-toc-stage.has-reading-rail.is-reading:not(.is-hovered) .note-toc-header,.note-toc-stage.has-reading-rail.is-reading:not(.is-hovered) .note-toc-reading-controls,.note-toc-stage.has-reading-rail.is-reading:not(.is-hovered) .note-toc-panel li{opacity:0;transform:translate3d(calc(var(--reading-toc-rail-collapse-shift) * -1),0,0)}.note-toc-stage.has-reading-rail.is-reading:not(.is-hovered) .note-toc-indicator{opacity:0;transform:translate3d(calc(var(--reading-toc-rail-collapse-shift) * -1),var(--indicator-y, 0),0) scaleY(var(--indicator-scale, 1))}.note-toc-stage.has-reading-rail.is-reading:not(.is-hovered) .reading-toc-rail{clip-path:inset(calc(-1 * var(--reading-toc-rail-overflow, 0px)) 0);opacity:1;pointer-events:auto;transform:translateZ(0);transition:opacity .3s ease}.note-toc-stage.has-reading-rail.is-reading.is-hovered .reading-toc-rail{clip-path:inset(calc(-1 * var(--reading-toc-rail-overflow, 0px)) 0);opacity:0;pointer-events:none;transform:translateZ(0);transition:opacity .3s ease}.reading-toc-rail-current{opacity:0;transition:opacity .3s ease}.note-toc-stage.has-reading-rail.is-reading:not(.is-hovered) .reading-toc-rail-current{opacity:1;transition:opacity .3s ease .3s}}@media(max-width:1199px){.note-toc-wrapper{display:none}.note-detail-page{max-width:min(var(--note-body-width),100%)}.note-detail{margin-left:0}}@media(max-width:960px){.note-detail-page{max-width:var(--note-body-width)}.note-detail{margin-left:0;width:100%}.note-back-link{margin-bottom:1rem;position:static}}html[data-reduced-motion=true] .note-toc-stage .note-toc{transition:none!important}@media(prefers-reduced-motion:reduce){.note-toc-stage .note-toc{transition:none!important}}@media(max-width:960px){.article-meta-rows{font-size:.875rem;gap:.5rem}.article-shared-meta,.article-stagger-meta{gap:.65em}}.note-tags{margin-top:clamp(3rem,5vw,4.5rem)}.note-tags-divider{border:0;border-top:1px dashed var(--color-line);margin:0 0 1.5rem}.note-tags-list{display:flex;flex-wrap:wrap;gap:.8rem}.note-tag-capsule{background:var(--color-paper);border:1px solid var(--color-line);border-radius:999px;color:var(--color-muted);display:inline-flex;font-family:var(--font-ui);font-size:.85rem;padding:.35rem .9rem;text-decoration:none;transition:background .16s ease,border-color .16s ease,color .16s ease}.note-tag-capsule:hover,.note-tag-capsule:focus-visible{border-color:var(--color-accent);color:var(--color-accent)}.post-comments{border-top:1px dashed var(--color-line);margin-top:clamp(3.5rem,6vw,5rem);padding-top:clamp(2rem,4vw,3rem)}#giscus{min-height:150px}#giscus .giscus-frame{display:block;width:100%;min-height:150px;border:0;color-scheme:inherit}#giscus .giscus-frame--loading{opacity:0}.note-right-controls{display:flex;flex-direction:column;gap:16px;margin-top:16px;padding-left:2px;opacity:1;transition:opacity .3s ease}.note-rc-progress{display:flex;align-items:center;gap:12px}.note-rc-ring{transform:rotate(-90deg);width:24px;height:24px}.note-rc-ring-bg{fill:none;stroke:var(--color-line);stroke-width:2.5}.note-rc-ring-fg{fill:none;stroke:var(--color-accent);stroke-width:2.5;stroke-dasharray:62.8318;stroke-dashoffset:62.8318;stroke-linecap:round;transition:stroke-dashoffset .15s cubic-bezier(.2,0,0,1)}.note-rc-text{font-family:var(--font-ui);font-size:.85rem;color:var(--color-muted);font-weight:500;font-variant-numeric:tabular-nums}.note-rc-btn{background:transparent;border:none;padding:0;display:flex;align-items:center;gap:8px;color:var(--color-muted);font-family:var(--font-ui);font-size:.82rem;font-weight:500;cursor:pointer;transition:color .16s ease;width:fit-content}.note-rc-btn:hover,.note-rc-btn:focus-visible{color:var(--color-accent)}.note-rc-btn .material-symbol{font-size:1.15rem}.mobile-reading-controls{display:none}@media(max-width:960px){.note-right-controls{display:none}.mobile-reading-controls{display:block;position:fixed;top:var(--mobile-topbar-height);left:0;width:100%;height:32px;z-index:2005;overflow:hidden;background:transparent;transform:translateY(0);transition:transform .3s cubic-bezier(.4,0,.2,1) 0ms,height .3s cubic-bezier(.4,0,.2,1) .3s}body.mobile-top-bar-hidden .mobile-reading-controls{height:2px;transform:translateY(calc(var(--mobile-topbar-height) * -1));transition:height .3s cubic-bezier(.4,0,.2,1) 0ms,transform .3s cubic-bezier(.4,0,.2,1) .3s}body.is-mobile-drawer-open .mobile-reading-controls{height:2px;transform:translateY(0);transition:height .3s cubic-bezier(.4,0,.2,1) 0ms}body.is-at-top .mobile-reading-controls,body.is-scrolling-down:not(.mobile-top-bar-hidden) .mobile-reading-controls{transform:translateY(-32px);transition:transform .3s cubic-bezier(.4,0,.2,1) 0ms}.rc-layer{position:absolute;top:0;left:0;width:100%;height:32px;display:flex;align-items:center;justify-content:space-between}.rc-base{background:var(--color-page);color:var(--color-text);border-bottom:1px solid var(--color-line)}.rc-progress{background:var(--color-text);color:var(--color-page);pointer-events:none;clip-path:inset(0 calc(100% - var(--reading-progress)) 0 0);transition:background-color .3s cubic-bezier(.4,0,.2,1) .3s}body.mobile-top-bar-hidden .rc-progress,body.is-mobile-drawer-open .rc-progress{background:var(--color-accent);transition:background-color .3s cubic-bezier(.4,0,.2,1) 0ms}.mobile-reading-btn{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:flex;height:100%;justify-content:center;padding:0 24px;transition:opacity .16s ease}.mobile-reading-btn:active{opacity:.6}.mobile-reading-btn .material-symbol{font-size:1.25rem}.mobile-reading-percentage{color:inherit;font-family:var(--font-ui);font-size:.85rem;font-weight:500}}.mobile-toc-fab,.mobile-toc-sheet{display:none}@media(max-width:1199px){.mobile-toc-fab{align-items:center;background:var(--color-page);border:1px solid var(--color-line);border-right:none;border-radius:24px 0 0 24px;bottom:calc(env(safe-area-inset-bottom) + 120px);box-shadow:0 4px 12px #00000014;color:var(--color-text);cursor:pointer;display:flex;height:48px;justify-content:center;padding:0 12px 0 16px;position:fixed;right:0;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1);width:auto;z-index:90}.mobile-toc-fab.is-hidden{transform:translate(100%)}.mobile-toc-sheet{display:block;height:100%;height:100dvh;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:100}.mobile-toc-backdrop{background:#0006;height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.mobile-toc-sheet.is-open .mobile-toc-backdrop{opacity:1;pointer-events:auto}.mobile-toc-panel{background:var(--color-page);border-radius:24px 24px 0 0;bottom:0;box-shadow:0 -4px 16px #0000001a;display:flex;flex-direction:column;max-height:min(42rem,calc(85dvh - env(safe-area-inset-top)));overflow:hidden;position:absolute;transform:translateY(100%);transition:transform .4s cubic-bezier(.2,0,0,1);width:100%}.mobile-toc-sheet.is-open .mobile-toc-panel{pointer-events:auto;transform:translateY(0)}.mobile-toc-sheet.is-dragging .mobile-toc-panel{transition:none}.mobile-toc-drag-handle{background:var(--color-muted);border-radius:2px;cursor:grab;height:4px;margin:12px auto;width:32px}.mobile-toc-drag-handle:active{cursor:grabbing}.mobile-toc-header{align-items:center;display:flex;justify-content:center;padding:0 16px 16px}.mobile-toc-nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 24px 24px;position:relative}.mobile-toc-nav ol{list-style:none;margin:0;padding:0;position:relative}.mobile-toc-nav li{font-size:.95rem;line-height:1.5;margin:8px 0}.mobile-toc-nav a{color:var(--color-muted);text-decoration:none;transition:color .2s ease;display:block;padding:6px 0}.mobile-toc-nav li.is-active>a{color:var(--color-accent);font-weight:500}.mobile-toc-nav .note-toc-indicator{background:var(--color-accent);border-radius:2px;height:18px;left:12px;opacity:0;position:absolute;top:0;transform:translateY(var(--indicator-y, 0)) scaleY(var(--indicator-scale, 1));transition:transform .3s cubic-bezier(.2,0,0,1),opacity .3s ease;width:3px}.mobile-toc-nav:hover .note-toc-indicator,.mobile-toc-nav:focus-within .note-toc-indicator{opacity:.3}.mobile-toc-nav.has-active .note-toc-indicator{opacity:1}}.note-toc-divider{border-top:1px dashed var(--color-line);margin:16px 0;width:100%}.note-toc-stage.has-reading-rail.is-reading .note-toc-divider{transition:opacity var(--reading-toc-rail-state-duration) ease,transform var(--reading-toc-rail-state-duration) var(--reading-toc-rail-state-ease)}.note-toc-stage.has-reading-rail.is-reading:not(.is-hovered) .note-toc-divider{opacity:0;transform:translate3d(calc(var(--reading-toc-rail-collapse-shift) * -1),0,0)}body[data-reader-mode=immersive] .side-rail,body[data-reader-mode=immersive] .persistent-logo-container,body[data-reader-mode=immersive] .mobile-drawer,body[data-reader-mode=immersive] .mobile-drawer-mask,body[data-reader-mode=immersive] .mobile-overlay-container,body[data-reader-mode=immersive] .note-tags,body[data-reader-mode=immersive] .post-comments,body[data-reader-mode=immersive] .note-back-link{display:none!important}body[data-reader-mode=immersive] .page-shell{grid-template-columns:minmax(0,1fr)!important;margin:0 auto}body[data-reader-mode=immersive] .page-main{grid-column:1!important}body[data-reader-mode=immersive]{--note-text-size: 1.0625rem;--note-body-width: 52rem;--note-title-size: clamp(2rem, 3.5vw, 2.5rem)}body[data-reader-mode=immersive] .notes-page{display:block;max-width:var(--note-body-width);margin-inline:auto}body[data-reader-mode=immersive] .note-detail{width:100%;max-width:var(--note-body-width);margin-inline:auto;padding-inline:0!important}body[data-reader-mode=immersive] .note-toc-wrapper{--reading-toc-rail-eligible: 0}body[data-reader-mode=immersive] .mobile-toc-fab.is-hidden{transform:translate(0)}@media(min-width:1200px){body[data-reader-mode=immersive] .page-main{padding-inline:clamp(24px,4vw,64px)}body[data-reader-mode=immersive] .notes-page:has(.note-toc-wrapper){display:grid;grid-template-columns:minmax(0,var(--note-body-width)) var(--note-toc-width);gap:32px;max-width:calc(var(--note-body-width) + var(--note-toc-width) + 32px)}body[data-reader-mode=immersive] .note-detail-page .notes-aside{position:static;width:var(--note-toc-width)}}body[data-reader-mode=immersive] .note{width:100%}body[data-reader-mode=immersive] .post-content{line-height:1.85}body[data-reader-mode=immersive] .note-title-wrapper{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:16px}.reader-progress-bar{display:none}@media(max-width:960px){body[data-reader-mode=immersive] .mobile-reading-controls{display:none!important}body[data-reader-mode=immersive] .reader-progress-bar{display:block;position:fixed;top:0;left:0;width:100%;height:2px;pointer-events:none;z-index:2005;background:linear-gradient(to right,var(--color-accent) 0,var(--color-accent) var(--reading-progress, 0%),var(--color-line) var(--reading-progress, 0%),var(--color-line) 100%);transform:translateY(max(var(--reader-progress-visual-top, 0px),env(safe-area-inset-top,0px)))}}@media(min-width:961px)and (max-width:1399px){.note-back-link{left:0;top:-40px;height:32px;width:32px}}.archive-page{min-width:0;width:min(var(--note-body-width),100%)}.archive-timeline{min-width:0}.archive-header{margin-bottom:clamp(2rem,4vw,3.5rem)}.archive-stats{display:flex;flex-wrap:wrap;gap:2rem;align-items:baseline;font-family:var(--font-cormorant)}.archive-stat-item{display:flex;align-items:baseline;gap:.35rem}.archive-stat-num{font-size:2.5rem;font-weight:700;color:var(--color-text);line-height:1;font-variant-numeric:tabular-nums}.archive-stat-unit{font-size:.95rem;color:var(--color-muted);font-weight:500}.archive-stats-secondary{margin-top:1.25rem;gap:1.5rem;font-family:var(--font-cormorant);font-style:italic}.archive-stats-secondary .archive-stat-num{font-size:1.35rem;font-weight:600}.archive-stats-secondary .archive-stat-unit{font-size:1.35rem;letter-spacing:.05em}.archive-year{display:grid;gap:clamp(1.6rem,4vw,2.4rem);grid-template-columns:5.2rem minmax(0,1fr);position:relative}.archive-year+.archive-year{margin-top:clamp(2.8rem,6vw,4.5rem)}.archive-year h2{color:var(--color-text);font-family:var(--font-cormorant);font-size:clamp(1.35rem,2.6vw,1.75rem);font-style:italic;font-weight:600;letter-spacing:0;line-height:1;margin:0}.archive-list{--archive-dot-size: 9px;--archive-list-pad: 1.45rem;border-left:1px solid var(--color-line);display:grid;gap:1.9rem;list-style:none;margin:0;padding:0 0 0 var(--archive-list-pad)}.archive-item{display:grid;gap:clamp(.9rem,3vw,1.35rem);grid-template-columns:4.2rem minmax(0,1fr);position:relative}.archive-item:before{background:var(--color-page);border:1.5px solid var(--color-line);border-color:color-mix(in srgb,var(--color-muted) 35%,var(--color-line));border-radius:999px;content:"";height:var(--archive-dot-size);left:calc(-1 * var(--archive-list-pad) - 4.5px);position:absolute;top:.38rem;transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease;width:var(--archive-dot-size);z-index:1}.archive-item:hover:before,.archive-item:focus-within:before{background:var(--color-accent);border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-page)}.archive-item time{color:var(--color-muted);font-family:var(--font-cormorant);font-size:.96rem;font-style:italic;line-height:1.25;transition:color .2s ease;white-space:nowrap}.archive-entry{min-width:0}.archive-entry a{color:var(--color-text);font-family:var(--font-serif);font-size:1.02rem;font-weight:700;line-height:1.4;text-decoration:none;transition:color .2s ease}.archive-item:hover time,.archive-item:focus-within time{color:var(--color-muted)}.archive-item:hover .archive-entry a,.archive-item:focus-within .archive-entry a,.archive-entry a:hover,.archive-entry a:focus-visible{color:var(--color-hover-text)}.archive-entry a:focus-visible{outline:1px solid var(--color-accent);outline-offset:4px}.archive-reading-time{color:var(--color-muted);display:inline-block;font-family:var(--font-cormorant);font-size:1.02rem;font-style:italic;margin-left:.65rem;white-space:nowrap}.archive-entry p,.archive-empty{color:var(--color-muted);font-family:var(--font-body);font-size:.94rem;line-height:1.75}.archive-entry p{margin:.45rem 0 0}.archive-empty{margin:0}@media(max-width:960px){.archive-page{width:100%}}@media(max-width:640px){.archive-stats{gap:1.5rem}.archive-stat-num{font-size:2.1rem}.archive-year{display:block}.archive-year h2{margin-bottom:1.4rem}.archive-list{--archive-list-pad: 1.2rem}.archive-item{grid-template-columns:3.7rem minmax(0,1fr)}.archive-reading-time{display:block;margin:.25rem 0 0}.archive-entry p{display:none}}.archive-virtual-list{--archive-year-column: 5.2rem;--archive-column-gap: clamp(1.6rem, 4vw, 2.4rem);--archive-axis-x: calc(var(--archive-year-column) + var(--archive-column-gap));position:relative;min-width:0}@media(max-width:640px){.archive-virtual-list{--archive-axis-x: 0px}}.archive-virtual-list:before{content:"";position:absolute;top:0;bottom:0;width:1px;left:var(--archive-axis-x);background:var(--color-line);pointer-events:none;z-index:0}.archive-virtual-row{display:grid;gap:var(--archive-column-gap);grid-template-columns:var(--archive-year-column) minmax(0,1fr);position:relative}.archive-year-row{padding-top:clamp(2.8rem,6vw,4.5rem)}.archive-year-row.is-first-year{padding-top:0}.archive-year-row h2{color:var(--color-text);font-family:var(--font-cormorant);font-size:clamp(1.35rem,2.6vw,1.75rem);font-style:italic;font-weight:600;letter-spacing:0;line-height:1;margin:0;grid-column:1}.archive-item-track{--archive-dot-size: 9px;--archive-list-pad: 1.45rem;border-left:none;padding:0 0 1.9rem var(--archive-list-pad);grid-column:2;position:relative;height:100%}@media(max-width:640px){.archive-item-track{--archive-list-pad: 1.2rem}}.archive-item-track .archive-item{display:grid;gap:clamp(.9rem,3vw,1.35rem);grid-template-columns:4.2rem minmax(0,1fr);position:relative;opacity:1;transform:none}.archive-item-row.is-pending-reveal .archive-item{opacity:0}.archive-item-row.is-seen .archive-item{opacity:1!important;animation:none!important;transform:none!important}@media(max-width:640px){.archive-virtual-row{display:block}.archive-year-row h2{margin-bottom:1.4rem;padding-left:var(--archive-list-pad, 1.2rem)}}.about-body .page-frame{position:relative;z-index:1}.about-page{max-width:min(44rem,100%);min-height:calc(100vh - 160px);position:relative}.about-content{max-width:var(--note-body-width);padding-top:clamp(3rem,9vh,7rem);position:relative;width:100%;z-index:2}.about-content h1{display:flex;align-items:center;gap:.6rem;font-family:var(--font-serif);font-size:var(--note-title-size);font-style:italic;font-weight:650;line-height:1.15;margin:0}.about-summary{color:var(--color-muted);font-family:var(--font-body);font-size:.94rem;line-height:1.75;margin:1.2rem 0 0;max-width:42rem}.about-summary:first-letter{color:var(--color-accent);float:left;font-family:var(--font-ui);font-size:3.4em;font-style:italic;font-weight:700;line-height:.92;margin-top:4px;padding:4px 10px 0 0}.about-markdown{margin-top:2.2rem}.about-meta{color:var(--color-muted);display:flex;flex-direction:column;align-items:flex-end;font-family:var(--font-cormorant);font-style:italic;font-weight:600;font-size:clamp(.95rem,1.3vw,1.12rem);gap:.6em;line-height:1;margin:2.5rem 0 1.5rem}.about-meta-group{display:inline-flex;align-items:center;gap:.45rem}.about-engagement{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.8rem}.about-time-group{text-align:right;line-height:1.4}.golden-spiral{--phi: 1.61803398875;--golden-curve-delay: 1.618s;--golden-guide-grow-duration: 8.09s;--golden-curve-grow-duration: 13.09s;--golden-hold-duration: 1.618s;--golden-curve-shrink-duration: 8.09s;--golden-guide-shrink-window: 5s;--golden-hidden-duration: .618s;--golden-loop-duration: 30.154s;contain:strict;inset:0;opacity:.9;pointer-events:none;position:fixed;user-select:none;z-index:0}.golden-spiral svg{display:block;height:100%;width:100%}@keyframes golden-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.golden-spiral-stage{animation:golden-spin var(--golden-loop-duration) linear infinite;transform-box:view-box;will-change:transform}.golden-rect,.golden-diagonal,.golden-curve{animation-duration:var(--golden-loop-duration);animation-fill-mode:both;animation-iteration-count:infinite;animation-timing-function:var(--ease-page);fill:none;opacity:0;stroke-linecap:round}.golden-rect{stroke-width:1;stroke:var(--color-golden-rect)}.golden-diagonal{stroke-width:.809;stroke:var(--color-golden-diagonal)}.golden-curve{stroke-width:1.618;animation-name:golden-curve-life;animation-timing-function:linear;stroke:var(--color-golden-curve);stroke-dasharray:1;stroke-dashoffset:1;stroke-linejoin:round}@media(max-width:960px){.about-content{padding-top:clamp(2rem,8vh,4rem)}}@media(max-width:960px){.golden-spiral{display:none}}html[data-reduced-motion=true] .golden-spiral{display:none}@media(prefers-reduced-motion:reduce){.golden-spiral{display:none}}.graph-body .page-main{grid-column:2;padding:88px clamp(24px,4vw,40px) 0;display:flex;flex-direction:column;height:calc(100dvh - 84px)}.graph-body .page-main #main-content-wrapper,.graph-page{display:flex;flex:1;flex-direction:column;min-height:0;width:100%}.graph-shell{flex:1;display:flex;position:relative;min-height:400px;overflow:hidden;background:var(--color-paper);border-radius:16px;box-shadow:0 2px 4px color-mix(in srgb,var(--color-text) 7%,transparent),0 8px 20px color-mix(in srgb,var(--color-text) 4%,transparent)}#graph-container{flex:1;width:100%;height:100%;min-height:400px;cursor:grab}#graph-container:active{cursor:grabbing}#graph-container svg{display:block}.graph-shell [hidden]{display:none!important}.graph-shell .graph-toolbar{position:absolute;top:16px;left:16px;display:flex;flex-wrap:nowrap;gap:8px;z-index:3;max-width:calc(100% - 32px)}.graph-shell .graph-toolbar .notes-action-button{flex-shrink:0}.graph-shell .graph-toolbar .notes-action-button:disabled{opacity:.4;cursor:not-allowed}.graph-action-text{display:none}.graph-search-panel{position:absolute;top:calc(100% + 8px);left:0;width:min(240px,calc(100vw - 64px));max-height:0;overflow:hidden;display:flex;flex-direction:column;background:var(--color-page);font:14px/1.5 var(--font-ui);visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-8px);transition:max-height .36s cubic-bezier(.2,.78,.24,1),opacity .22s ease,transform .32s cubic-bezier(.22,1,.36,1),visibility 0ms linear .36s}.graph-toolbar.is-search-open .graph-search-panel{max-height:min(420px,55dvh);overflow-y:auto;visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0);transition-delay:0ms}.graph-toolbar.is-search-open #graph-search-btn{color:var(--color-accent)}.graph-shell button,.graph-shell input,.graph-shell select{font:inherit}.graph-shell .graph-button{min-height:40px;padding:8px 14px;border:1px solid var(--color-line);border-radius:20px;color:var(--color-text);background:var(--color-paper);cursor:pointer;font-family:var(--font-ui);font-size:13px}.graph-shell .graph-button:hover,.graph-shell .graph-button[aria-expanded=true]{background:color-mix(in srgb,var(--color-accent) 12%,var(--color-paper));color:var(--color-accent)}.graph-shell button:disabled{opacity:.4;cursor:default}.graph-shell :is(button,input,select,summary,[tabindex]):focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.graph-panel{position:absolute;z-index:4;width:420px;max-width:calc(100% - 24px);max-height:none;height:auto;margin:0;padding:0;inset:12px 12px 12px auto;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;background:var(--color-paper);border:0;border-radius:20px;box-shadow:0 8px 30px #0000001f;color:var(--color-text);font:14px/1.5 var(--font-ui)}.graph-panel-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:var(--color-paper);border-bottom:1px solid var(--color-line)}.graph-panel-header strong{font-size:16px;font-weight:600}.graph-panel-actions{display:flex;align-items:center;gap:4px}.graph-shell .graph-panel-action{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--color-muted);cursor:pointer;transition:background .16s ease,color .16s ease}.graph-panel-action .material-symbol{font-size:22px}.graph-shell .graph-panel-action:hover,.graph-shell .graph-panel-action:focus-visible{background:color-mix(in srgb,var(--color-accent) 12%,var(--color-paper));color:var(--color-accent)}.graph-section-title{display:flex;align-items:center;gap:10px;margin:0;font:inherit;padding:12px 20px;font-weight:600}.graph-section-title .material-symbol{color:var(--color-muted);font-size:20px}.graph-section-body{padding:0 20px 12px;display:flex;flex-direction:column;gap:8px}.graph-shell .graph-query{width:100%;box-sizing:border-box;opacity:1;transform:none;font:.84rem/1.4 var(--font-ui)}.graph-shell .graph-query:focus-visible{outline:0}.graph-shell .graph-query[aria-invalid=true]{border-color:#c44c4c}.graph-switch-row{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.graph-shell .graph-switch{flex:0 0 52px}.graph-slider-row{display:flex;flex-direction:column;gap:8px}@property --graph-progress{syntax: "<percentage>"; inherits: true; initial-value: 0%;}.graph-slider{--graph-slider-duration: var(--motion-expressive-effects-duration, .2s);--graph-slider-easing: var(--motion-expressive-effects-easing, cubic-bezier(.34, .8, .34, 1));position:relative;height:44px;transition:--graph-progress var(--graph-slider-duration) var(--graph-slider-easing)}.graph-slider.is-dragging{transition:none}.graph-slider-visual{position:absolute;top:0;left:20px;right:20px;height:44px;pointer-events:none}.graph-slider-active,.graph-slider-inactive{position:absolute;top:14px;height:16px;border-radius:8px}.graph-slider-active{left:0;width:max(0px,calc(var(--graph-progress) - 9px));background:var(--color-accent)}.graph-slider-inactive{left:min(100%,calc(var(--graph-progress) + 9px));right:0;overflow:hidden;background:color-mix(in srgb,var(--color-accent) 22%,var(--color-paper))}.graph-slider-end{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:var(--color-accent)}.graph-slider-handle{position:absolute;top:0;left:var(--graph-progress);width:4px;height:44px;border-radius:2px;transform:translate(-50%);background:var(--color-accent);transition:width var(--graph-slider-duration) var(--graph-slider-easing)}.graph-slider:is(.is-dragging,:has(input:focus-visible)) .graph-slider-handle{width:2px}.graph-slider-value{position:absolute;bottom:calc(100% + 6px);left:var(--graph-progress);z-index:1;display:grid;place-items:center;min-width:40px;height:24px;padding:0 10px;box-sizing:border-box;border-radius:999px;background:var(--color-accent);color:var(--color-paper);font:500 12px/1 var(--font-ui);font-variant-numeric:tabular-nums;box-shadow:0 3px 8px #00000024;opacity:0;transform:translate(-50%,6px) scale(.82);transform-origin:bottom center;transition:opacity var(--graph-slider-duration) var(--graph-slider-easing),transform var(--graph-slider-duration) var(--graph-slider-easing)}.graph-slider:is(:hover,.is-dragging,:has(input:focus-visible)) .graph-slider-value{opacity:1;transform:translate(-50%) scale(1)}.graph-slider:has(input:focus-visible) .graph-slider-visual{outline:2px solid var(--color-accent);outline-offset:0;border-radius:8px}.graph-shell .graph-slider input[type=range]{appearance:none;position:absolute;top:0;left:0;width:100%;height:44px;margin:0;opacity:0;cursor:pointer;touch-action:pan-y}.graph-shell .graph-slider input[type=range]::-webkit-slider-runnable-track{height:16px}.graph-shell .graph-slider input[type=range]::-webkit-slider-thumb{appearance:none;width:40px;height:44px;margin-top:-14px}.graph-shell .graph-slider input[type=range]::-moz-range-track{height:16px}.graph-shell .graph-slider input[type=range]::-moz-range-thumb{width:40px;height:44px;border:0}.graph-slider:has(input:disabled){opacity:.38}.graph-slider:has(input:disabled) .graph-slider-value{opacity:0}.graph-shell .graph-slider input:disabled{cursor:not-allowed}.graph-error{color:#c44c4c;font-size:12px;overflow-wrap:anywhere;margin:0}.graph-error:empty{display:none}.graph-status{position:absolute;bottom:12px;left:16px;right:16px;pointer-events:none;color:var(--color-muted);font:12px var(--font-ui);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.graph-status button{pointer-events:auto}.graph-link{stroke:var(--color-line);stroke-opacity:.55;transition:stroke-opacity var(--duration-fast, .24s),stroke var(--duration-fast, .24s)}.graph-arrow{fill:var(--color-muted)}.graph-node{fill:var(--color-text);stroke:var(--color-paper);stroke-width:1.5px;transition:fill var(--duration-fast, .24s),opacity var(--duration-fast, .24s),stroke var(--duration-fast, .24s),stroke-width var(--duration-fast, .24s);cursor:pointer}.graph-node.is-tag{fill:var(--syntax-inserted)}.graph-node.is-attachment{fill:var(--graph-node-attachment)}.graph-node.is-missing{fill:var(--color-muted);stroke-dasharray:2 2;cursor:default}.graph-node.is-center{stroke:var(--color-accent);stroke-width:2px}.graph-label{font-size:10px;fill:var(--color-muted);pointer-events:none;font-family:var(--font-serif);paint-order:stroke;stroke:var(--color-paper);stroke-width:3px;stroke-linejoin:round;transition:opacity var(--duration-fast, .24s),fill var(--duration-fast, .24s)}.graph-dimmed .graph-node:not(.is-highlight){opacity:.18}.graph-dimmed .graph-label:not(.is-highlight){opacity:.1!important}.graph-dimmed .graph-link:not(.is-highlight){stroke-opacity:.06}.graph-node.is-hovered{fill:var(--color-accent);stroke:none;stroke-width:0}.graph-link.is-highlight{stroke:var(--color-accent);stroke-opacity:.9}.graph-label.is-highlight{fill:var(--color-text)}body.graph-modal-open{overflow:hidden}html.has-custom-cursor .graph-panel:modal,html.has-custom-cursor .graph-panel:modal *{cursor:auto!important}html.has-custom-cursor .graph-panel:modal :is(button,input[type=range]){cursor:pointer!important}@media(max-width:960px){.graph-body .page-shell{flex:0 0 auto;min-height:0}.graph-body .page-main{padding:8px 12px max(8px,env(safe-area-inset-bottom));height:calc(100dvh - var(--mobile-topbar-height, 64px));min-height:0}.graph-body .home-footer:not(:has(.footer-copyright)){display:none}.graph-shell{flex-direction:column;border-radius:0;min-height:0;background:transparent;box-shadow:none}#graph-controls{flex:0 0 auto}#graph-container{height:auto;min-height:0}.graph-panel{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border-radius:0;box-shadow:none}.graph-panel::backdrop{background:var(--color-paper)}.graph-panel-header{padding-top:max(12px,env(safe-area-inset-top))}.graph-panel .graph-section:last-child .graph-section-body{padding-bottom:max(16px,env(safe-area-inset-bottom))}.graph-shell .graph-toolbar{position:relative;left:auto;top:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 8px;max-width:none;width:100%;margin-bottom:8px;padding:4px 6px}.graph-shell .graph-toolbar:has(#graph-full-btn:not([hidden])){grid-template-columns:repeat(5,minmax(0,1fr))}.graph-shell .graph-toolbar .notes-action-button{min-width:0;width:100%;max-width:none;height:auto;min-height:48px;display:flex;flex-direction:column;gap:6px;padding:4px 0;border-radius:8px}.graph-search-panel{width:100%}.graph-action-text{display:block;font-family:var(--font-ui);font-size:11px;line-height:1.2;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}}@media(prefers-reduced-motion:reduce){.graph-shell *,.graph-shell *:before{transition:none!important}}.bilingual-toggle-btn{position:relative;width:24px;height:24px;background:transparent;border:none;padding:0;cursor:pointer;color:var(--color-muted);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;vertical-align:middle;transform:translateY(-2px)}.bilingual-toggle-btn:hover,.bilingual-toggle-btn:focus-visible{color:var(--color-text)}.bilingual-toggle-btn:focus-visible{outline:1px solid var(--color-accent);outline-offset:4px;border-radius:2px}.bilingual-toggle-btn .material-symbol{font-size:1.2rem}.bilingual-toggle-btn:hover .material-symbol,.bilingual-toggle-btn:focus-visible .material-symbol{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.note-header .bilingual-toggle-btn:hover,.note-header .bilingual-toggle-btn:focus-visible,.about-content .bilingual-toggle-btn:hover,.about-content .bilingual-toggle-btn:focus-visible{color:var(--color-hover-text)}.note-header .bilingual-toggle-btn:hover .material-symbol,.note-header .bilingual-toggle-btn:focus-visible .material-symbol,.about-content .bilingual-toggle-btn:hover .material-symbol,.about-content .bilingual-toggle-btn:focus-visible .material-symbol{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.markdown{color:var(--color-text);font-family:var(--font-body);font-size:var(--note-text-size);line-height:1.75;overflow-wrap:anywhere;word-wrap:break-word;overflow-x:clip}.markdown>*{margin:0 0 24px}.markdown>*:last-child{margin-bottom:0}.markdown p{color:var(--color-text);font-size:var(--note-text-size);line-height:1.75;margin:0 0 24px;max-width:100%}.markdown h1,.markdown h2,.markdown h3,.markdown h4{color:var(--color-text);font-family:var(--font-serif);font-weight:700;overflow-wrap:anywhere;word-wrap:break-word}.markdown h1 strong,.markdown h2 strong,.markdown h3 strong,.markdown h4 strong{font-weight:900}.markdown h1{font-size:28px;line-height:1.2;margin:50px 0 18px}.markdown h2{font-size:23px;line-height:1.25;margin:46px 0 16px;position:relative}.markdown h3{font-size:19px;font-weight:600;line-height:1.35;margin:34px 0 14px;position:relative}.markdown h4{font-size:16.5px;font-weight:500;line-height:1.4;margin:28px 0 12px}.markdown a{color:var(--color-text);overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--color-text) 35%,transparent);text-decoration-thickness:1px;text-underline-offset:3px;transition:color .2s ease,text-decoration-color .2s ease;word-break:break-word}.markdown a:hover,.markdown a:focus-visible{color:var(--color-hover-text);text-decoration-color:var(--color-hover-text)}.markdown a:focus-visible{border-radius:3px;outline:2px solid var(--color-accent);outline-offset:3px}.markdown strong{color:var(--color-text);font-weight:700}.markdown em{font-style:italic}.markdown del{color:var(--color-muted);text-decoration-color:color-mix(in srgb,var(--color-muted) 65%,transparent)}.markdown ul{list-style:none;margin:0 0 28px;max-width:100%;padding:0}.markdown ul ul,.markdown ul ol,.markdown ol ul,.markdown ol ol{margin:10px 0 4px;max-width:none;padding-left:24px}.markdown ul li{color:var(--color-text);font-size:var(--note-text-size);line-height:1.7;margin-bottom:10px;padding-left:22px;position:relative}.markdown ul li:not(:has(>input[type=checkbox])):before{background:var(--color-accent);border-radius:50%;content:"";height:5px;left:4px;position:absolute;top:.78em;width:5px}.markdown ul ul li{color:var(--color-muted);font-size:14.5px;margin-bottom:6px}.markdown ul ul li:not(:has(>input[type=checkbox])):before{background:transparent;border:1px solid var(--color-accent)}.markdown ol{margin:0 0 28px;max-width:100%;padding-left:22px}.markdown ol li{color:var(--color-text);font-size:var(--note-text-size);line-height:1.7;margin-bottom:10px;padding-left:6px}.markdown ol li::marker{color:var(--color-accent);font-family:var(--font-body);font-size:14px}.markdown li>p{display:inline;margin:0}.markdown li>ul,.markdown li>ol{margin-top:10px}.markdown input[type=checkbox]{accent-color:var(--color-accent);cursor:default;height:.95rem;left:0;margin:0;opacity:1;position:absolute;top:.38em;vertical-align:-.1em;width:.95rem}.markdown li:has(>input[type=checkbox]){list-style:none;padding-left:24px}.markdown blockquote{border-left:2px solid var(--color-accent);color:var(--color-muted);font-size:15px;font-style:italic;line-height:1.65;margin:28px 0;max-width:100%;padding:4px 0 4px 22px}.markdown blockquote p{color:inherit;font-size:inherit;margin:0 0 12px;max-width:none}.markdown blockquote p:last-child{margin-bottom:0}.markdown .callout{--callout-color: var(--color-accent);border-left:4px solid var(--callout-color);color:var(--color-text);margin:28px 0;max-width:100%;padding:2px 16px}.markdown .callout[data-callout=note],.markdown .callout[data-callout=abstract],.markdown .callout[data-callout=info],.markdown .callout[data-callout=todo]{--callout-color: var(--color-accent)}.markdown .callout[data-callout=tip],.markdown .callout[data-callout=success]{--callout-color: #4f6c3f}.markdown .callout[data-callout=important]{--callout-color: #6f5ea8}.markdown .callout[data-callout=warning],.markdown .callout[data-callout=question]{--callout-color: #9a6a21}.markdown .callout[data-callout=caution],.markdown .callout[data-callout=failure],.markdown .callout[data-callout=danger],.markdown .callout[data-callout=bug]{--callout-color: #9b392f}.markdown .callout[data-callout=example],.markdown .callout[data-callout=quote]{--callout-color: var(--color-muted)}:root[data-theme=dark] .markdown .callout[data-callout=tip],:root[data-theme=dark] .markdown .callout[data-callout=success]{--callout-color: #9bb978}:root[data-theme=dark] .markdown .callout[data-callout=important]{--callout-color: #b9a7e8}:root[data-theme=dark] .markdown .callout[data-callout=warning],:root[data-theme=dark] .markdown .callout[data-callout=question]{--callout-color: #d6b56d}:root[data-theme=dark] .markdown .callout[data-callout=caution],:root[data-theme=dark] .markdown .callout[data-callout=failure],:root[data-theme=dark] .markdown .callout[data-callout=danger],:root[data-theme=dark] .markdown .callout[data-callout=bug]{--callout-color: #ee8f7a}.markdown .callout-title{align-items:center;color:var(--callout-color);display:flex;font-size:15px;font-weight:600;line-height:1.35;margin:0 0 12px}.markdown .callout.is-title-only .callout-title{margin-bottom:0}.markdown .callout.is-collapsible .callout-title{cursor:pointer;list-style:none}.markdown .callout.is-collapsible .callout-title::-webkit-details-marker{display:none}.markdown .callout-icon{font-size:1.25em;margin-right:8px;font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.markdown .callout-title-inner{flex:1}.markdown .callout-fold-icon{font-size:1.25em;margin-left:8px;transform:rotate(-90deg);transition:transform .18s var(--ease-out)}.markdown .callout[open]>.callout-title .callout-fold-icon{transform:rotate(0)}.markdown .callout-content>:last-child,.markdown .md-fold-content>:last-child{margin-bottom:0}.markdown .callout p,.markdown .callout ul,.markdown .callout ol,.markdown .md-fold p,.markdown .md-fold ul,.markdown .md-fold ol{max-width:none}.markdown .callout img,.markdown .callout video,.markdown .callout iframe{max-width:100%}.markdown .md-fold{margin:28px 0;max-width:100%}.markdown .md-fold>summary{color:var(--color-text);cursor:pointer;font-weight:700;line-height:1.45;list-style:none;margin-bottom:16px;width:fit-content}.markdown .md-fold>summary::-webkit-details-marker{display:none}.markdown .md-fold>summary:before{border-bottom:6px solid transparent;border-left:10px solid currentColor;border-top:6px solid transparent;content:"";display:inline-block;margin-right:8px;transform:translate(2px,.5px);transition:transform .18s var(--ease-out)}.markdown .md-fold[open]>summary:before{transform:rotate(90deg) translate(.5px,-2px)}.markdown .md-gallery{display:flex;gap:16px;margin:32px 0;max-width:100%;overflow-x:auto;padding:2px 0 12px;scrollbar-color:color-mix(in srgb,var(--color-muted) 42%,transparent) transparent;scrollbar-width:thin}.markdown .md-gallery>figure,.markdown .md-gallery>p{flex:0 0 min(78%,30rem);margin:0;max-width:none}.markdown .md-gallery img{width:100%}.markdown .md-gallery.is-carousel{--gallery-height: clamp(13rem, 38vw, 18rem);--gallery-radius: 24px;display:block;height:var(--gallery-height);padding:0;position:relative;scrollbar-width:none;touch-action:pan-x pan-y pinch-zoom}.markdown .md-gallery.is-carousel::-webkit-scrollbar{display:none}.markdown .md-gallery.is-carousel:focus-visible{border-radius:var(--gallery-radius);outline:2px solid var(--color-accent);outline-offset:5px}.markdown .md-carousel-track{height:100%}.markdown .md-carousel-stage{height:100%;left:0;overflow:hidden;position:sticky}.markdown .md-carousel-item{background:var(--color-paper);border-radius:var(--gallery-radius);height:100%;left:0;margin:0;max-width:none;overflow:hidden;position:absolute;top:0}.markdown .md-carousel-item img{border:0;height:100%;left:50%;max-width:none;object-fit:cover;position:absolute;top:0;transform:translate(-50%);width:var(--gallery-image-width)}.markdown .md-carousel-item:has(:focus-visible){outline:2px solid var(--color-accent);outline-offset:-3px}.markdown .md-carousel-item figcaption,.memos-page .memo-photo-tile figcaption{background:linear-gradient(transparent,#000000b3);bottom:0;box-sizing:border-box;color:#fff;display:-webkit-box;font-family:var(--font-ui);font-size:.9rem;left:0;line-height:1.4;margin:0;opacity:var(--gallery-caption-opacity, 1);overflow:hidden;padding:36px 16px 16px;pointer-events:none;position:absolute;right:0;text-align:left;-webkit-box-orient:vertical;-webkit-line-clamp:2}.markdown .md-gallery.is-dragging,.markdown .md-gallery.is-dragging img{cursor:grabbing;user-select:none}.markdown .mermaid-block{background:color-mix(in srgb,var(--color-paper) 72%,transparent);border:0;border-radius:6px;margin:32px 0;max-width:100%;overflow-x:auto;padding:16px;scrollbar-color:color-mix(in srgb,var(--color-muted) 42%,transparent) transparent;scrollbar-width:thin;transition:background-color .35s ease}.markdown .mermaid-source{background:var(--color-code-bg);border:0;border-radius:4px;color:var(--syntax-text);margin:0;max-width:none;overflow-x:auto;padding:14px 16px;white-space:pre}.markdown .mermaid-source code{white-space:pre}.markdown .mermaid-diagram{color:var(--color-text);min-width:100%}.markdown .mermaid-diagram svg{display:block;height:auto;margin:0 auto;max-width:none}.markdown .mermaid-block.is-rendered .mermaid-source{display:none}.markdown .mermaid-error{color:#9b392f;font-size:.92rem;margin:12px 0 0;max-width:none}:root[data-theme=dark] .markdown .mermaid-error{color:#ee8f7a}.markdown .embed-card{background:color-mix(in srgb,var(--color-paper) 72%,transparent);border:0;border-radius:6px;color:var(--color-text);margin:28px 0;max-width:100%;min-width:0;overflow:hidden;transition:background-color .18s ease,color .18s ease}.markdown a.embed-card{display:block;padding:16px 18px;text-decoration:none}.markdown a.embed-card:hover,.markdown a.embed-card:focus-visible{background:color-mix(in srgb,var(--color-accent) 8%,var(--color-paper));color:var(--color-hover-text)}.markdown .embed-kicker,.markdown .embed-meta,.markdown .embed-action{color:var(--color-muted);display:block;font-size:12px;line-height:1.35}.markdown .embed-title{color:var(--color-text);display:block;font-size:16px;font-weight:700;line-height:1.45;margin:6px 0;overflow-wrap:anywhere}.markdown .embed-slash{color:var(--color-muted);margin:0 3px}.markdown .embed-action{margin-top:10px}.markdown .embed-frame{max-width:100%}.markdown .embed-frame iframe{background:var(--color-paper);border:0;display:block;max-width:100%;width:100%}.markdown .embed-frame-video{aspect-ratio:16 / 9}.markdown .embed-frame-video iframe{height:100%}.markdown .embed-frame-codepen iframe{min-height:360px}.markdown table{border-collapse:collapse;display:block;font-family:var(--font-body);font-size:14px;margin:28px 0;max-width:100%;overflow-x:auto;width:100%}.markdown th,.markdown td{border-bottom:1px solid var(--color-line);padding:8px 12px;text-align:left;vertical-align:top}.markdown th{color:var(--color-text);font-weight:700}.markdown td{color:var(--color-muted)}.markdown :not(pre)>code{background:var(--color-code-inline-bg);border:0;border-radius:3px;color:var(--color-muted);font-family:var(--font-mono);font-variant-ligatures:contextual common-ligatures;font-feature-settings:"liga" 1,"calt" 1;font-size:.9em;padding:1px 6px;transition:background-color .35s ease}:root[data-palette=warm] .markdown :not(pre)>code{background:var(--color-paper);color:var(--color-muted)}.markdown pre{background:var(--color-code-bg);border:0;border-radius:4px;box-shadow:none;color:var(--syntax-text);font-family:var(--font-mono);font-variant-ligatures:contextual common-ligatures;font-feature-settings:"liga" 1,"calt" 1;font-size:14px;line-height:1.7;margin:28px 0;max-width:100%;overflow-x:auto;padding:16px;transition:background-color .35s ease}.markdown pre code{background:transparent;border:0;border-radius:0;color:inherit;display:block;font-family:inherit;font-size:inherit;padding:0}.markdown hr{background:var(--color-line);border:0;height:1px;margin:40px 0}.markdown figure{margin:36px 0;padding:0}.markdown iframe,.markdown object,.markdown embed,.markdown audio{border:0}.markdown img,.markdown video{background:var(--color-paper);border:0;display:block;height:auto;max-width:100%}.markdown.post-content img{cursor:zoom-in}.markdown.post-content img.no-lightbox,.markdown.post-content img[data-no-lightbox=true]{cursor:auto}.markdown figcaption{color:color-mix(in srgb,var(--color-text) 72%,transparent);font-size:14px;line-height:1.5;margin-top:10px;text-align:center}.markdown .footnotes{border-top:1px solid var(--color-line);color:var(--color-muted);font-size:.9rem;margin-top:3rem;padding-top:1rem}.markdown .footnotes hr{display:none}.markdown .footnotes ol{margin-bottom:0}.markdown .footnotes li,.markdown .footnotes p{color:var(--color-muted);font-size:.9rem}.markdown .footnote-ref,.markdown .footnote-backref{color:var(--color-accent);text-decoration:none}.markdown .highlight,.markdown .chroma{background:var(--color-code-bg);color:var(--syntax-text)}.markdown .highlight{border:0;border-radius:4px;box-shadow:none;margin:28px 0;max-width:100%;overflow-x:auto;position:relative;transition:background-color .35s ease}.markdown .highlight pre{background:transparent;border:0;border-radius:0;box-shadow:none;margin:0;padding-right:3.5rem}.markdown pre.chroma{border:0;margin:0}.markdown .highlight.is-plain pre{color:var(--syntax-text)}.code-copy-button{align-items:center;background:transparent;border:0;border-radius:4px;color:var(--color-muted);cursor:pointer;display:inline-flex;height:2rem;justify-content:center;padding:0;position:absolute;right:.7rem;top:.7rem;opacity:0;pointer-events:none;transition:color .2s ease,opacity .2s ease;width:2rem;z-index:1}.markdown .highlight:hover .code-copy-button,.markdown .highlight:focus-within .code-copy-button,.code-copy-button.is-copied{opacity:1;pointer-events:auto}.code-copy-button .material-symbol{font-size:1.15rem;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;transition:font-variation-settings .16s var(--ease-out)}.code-copy-button:hover,.code-copy-button:focus-visible,.code-copy-button.is-copied{color:var(--color-hover-text)}.code-copy-button:hover .material-symbol,.code-copy-button:focus-visible .material-symbol,.code-copy-button.is-copied .material-symbol{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.code-copy-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.markdown h1,.markdown h2,.markdown h3,.markdown h4{scroll-margin-block-start:90px}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.markdown .heading-anchor{display:inline-flex;align-items:center;color:var(--color-hover-text);opacity:0;text-decoration:none;margin-left:.25em;font-size:.85em;transition:opacity .18s ease,color .18s ease;vertical-align:baseline;position:relative;top:.15em}.markdown .heading-anchor .material-symbol{font-size:inherit}.markdown h1:hover .heading-anchor,.markdown h2:hover .heading-anchor,.markdown h3:hover .heading-anchor,.markdown h4:hover .heading-anchor,.markdown .heading-anchor:focus-visible{opacity:1}.markdown .heading-anchor:hover{color:var(--color-primary)}.markdown-image{margin:32px 0}.markdown-image-center{text-align:center}.markdown-image-center img{margin-left:auto;margin-right:auto}@media(hover:none){.markdown .heading-anchor{opacity:.45}}@media(max-width:720px){.markdown p,.markdown ul li,.markdown ol li{font-size:15px;line-height:1.72}.markdown h1{font-size:25px;margin:44px 0 16px}.markdown h2{font-size:21px;margin:38px 0 14px}.markdown h3{font-size:18px;margin:28px 0 12px}.markdown figure{margin:28px 0}}@media(max-width:420px){.markdown p,.markdown ul li,.markdown ol li{font-size:15px;line-height:1.7}.markdown h1{font-size:23px;margin:36px 0 14px}.markdown h2{font-size:19.5px;margin:32px 0 12px}.markdown h3{font-size:17px;margin:24px 0 10px}.markdown ul{padding-left:0}.markdown ul ul,.markdown ul ol,.markdown ol ul,.markdown ol ol{padding-left:20px}.markdown ul li{padding-left:18px}.markdown blockquote{font-size:15px;padding-left:16px}.markdown figcaption{font-size:13.5px}}.markdown .heading-anchor:focus-visible{border-radius:3px;outline:2px solid var(--color-accent);outline-offset:3px}.markdown .chroma .line{display:block;min-height:1.7em}.markdown .chroma .cl{display:inline}.markdown .chroma .w{color:inherit}.markdown .chroma .c,.markdown .chroma .ch,.markdown .chroma .cm,.markdown .chroma .c1,.markdown .chroma .cs,.markdown .chroma .cp,.markdown .chroma .cpf{color:var(--syntax-comment);font-style:italic}:root[data-palette=default] .markdown .chroma .c,:root[data-palette=default] .markdown .chroma .ch,:root[data-palette=default] .markdown .chroma .cm,:root[data-palette=default] .markdown .chroma .c1,:root[data-palette=default] .markdown .chroma .cs,:root[data-palette=default] .markdown .chroma .cp,:root[data-palette=default] .markdown .chroma .cpf{font-style:normal}.markdown .chroma .k,.markdown .chroma .kc,.markdown .chroma .kd,.markdown .chroma .kn,.markdown .chroma .kp,.markdown .chroma .kr,.markdown .chroma .kt{color:var(--syntax-keyword)}.markdown .chroma .s,.markdown .chroma .sa,.markdown .chroma .sb,.markdown .chroma .sc,.markdown .chroma .dl,.markdown .chroma .sd,.markdown .chroma .s2,.markdown .chroma .se,.markdown .chroma .sh,.markdown .chroma .si,.markdown .chroma .sx,.markdown .chroma .sr,.markdown .chroma .s1,.markdown .chroma .ss{color:var(--syntax-string)}.markdown .chroma .m,.markdown .chroma .mb,.markdown .chroma .mf,.markdown .chroma .mh,.markdown .chroma .mi,.markdown .chroma .il,.markdown .chroma .mo{color:var(--syntax-number)}.markdown .chroma .nf,.markdown .chroma .nb,.markdown .chroma .nx,.markdown .chroma .nc,.markdown .chroma .nd,.markdown .chroma .ne{color:var(--syntax-function)}.markdown .chroma .nt{color:var(--syntax-tag)}.markdown .chroma .na{color:var(--syntax-attr)}.markdown .chroma .o,.markdown .chroma .ow,.markdown .chroma .p{color:var(--syntax-operator)}.markdown .chroma .err{color:var(--syntax-error)}.markdown .chroma .gi{color:var(--syntax-inserted)}.markdown .chroma .gd{color:var(--syntax-deleted)}.markdown .gc-container{margin:1.5rem 0;display:block;overflow-x:auto;border-radius:6px;background:color-mix(in srgb,var(--color-text) 5%,transparent);padding:1rem 1.25rem;transition:background-color .2s ease-out,color .2s ease-out;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--color-text) 15%,transparent) transparent;text-decoration:none;color:var(--color-text)}.markdown .gc-container:hover,.markdown .gc-container:focus-visible{background:color-mix(in srgb,var(--color-text) 10%,transparent)}.markdown .gc-container+.gc-container{margin-top:-.5rem}.markdown .gc-title-bar{display:flex;align-items:center;gap:.625rem}.markdown .gc-owner-avatar{aspect-ratio:1/1;width:1.375rem;flex-shrink:0;border-radius:9999px;background-color:color-mix(in srgb,var(--color-text) 20%,transparent)}.markdown .gc-repo-title{display:flex;align-items:center;line-height:normal;color:currentColor}.markdown .gc-repo-title strong{color:inherit}.markdown .gc-slash{margin:0 .25rem;opacity:.4}.markdown .gc-github-icon{margin-left:auto;width:1.375rem;flex-shrink:0}.markdown .gc-repo-description{margin:.6rem 0 .875rem;text-align:start;font-size:.875rem;color:currentColor}.markdown .gc-info-bar{display:flex;align-items:center;gap:.4375rem;font-size:.75rem;color:color-mix(in srgb,currentColor 80%,transparent)}.markdown .gc-info-icon{flex-shrink:0}.markdown .gc-stars-count{margin-right:.75rem}.markdown .gc-forks-count{margin-right:.9375rem}.markdown .gc-license-info{margin-left:.125rem;margin-right:1rem}.markdown .spotify-embed{width:100%;border-radius:12px;overflow:hidden;border:0;margin:0;display:block}.markdown .music-custom-player{margin:32px 0}.music-player{position:relative;border-radius:16px;overflow:hidden;height:160px;display:flex;align-items:center;background:var(--color-surface);box-shadow:0 4px 12px #0000001a;color:#fff;font-family:var(--font-ui)}.music-bg{position:absolute;inset:-20px;background-size:cover;background-position:center;filter:blur(20px) brightness(.7);z-index:0}.music-overlay{position:absolute;inset:0;background:#0000004d;z-index:1}.music-inner{position:relative;z-index:2;display:flex;align-items:center;width:100%;height:100%;padding:16px;box-sizing:border-box}.music-player .music-cover{width:128px;height:128px;border-radius:8px;object-fit:cover;flex-shrink:0;margin-right:16px;margin-bottom:0!important;border:none;box-shadow:0 12px 32px #0006}.music-body{flex:1;display:flex;flex-direction:column;justify-content:center;min-width:0}.music-text{display:flex;align-items:baseline;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.music-title{font-family:var(--font-serif);font-size:16px;font-weight:600;margin-right:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.music-artist{font-size:13px;color:#fffc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.music-time{font-size:12px;color:#fffc;margin-bottom:6px}.music-bottom{display:flex;align-items:center;justify-content:flex-start}.music-canvas{flex:1;max-width:360px;height:24px;cursor:pointer;touch-action:none}.music-playbtn-wrapper{width:72px;height:72px;display:flex;align-items:center;justify-content:center;margin-left:auto}.music-playbtn{width:45px;height:45px;border-radius:22.5px;background:#fff3;border:none;color:#fffc;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .35s cubic-bezier(.42,1.67,.21,.9);flex-shrink:0;padding:0}.music-player.is-playing .music-playbtn{width:45px;height:45px;border-radius:18px;background:#fff;color:#000}.music-playbtn:active{width:50px!important;height:50px!important;border-radius:18px!important;transform:none}.music-icon{font-family:Material Symbols Rounded;font-variation-settings:"FILL" 1;font-size:24px;color:inherit}.music-error{padding:16px;background:var(--color-surface);border-radius:12px;color:var(--color-text-subdued);text-align:center;border:0}@media(max-width:960px){.music-player{height:auto;width:100%;max-width:100%;box-sizing:border-box;border-radius:20px}.music-inner{flex-direction:column;align-items:center;padding:20px 18px;gap:10px}.music-player .music-cover{width:min(68vw,220px);height:min(68vw,220px);margin-right:0;margin-bottom:0!important}.music-body{width:100%;align-items:center;flex:none}.music-text{flex-direction:column;align-items:center;width:100%;white-space:normal}.music-title{margin-right:0;margin-bottom:4px;text-align:center;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:700}.music-artist{text-align:center;width:100%}.music-time{text-align:center;margin-bottom:16px}.music-bottom{flex-direction:column;align-items:center;width:100%}.music-canvas{width:min(100%,260px);max-width:100%;flex:none}.music-playbtn-wrapper{margin-left:0;margin-top:16px;width:56px;height:56px}.music-playbtn{width:52px;height:52px;border-radius:26px}.music-player.is-playing .music-playbtn{width:52px;height:52px;border-radius:20px}.music-icon{font-size:28px}}@media(max-width:380px){.music-player{border-radius:16px}.music-inner{padding:16px}.music-player .music-cover{width:190px;height:190px}.music-canvas{width:230px}.music-playbtn-wrapper,.music-playbtn,.music-player.is-playing .music-playbtn{width:48px;height:48px}}.markdown figure:has(.spotify-embed),.markdown figure:has(.music-custom-player),.markdown figure:has(.twitter-tweet){margin:32px 0}.markdown .twitter-tweet{margin:0 auto}.markdown blockquote.twitter-tweet{border-left:none;padding:0;background:transparent;margin:0 auto}.markdown .twitter-tweet iframe,.markdown iframe[data-tweet-id]{border-radius:12px!important;overflow:hidden!important}.markdown .katex-display{overflow-x:auto;overflow-y:hidden;padding:.5rem 0;margin:1.25rem 0}.markdown .katex-display>.katex{max-width:100%}.markdown .katex{font-size:1.05em}.markdown .katex-display::-webkit-scrollbar{display:none}.markdown .obsidian-embed{margin:32px 0;max-width:100%}.markdown .media-image img{border-radius:4px;width:var(--image-width, auto);max-width:100%;height:auto}.markdown .media-image.is-center{text-align:center}.markdown .media-image.is-center img{margin-left:auto;margin-right:auto}.markdown .media-image.is-left{text-align:left}.markdown .media-image.is-left img{margin-right:auto}.markdown .media-image.is-right{text-align:right}.markdown .media-image.is-right img{margin-left:auto}.markdown .media-pdf{display:flex;flex-direction:column;gap:8px}.markdown .media-pdf iframe{width:100%;height:600px;border:0;border-radius:6px;background:var(--color-paper)}@media(max-width:960px){.markdown .media-pdf iframe{height:400px}}.markdown .media-audio,.markdown .media-video{display:flex;flex-direction:column;gap:8px;margin:24px 0}.markdown .media-audio audio{width:100%;border:0;border-radius:6px;background:var(--color-paper)}.markdown .media-video video{max-width:100%;border:0;border-radius:6px;background:var(--color-paper)}.markdown .media-audio.is-center,.markdown .media-video.is-center{align-items:center}.markdown .obsidian-note-embed{border-left:2px solid var(--color-accent);color:var(--color-muted);font-style:normal;font-size:15px;line-height:1.65;margin:28px 0;max-width:100%;padding:4px 32px 4px 22px;position:relative}.markdown blockquote.obsidian-note-embed{border-left-color:var(--color-accent)}.markdown .obsidian-embed-content{color:var(--color-text);font-size:15px;line-height:1.6}.markdown .obsidian-embed-content>*:first-child{margin-top:0}.markdown .obsidian-embed-title{font-size:1.15rem;font-weight:700;margin-bottom:.5rem;color:var(--color-text)}.markdown .obsidian-embed-link{position:absolute;top:4px;right:0;color:var(--color-muted);opacity:.6;text-decoration:none;display:flex;align-items:center;justify-content:center;transition:color .2s ease,opacity .2s ease}.markdown .obsidian-embed-link:after{background:var(--color-tooltip-bg);border-radius:8px;top:calc(100% + 9px);color:var(--color-tooltip-text);content:attr(data-tooltip);font-family:var(--font-ui);font-size:.72rem;left:50%;line-height:1;opacity:0;padding:5px 10px;pointer-events:none;position:absolute;transform:translate(-50%);clip-path:inset(100% 50% 0 50% round 8px);transition:opacity var(--motion-expressive-effects-duration) var(--motion-expressive-effects-easing),clip-path var(--motion-expressive-effects-duration) var(--motion-expressive-effects-easing);white-space:nowrap;z-index:100}.markdown .obsidian-embed-link:hover,.markdown .obsidian-embed-link:focus-visible{color:var(--color-hover-text);opacity:1;text-decoration:none}.markdown .obsidian-embed-link:hover:after,.markdown .obsidian-embed-link:focus-visible:after{opacity:1;clip-path:inset(0 0 0 0 round 8px)}@media(prefers-reduced-motion:reduce){.markdown .obsidian-embed-link:after{clip-path:none!important;transition:opacity .16s ease!important}}html[data-reduced-motion=true] .markdown .obsidian-embed-link:after{clip-path:none!important;transition:opacity .16s ease!important}.markdown .obsidian-embed-link .material-symbol{font-size:1.15rem;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.markdown mark,.note-content mark{background:var(--color-accent-soft-strong);color:inherit;border-radius:.2em;padding:.05em .18em}.embed-skeleton{position:relative;overflow:hidden;background-color:var(--color-paper);border:0;border-radius:8px;color:transparent!important;pointer-events:none;user-select:none}.embed-skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-text) 3%,transparent) 40%,color-mix(in srgb,var(--color-text) 5%,transparent) 50%,color-mix(in srgb,var(--color-text) 3%,transparent) 60%,transparent 100%);transform:translate(-100%);animation:embed-shimmer 2s infinite var(--ease-out)}@media(prefers-reduced-motion:reduce){.embed-skeleton:after{animation:none;transform:translate(0);background:color-mix(in srgb,var(--color-text) 2%,transparent)}}@keyframes embed-shimmer{to{transform:translate(100%)}}.embed-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;background-color:var(--color-paper);border:0;border-radius:8px;text-align:center;color:var(--color-muted);font-family:var(--font-ui);font-size:.9rem;min-height:120px;gap:.5rem}.embed-fallback svg{color:var(--color-faint);margin-bottom:.25rem}.embed-fallback a{color:var(--color-accent);text-decoration:none;transition:opacity var(--duration-fast) var(--ease-out)}.embed-fallback a:hover{opacity:.8}.music-custom-player[data-embed-status=loading]{margin:32px 0}.music-skeleton{display:flex;background:var(--color-paper);border:0;border-radius:16px;overflow:hidden;height:160px;box-shadow:0 4px 12px #00000008;padding:16px;align-items:center;box-sizing:border-box}.music-skeleton-cover{width:128px;height:128px;flex-shrink:0;border-radius:8px;background:color-mix(in srgb,var(--color-text) 5%,transparent);margin-right:16px}.music-skeleton-body{flex-grow:1;display:flex;flex-direction:column;justify-content:center;padding:0;gap:.5rem}.music-skeleton-title{width:40%;height:1rem;background:color-mix(in srgb,var(--color-text) 8%,transparent);border-radius:4px}.music-skeleton-artist{width:25%;height:.75rem;background:color-mix(in srgb,var(--color-text) 5%,transparent);border-radius:4px;margin-bottom:.25rem}.music-skeleton-progress{width:100%;height:4px;background:color-mix(in srgb,var(--color-text) 3%,transparent);border-radius:2px}.music-skeleton-playbtn{width:45px;height:45px;border-radius:50%;background:color-mix(in srgb,var(--color-text) 5%,transparent);align-self:center;margin-left:auto;margin-right:14px}@media screen and (max-width:960px){.music-skeleton{flex-direction:column;height:auto;padding:20px 18px;border-radius:20px;align-items:center;text-align:center;gap:10px}.music-skeleton-cover{width:min(68vw,220px);height:min(68vw,220px);margin-right:0}.music-skeleton-body{width:100%;padding:0;align-items:center}.music-skeleton-title{width:60%}.music-skeleton-artist{width:40%}.music-skeleton-playbtn{margin:10px 0 0;width:45px;height:45px}}.gc-container[data-embed-status=loading]{position:relative;overflow:hidden}.gc-container[data-embed-status=loading]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-text) 3%,transparent) 40%,color-mix(in srgb,var(--color-text) 5%,transparent) 50%,color-mix(in srgb,var(--color-text) 3%,transparent) 60%,transparent 100%);transform:translate(-100%);animation:embed-shimmer 2s infinite var(--ease-out);pointer-events:none;z-index:1}@media(prefers-reduced-motion:reduce){.gc-container[data-embed-status=loading]:after{animation:none;transform:translate(0);background:color-mix(in srgb,var(--color-text) 2%,transparent)}}.gc-container[data-embed-status=loading] .gc-repo-description,.gc-container[data-embed-status=loading] .gc-stars-count,.gc-container[data-embed-status=loading] .gc-forks-count,.gc-container[data-embed-status=loading] .gc-license-info{color:transparent!important;background:color-mix(in srgb,var(--color-text) 6%,transparent);border-radius:4px}.gc-container[data-embed-status=loading] .gc-repo-description{width:80%;height:.875rem;margin:.6rem 0 .875rem;display:block}.gc-container[data-embed-status=loading] .gc-stars-count,.gc-container[data-embed-status=loading] .gc-forks-count,.gc-container[data-embed-status=loading] .gc-license-info{display:inline-block;min-width:2rem;height:.75rem;vertical-align:middle}.tweet-skeleton{min-height:200px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.tweet-skeleton-header{display:flex;gap:.75rem;align-items:center}.tweet-skeleton-avatar{width:48px;height:48px;border-radius:50%;background:color-mix(in srgb,var(--color-text) 6%,transparent)}.tweet-skeleton-name{width:120px;height:1rem;background:color-mix(in srgb,var(--color-text) 6%,transparent);border-radius:4px}.tweet-skeleton-body1,.tweet-skeleton-body2{height:1rem;background:color-mix(in srgb,var(--color-text) 4%,transparent);border-radius:4px}.tweet-skeleton-body1{width:90%}.tweet-skeleton-body2{width:60%}.embed-frame[data-embed-status=loading]{position:relative;background-color:var(--color-paper)}.embed-frame[data-embed-status=loading]:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--color-text) 3%,transparent) 40%,color-mix(in srgb,var(--color-text) 5%,transparent) 50%,color-mix(in srgb,var(--color-text) 3%,transparent) 60%,transparent 100%);transform:translate(-100%);animation:embed-shimmer 2s infinite var(--ease-out);pointer-events:none;z-index:1}@media(prefers-reduced-motion:reduce){.embed-frame[data-embed-status=loading]:after{animation:none;transform:translate(0);background:color-mix(in srgb,var(--color-text) 2%,transparent)}}.embed-frame[data-embed-status=loading] iframe{opacity:0}.embed-frame[data-embed-status=ready] iframe{opacity:1;transition:opacity var(--duration-normal) var(--ease-out)}img[data-embed-status=loading]{background-color:color-mix(in srgb,var(--color-text) 3%,transparent);opacity:0}img[data-embed-status=ready]{opacity:1;transition:opacity var(--duration-normal) var(--ease-out)}::view-transition{background:var(--color-page)}::view-transition-group(site-avatar),::view-transition-group(site-name-cn),::view-transition-group(site-name-en){animation-duration:var(--duration-shared);animation-timing-function:var(--ease-out)}::view-transition-old(site-name-cn),::view-transition-old(site-name-en){animation:none;opacity:0}::view-transition-new(site-name-cn),::view-transition-new(site-name-en){animation:none;mix-blend-mode:normal}:root{--theme-reveal-from: 100% 0 0 0;--palette-reveal-from: 0 100% 0 0}:root[data-theme=dark]{--theme-reveal-from: 0 0 100% 0}html[data-palette-changing=to-warm]{--palette-reveal-from: 0 100% 0 0}html[data-palette-changing=from-warm]{--palette-reveal-from: 0 0 0 100%}html[data-theme-changing] .hero-avatar-wrap,html[data-palette-changing] .hero-avatar-wrap,html[data-theme-changing] .side-avatar-wrap,html[data-palette-changing] .side-avatar-wrap,html[data-theme-changing] .hero-name,html[data-theme-changing] .slogan-glyph,html[data-palette-changing] .hero-name,html[data-palette-changing] .slogan-glyph,html[data-theme-changing] .notes-brand-name,html[data-palette-changing] .notes-brand-name,html[data-theme-changing] .notes-item-title a,html[data-palette-changing] .notes-item-title a,html[data-theme-changing] .notes-item-meta,html[data-palette-changing] .notes-item-meta,html[data-theme-changing] .note-title span,html[data-palette-changing] .note-title span,html[data-theme-changing] .note-meta,html[data-palette-changing] .note-meta{view-transition-name:none!important}::view-transition-old(theme-toggle-transition),::view-transition-old(palette-toggle-transition){animation:none;mix-blend-mode:normal;z-index:-1}::view-transition-new(theme-toggle-transition){animation:theme-toggle-reveal .7s cubic-bezier(.4,0,.2,1);clip-path:inset(0 0 0 0);mix-blend-mode:normal;z-index:99}::view-transition-new(palette-toggle-transition){animation:palette-toggle-reveal .7s cubic-bezier(.4,0,.2,1);clip-path:inset(0 0 0 0);mix-blend-mode:normal;z-index:99}::view-transition-group(active-switch-track),::view-transition-group(active-switch-thumb){z-index:100}@keyframes theme-toggle-reveal{0%{clip-path:inset(var(--theme-reveal-from))}}@keyframes palette-toggle-reveal{0%{clip-path:inset(var(--palette-reveal-from))}}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--duration-normal);animation-timing-function:var(--ease-out);background:var(--color-page);mix-blend-mode:normal}html.article-transition::view-transition-group(*){animation-duration:var(--duration-shared);animation-timing-function:var(--article-enter-ease)}html.article-transition::view-transition-old(root){animation:none;opacity:0}html.article-transition::view-transition-new(root){animation:none;opacity:1}html.article-transition .side-avatar-wrap,html.article-transition .hero-avatar-wrap,html.article-transition .hero-name-cn,html.article-transition .hero-name-en,html.article-transition .notes-brand-cn,html.article-transition .notes-brand-en,html.article-transition .slogan-glyph{view-transition-name:none}@keyframes nav-exit-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-14px)}}@keyframes nav-enter-down{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}@keyframes logo-exit-fade{0%{opacity:1}to{opacity:0}}@keyframes logo-enter-fade{0%{opacity:0}to{opacity:1}}@keyframes social-exit-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(14px)}}@keyframes social-enter-up{0%{opacity:0;transform:translateY(14px)}to{opacity:.72;transform:translateY(0)}}@keyframes footer-exit-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes footer-enter-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes side-nav-enter{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes side-nav-exit-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-16px)}}@keyframes aside-enter{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes aside-exit-right{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(18px)}}@keyframes page-soft-enter{0%{opacity:.92}to{opacity:1}}@keyframes article-content-enter{0%{opacity:0;transform:translateY(var(--post-enter-y))}to{opacity:1;transform:translateY(0)}}@keyframes article-content-enter-mini{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes article-back-enter{0%{opacity:0;transform:translate(.5rem)}to{opacity:1;transform:translate(0)}}@keyframes archive-intro-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.home-exiting .site-nav>*{animation:nav-exit-up var(--duration-normal) var(--ease-out) both}.home-exiting .site-nav>*:nth-child(1){animation-delay:0ms}.home-exiting .site-nav>*:nth-child(2){animation-delay:28ms}.home-exiting .site-nav>*:nth-child(3){animation-delay:56ms}.home-exiting .site-nav>*:nth-child(4){animation-delay:84ms}.home-exiting .site-nav>*:nth-child(5){animation-delay:112ms}.home-exiting .site-nav>*:nth-child(6){animation-delay:.14s}.home-exiting .site-nav>*:nth-child(7){animation-delay:.16s}.home-exiting .site-nav>*:nth-child(8){animation-delay:.18s}.home-exiting .hero-social a{animation:social-exit-down var(--duration-normal) var(--ease-out) both}.home-exiting .hero-social a:nth-child(1){animation-delay:40ms}.home-exiting .hero-social a:nth-child(2){animation-delay:68ms}.home-exiting .hero-social a:nth-child(3){animation-delay:96ms}.home-exiting .hero-social a:nth-child(4){animation-delay:124ms}.home-exiting .hero-social a:nth-child(5){animation-delay:152ms}.home-exiting .hero-social a:nth-child(6){animation-delay:.18s}.home-exiting .footer-stats-row>*,.home-exiting .home-footer>p.footer-copyright{animation:footer-exit-down var(--duration-normal) var(--ease-out) both}.home-exiting .footer-stats-row>*:nth-child(1){animation-delay:.12s}.home-exiting .footer-stats-row>*:nth-child(2){animation-delay:148ms}.home-exiting .footer-stats-row>*:nth-child(3){animation-delay:176ms}.home-exiting .footer-stats-row>*:nth-child(4){animation-delay:204ms}.home-exiting .home-footer>p.footer-copyright{animation-delay:232ms}.home-entering .site-nav>*{animation:nav-enter-down var(--duration-normal) var(--ease-out) both}.home-entering .site-nav>*:nth-child(1){animation-delay:90ms}.home-entering .site-nav>*:nth-child(2){animation-delay:118ms}.home-entering .site-nav>*:nth-child(3){animation-delay:146ms}.home-entering .site-nav>*:nth-child(4){animation-delay:174ms}.home-entering .site-nav>*:nth-child(5){animation-delay:202ms}.home-entering .site-nav>*:nth-child(6){animation-delay:.23s}.home-entering .site-nav>*:nth-child(7){animation-delay:.26s}.home-entering .site-nav>*:nth-child(8){animation-delay:.29s}.home-entering .hero-social a{animation:social-enter-up var(--duration-normal) var(--ease-out) both}.home-entering .hero-social a:nth-child(1){animation-delay:.15s}.home-entering .hero-social a:nth-child(2){animation-delay:178ms}.home-entering .hero-social a:nth-child(3){animation-delay:206ms}.home-entering .hero-social a:nth-child(4){animation-delay:234ms}.home-entering .hero-social a:nth-child(5){animation-delay:262ms}.home-entering .hero-social a:nth-child(6){animation-delay:.29s}.home-entering .footer-stats-row>*,.home-entering .home-footer>p.footer-copyright{animation:footer-enter-up var(--duration-normal) var(--ease-out) both}.home-entering .home-footer>p.footer-copyright{animation-delay:.21s}.home-entering .footer-stats-row>*:nth-child(4){animation-delay:238ms}.home-entering .footer-stats-row>*:nth-child(3){animation-delay:266ms}.home-entering .footer-stats-row>*:nth-child(2){animation-delay:294ms}.home-entering .footer-stats-row>*:nth-child(1){animation-delay:322ms}html:not(.article-transition) body.page-exiting .side-nav:not(.transition-stable) .nav-link{animation:side-nav-exit-left var(--duration-normal) var(--ease-out) both}html:not(.article-transition) body.page-exiting .side-nav:not(.transition-stable) .nav-link:nth-child(1){animation-delay:0ms}html:not(.article-transition) body.page-exiting .side-nav:not(.transition-stable) .nav-link:nth-child(2){animation-delay:28ms}html:not(.article-transition) body.page-exiting .side-nav:not(.transition-stable) .nav-link:nth-child(3){animation-delay:56ms}html:not(.article-transition) body.page-exiting .side-nav:not(.transition-stable) .nav-link:nth-child(4){animation-delay:84ms}html:not(.article-transition) body.page-exiting .side-nav:not(.transition-stable) .nav-link:nth-child(5){animation-delay:112ms}html:not(.article-transition) body.page-exiting .side-nav:not(.transition-stable) .nav-link:nth-child(6){animation-delay:.14s}html:not(.article-transition) body.page-exiting .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button,html:not(.article-transition) body.page-exiting .notes-aside:not(.transition-stable) .notes-footer-links,html:not(.article-transition) body.page-exiting .notes-aside:not(.transition-stable) .notes-footer>p{animation:aside-exit-right var(--duration-normal) var(--ease-out) both}html:not(.article-transition) body.page-exiting .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button:nth-child(1){animation-delay:40ms}html:not(.article-transition) body.page-exiting .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button:nth-child(2){animation-delay:68ms}html:not(.article-transition) body.page-exiting .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button:nth-child(3){animation-delay:96ms}html:not(.article-transition) body.page-exiting .notes-aside:not(.transition-stable) .notes-footer-links{animation-delay:124ms}html:not(.article-transition) body.page-exiting .notes-aside:not(.transition-stable) .notes-footer>p{animation-delay:152ms}html.article-transition .persistent-logo,html.article-transition .side-rail,html.article-transition .notes-page,html.article-transition .side-nav,html.article-transition .side-nav:not(.transition-stable) .nav-link,html.article-transition .side-avatar-link,html.article-transition .side-avatar-wrap,html.article-transition .notes-aside,html.article-transition .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button,html.article-transition .notes-aside:not(.transition-stable) .notes-footer-links,html.article-transition .notes-aside:not(.transition-stable) .notes-footer>p{animation:none!important;opacity:1!important;transform:none!important}html.article-transition [data-title-transition-key],html.article-transition [data-transition-scope]{view-transition-name:none!important}html:not(.article-transition) body.page-entering.page-body .side-nav:not(.transition-stable) .nav-link{animation:side-nav-enter var(--duration-normal) var(--ease-out) both}html:not(.article-transition) body.page-entering.page-body .side-nav:not(.transition-stable) .nav-link:nth-child(1){animation-delay:80ms}html:not(.article-transition) body.page-entering.page-body .side-nav:not(.transition-stable) .nav-link:nth-child(2){animation-delay:112ms}html:not(.article-transition) body.page-entering.page-body .side-nav:not(.transition-stable) .nav-link:nth-child(3){animation-delay:144ms}html:not(.article-transition) body.page-entering.page-body .side-nav:not(.transition-stable) .nav-link:nth-child(4){animation-delay:176ms}html:not(.article-transition) body.page-entering.page-body .side-nav:not(.transition-stable) .nav-link:nth-child(5){animation-delay:208ms}html:not(.article-transition) body.page-entering.page-body .side-nav:not(.transition-stable) .nav-link:nth-child(6){animation-delay:.24s}html:not(.article-transition) body.page-entering .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button{animation:aside-enter var(--duration-normal) var(--ease-out) both}html:not(.article-transition) body.page-entering .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button:nth-child(1){animation-delay:.17s}html:not(.article-transition) body.page-entering .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button:nth-child(2){animation-delay:205ms}html:not(.article-transition) body.page-entering .notes-aside:not(.transition-stable) .notes-footer-actions .notes-action-button:nth-child(3){animation-delay:.24s}html:not(.article-transition) body.page-entering .notes-aside:not(.transition-stable) .notes-footer-links,html:not(.article-transition) body.page-entering .notes-aside:not(.transition-stable) .notes-footer>p{animation:aside-enter var(--duration-normal) var(--ease-out) both}html:not(.article-transition) body.page-entering .notes-aside:not(.transition-stable) .notes-footer-links{animation-delay:.28s}html:not(.article-transition) body.page-entering .notes-aside:not(.transition-stable) .notes-footer>p{animation-delay:.32s}@media(prefers-reduced-motion:no-preference){.archive-item-row.is-intro-revealing .archive-item,.archive-item-row.reveal-trigger .archive-item{opacity:1;animation:archive-intro-fade-up .38s cubic-bezier(.2,.6,.2,1) both;animation-delay:calc(var(--stagger-index, 0) * 55ms)}}@media(min-width:961px){.note-body .note-back-link{animation:article-back-enter var(--post-enter-duration) var(--ease-page) .2s both}}.note-body .note-meta .meta-transition-group>*,.note-body .note-meta>.meta-stagger,.note-body .note-updated.meta-stagger{animation:article-content-enter-mini var(--post-enter-duration) var(--ease-page) both;opacity:0}@media(min-width:961px){.note-body .note-meta .meta-transition-group>time{animation-delay:.16s}.note-body .note-meta .meta-transition-group>.reading-time{animation-delay:185ms}.note-body .note-meta>.meta-stagger:nth-child(2){animation-delay:.21s}.note-body .note-meta>.meta-stagger:nth-child(3){animation-delay:235ms}.note-body .note-updated.meta-stagger{animation-delay:.26s}}@media(max-width:960px){.note-body .note-meta .meta-transition-group>time,.note-body .note-meta .meta-transition-group>.reading-time{animation:none;opacity:1;transform:none}.note-body .note-meta>.meta-stagger:nth-child(2){animation-delay:.16s}.note-body .note-meta>.meta-stagger:nth-child(3){animation-delay:185ms}.note-body .note-updated.meta-stagger{animation-delay:.21s}}.note-body .note-summary{animation:article-content-enter-mini var(--post-enter-duration) var(--ease-page) 205ms both}@media(min-width:1281px){.note-body .note-toc-header{animation:article-content-enter-mini var(--post-enter-duration) var(--ease-page) backwards;animation-delay:175ms}.note-body .note-toc-panel li{animation:article-content-enter var(--post-enter-duration) var(--ease-page) backwards;animation-delay:calc(175ms + min(var(--toc-index, 0),8)*25ms)}.note-body .note-right-controls>*{animation:article-content-enter var(--post-enter-duration) var(--ease-page) backwards}.note-body .note-right-controls>*:nth-child(1){animation-delay:.15s}.note-body .note-right-controls>*:nth-child(2){animation-delay:.2s}.note-body .note-right-controls>*:nth-child(3){animation-delay:.25s}}.note-body .article-stagger-meta>*{animation:article-content-enter-mini var(--post-enter-duration) var(--ease-page) both;animation-delay:calc(.1s + min(var(--stagger-index, 0),10)*30ms);opacity:0}.note-body .post-content>*{animation:article-content-enter var(--post-enter-duration) var(--ease-page) both;opacity:0}.note-body .post-content>*:nth-child(1){animation-delay:.15s}.note-body .post-content>*:nth-child(2){animation-delay:.2s}.note-body .post-content>*:nth-child(3){animation-delay:.25s}.note-body .post-content>*:nth-child(4){animation-delay:.3s}.note-body .post-content>*:nth-child(5){animation-delay:.35s}.note-body .post-content>*:nth-child(6){animation-delay:.4s}.note-body .post-content>*:nth-child(7){animation-delay:.45s}.note-body .post-content>*:nth-child(8){animation-delay:.5s}.note-body .post-content>*:nth-child(9){animation-delay:.55s}.note-body .post-content>*:nth-child(10){animation-delay:.6s}.note-body .post-content>*:nth-child(11){animation-delay:.65s}.note-body .post-content>*:nth-child(12){animation-delay:.7s}.note-body .post-content>*:nth-child(13){animation-delay:.75s}.note-body .post-content>*:nth-child(14){animation-delay:.8s}.note-body .post-content>*:nth-child(15){animation-delay:.85s}.note-body .post-content>*:nth-child(n+16){animation-delay:.9s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-delay:0ms!important;animation-duration:1ms!important;scroll-behavior:auto!important;transition-duration:1ms!important}.hero-avatar-wrap,.side-avatar-wrap,.hero-name,.slogan-glyph,.notes-brand-name,.notes-item-title a,.article-meta-rows,.article-shared-meta,.article-stagger-meta,.note-title span,[data-article-shared]{view-transition-name:none!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation-duration:1ms!important}.note-back-link,.note-toc,.notes-item,.article-meta-rows,.article-shared-meta,.article-stagger-meta,.article-stagger-meta>*,.archive-year,.archive-item,.note-summary,.post-content>*{animation:none!important;opacity:1!important;transform:none!important;clip-path:none!important}.note-toc,.note-toc-panel{transition:none!important}.note-toc:not(.is-open) .note-toc-panel{opacity:0!important;transform:none!important;visibility:hidden!important}}html[data-reduced-motion=true] *,html[data-reduced-motion=true] *:before,html[data-reduced-motion=true] *:after{animation-delay:0ms!important;animation-duration:1ms!important;scroll-behavior:auto!important;transition-duration:1ms!important}html[data-reduced-motion=true] .hero-avatar-wrap,html[data-reduced-motion=true] .side-avatar-wrap,html[data-reduced-motion=true] .hero-name,html[data-reduced-motion=true] .slogan-glyph,html[data-reduced-motion=true] .notes-brand-name,html[data-reduced-motion=true] .notes-item-title a,html[data-reduced-motion=true] .article-meta-rows,html[data-reduced-motion=true] .article-shared-meta,html[data-reduced-motion=true] .article-stagger-meta,html[data-reduced-motion=true] .note-title span,html[data-reduced-motion=true] [data-article-shared]{view-transition-name:none!important}html[data-reduced-motion=true] .note-back-link,html[data-reduced-motion=true] .note-toc,html[data-reduced-motion=true] .notes-item,html[data-reduced-motion=true] .article-meta-rows,html[data-reduced-motion=true] .article-shared-meta,html[data-reduced-motion=true] .article-stagger-meta,html[data-reduced-motion=true] .article-stagger-meta>*,html[data-reduced-motion=true] .archive-year,html[data-reduced-motion=true] .archive-item,html[data-reduced-motion=true] .note-summary,html[data-reduced-motion=true] .post-content>*{animation:none!important;opacity:1!important;transform:none!important;clip-path:none!important}html[data-reduced-motion=true] .note-toc,html[data-reduced-motion=true] .note-toc-panel{transition:none!important}html[data-reduced-motion=true] .note-toc:not(.is-open) .note-toc-panel{opacity:0!important;transform:none!important;visibility:hidden!important}.title-glyph{view-transition-class:article-title-glyph;margin:0;padding:0;border:0;display:inline-block}html.article-transition::view-transition-group(.article-title-glyph){animation-duration:var(--duration-shared, .5s);animation-timing-function:cubic-bezier(.22,1,.36,1)}.slogan-glyph{view-transition-class:site-slogan-glyph;margin:0;padding:0;display:inline-block;white-space:pre-wrap}html::view-transition-group(.site-slogan-glyph){animation-duration:var(--duration-shared);animation-timing-function:var(--ease-out)}
