:root{color-scheme:light;--header-height:64px;--sidebar-width:300px;--control-height:38px;--nav-icon-size:20px;--search-width:300px;--paper:light-dark(#eaf2f8,#101b2e);--paper-deep:light-dark(#dfeaf3,#162339);--sidebar-surface:var(--paper);--ink:light-dark(#303740,#eaf1ff);--muted:light-dark(#69727d,#a8b4cc);--text-subtle:light-dark(#617385,#a8b4cc);--text-faint:light-dark(#647382,#7f8da8);--line:light-dark(#6faee82e,#b4cdf52e);--list-line:light-dark(#648aac47,#b4cdf521);--frame-line:light-dark(#7e9db829,#b4cdf52e);--accent:light-dark(#4475a0,#8dbdff);--accent-dark:light-dark(#305372,#b4d4ff);--accent-soft:light-dark(#c9dcec,#8dbdff38);--accent-border:light-dark(#6e9bc247,#b4cdf54d);--search-highlight:light-dark(#a9cce86b,#7aa9db3d);--search-highlight-inset:light-dark(#4f769f21,#b4d3f429);--surface:light-dark(#fcfeff,#141f32b8);--surface-hover:light-dark(#4475a01f,#8dbdff29);--text-divider:light-dark(#b3bec9,#7f8da8);--on-accent:light-dark(#f8fbff,#0b1220);--glass:light-dark(#fcfeffeb,#141f32b8);--glass-strong:light-dark(#fafdff,#141f32eb);--glass-hover:light-dark(#fcfefff5,#1f2f4adb);--glass-border:var(--line);--header-surface:light-dark(#eaf2f8eb,#101b2ed1);--header-surface-strong:light-dark(#eaf2f8f5,#101b2eeb);--footer-surface:light-dark(#eaf2f8e6,#101b2ee0);--card-hover:light-dark(#edf6fdc7,#2334509e);--soft-panel:light-dark(#f2f8fdc7,#141f32b8);--control-active:light-dark(#e4eef8bf,#8dbdff24);--control-surface:light-dark(#f2f8fd8c,#141f3294);--glass-shadow:0 10px 28px #435b7729;--soft-shadow:0 1px 2px #435b771a;--code-surface:light-dark(#35383d,#0b1220);--code-text:light-dark(#eef3f8,#eaf1ff);--list-surface:transparent;--list-shadow:none;--list-radius:0;--tooltip-surface:light-dark(#fafdfff7,#141f32f5);--tooltip-text:light-dark(#426b8c,#b4d4ff);--tooltip-tip:light-dark(#f7fcfff5,#141f32f5);--inset-highlight:light-dark(#fffc,#b4cdf51f);--placeholder-background:light-dark(#eaf2f8e6,#141f32d9);--back-to-top-width:96px;--back-to-top-height:136px;--back-to-top-glow:radial-gradient(ellipse at center, light-dark(#eaf2f8c2,#2d43659e), light-dark(#deeaf538,#101b2e33) 60%, transparent 74%);--back-to-top-hint:light-dark(#eaf2f8bd,#101b2ebd);--back-to-top-hint-hover:light-dark(#f0f6fbf0,#1f2f4af0);--scrollbar-thumb:light-dark(#6faee861,#8dbdff4d);--scrollbar-thumb-hover:light-dark(#4f769f8c,#8dbdff7a);--shell-width:860px;--prose-width:760px;--article-width:720px;--article-content-width:700px;--article-shell-width:980px;--article-main-track:minmax(0, 1fr);--article-side-width:200px;--article-toc-width:var(--article-side-width);--article-gap:44px;--shell-gutter:40px;--radius-small:3px;--radius-control:4px;--radius-medium:6px;--radius-pill:6px;--duration-fast:.15s;--duration-medium:.25s;--ease-standard:cubic-bezier(.2, .8, .2, 1);--ease-emphasized:cubic-bezier(.22, 1, .36, 1);--font-size-xs:11px;--font-size-sm:12px;--font-size-ui:13px;--sans:Inter, "Noto Sans SC", "Microsoft YaHei", sans-serif;--serif:var(--sans)}*{box-sizing:border-box}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.26s}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}body{min-height:100vh;color:var(--ink);background:var(--paper);font:15px/1.7 var(--sans);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;display:flex;position:relative}:root.theme-transitioning,:root.theme-transitioning *{transition:background-color .24s var(--ease-standard), color .24s var(--ease-standard), border-color .24s var(--ease-standard)!important}main{flex:1;min-width:0}.docs-shell{flex:1;align-items:flex-start;width:100%;display:flex;position:relative}a{color:inherit;transition:color var(--duration-fast) var(--ease-standard);text-decoration:none}a:hover{color:var(--accent)}:where(a,button,input,summary):focus-visible{outline:2px solid var(--accent-dark);outline-offset:4px;border-radius:3px}.sr-only{white-space:nowrap;clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.is-hidden{display:none!important}.shell{box-sizing:border-box;width:100%;max-width:none;padding-inline:clamp(24px,3vw,48px)}.skip-link{z-index:20;color:var(--on-accent);background:var(--accent-dark);border-radius:var(--radius-small);padding:8px 14px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{color:var(--on-accent);transform:translateY(0)}.site-header{z-index:20;border-bottom:1px solid var(--frame-line);background:var(--header-surface);position:sticky;top:0}.header-inner{min-height:var(--header-height);align-items:center;gap:14px;padding-inline:clamp(14px,2vw,24px);display:flex;position:relative}.header-action.sidebar-toggle{display:none}.site-brand{flex:none;align-items:center;gap:9px;display:inline-flex}.brand-mark{object-fit:contain;width:26px;height:26px;display:block}.brand-text{font:600 15px/1.2 var(--sans);letter-spacing:.01em}.header-tools{flex:auto;justify-content:flex-end;align-items:center;gap:10px;display:flex;position:static}.header-search-wrap{z-index:32;width:min(var(--search-width), calc(100vw - 32px));visibility:hidden;opacity:0;pointer-events:none;transform-origin:100% 0;align-items:center;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:visible;transform:translateY(-8px)scale(.985)}.header-tools.search-active .header-search-wrap{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s;transform:translateY(0)scale(1)}.header-tools [data-header-search-toggle]{transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard)}.header-tools.search-active [data-header-search-toggle]{visibility:hidden;opacity:0;pointer-events:none}.header-actions{min-height:var(--control-height);flex-wrap:nowrap;align-items:center;gap:2px;display:flex}.header-action{width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem;color:var(--muted);border-radius:var(--radius-control);font:600 13px/1 var(--sans);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;place-items:center;padding:0;display:grid}.header-action:hover{color:var(--accent-dark);background:var(--accent-soft);border-color:var(--line)}.nav-search-toggle svg,.theme-toggle svg,.lang-toggle svg,.sidebar-toggle svg{width:var(--nav-icon-size);height:var(--nav-icon-size);fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.lang-toggle svg{overflow:visible}.lang-toggle-char{transform-box:fill-box;transform-origin:50%;transition:color .22s cubic-bezier(.2,.8,.2,1),opacity .22s cubic-bezier(.2,.8,.2,1),transform .22s cubic-bezier(.2,.8,.2,1)}.lang-toggle.is-zh .lang-toggle-zh{color:currentColor;opacity:1;transform:translate(-2px,-1px)scale(1)}.lang-toggle.is-zh .lang-toggle-en{opacity:.5;transform:translate(5px,5px)scale(.76)}.lang-toggle.is-en .lang-toggle-zh{opacity:.5;transform:translate(-5px,5px)scale(.76)}.lang-toggle.is-en .lang-toggle-en{color:currentColor;opacity:1;transform:translate(2px,-1px)scale(1)}.theme-toggle{cursor:pointer}.theme-toggle svg{grid-area:1/1}.theme-toggle-sun{opacity:0;transform:rotate(-30deg)scale(.7)}:root[data-theme=dark] .theme-toggle-moon{opacity:0;transform:rotate(30deg)scale(.7)}:root[data-theme=dark] .theme-toggle-sun{opacity:1;transform:rotate(0)scale(1)}@media (prefers-color-scheme:dark){:root:not([data-theme]) .theme-toggle-moon{opacity:0;transform:rotate(30deg)scale(.7)}:root:not([data-theme]) .theme-toggle-sun{opacity:1;transform:rotate(0)scale(1)}}.text-link{color:var(--muted);font-size:var(--font-size-ui)}.header-search{width:100%;height:var(--control-height);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);align-items:center;padding:4px;display:flex}.header-search:focus-within{border-color:var(--accent-border);outline:2px solid var(--accent-soft)}.header-search input{min-width:0;color:var(--ink);font:var(--font-size-ui)/1.5 var(--sans);background:0 0;border:0;outline:0;flex:1;padding:6px 8px 6px 13px}.header-search input::placeholder{color:var(--text-faint)}.header-search button{cursor:pointer;font:var(--font-size-sm)/1.5 var(--sans);border:0}.header-search-clear{color:var(--muted);background:0 0;padding:6px 7px}.header-search-clear:hover{color:var(--accent-dark)}.header-search-submit{color:var(--accent-dark);background:var(--accent-soft);border-radius:var(--radius-pill);padding:6px 13px}.header-search-submit:hover{color:var(--on-accent);background:var(--accent)}.header-search-popover{z-index:30;width:min(400px,100vw - 32px);color:var(--ink);background:var(--glass-strong);border:1px solid var(--accent-border);border-radius:var(--radius-medium);box-shadow:var(--glass-shadow);position:absolute;top:calc(100% + 10px);right:0;overflow:hidden}.header-search-status{color:var(--muted);font-size:var(--font-size-ui);margin:0;padding:14px 16px}.header-search-status:empty{display:none}.header-search-results{max-height:min(460px,62vh);overflow-y:auto}.header-search-result+.header-search-result{border-top:1px solid var(--list-line)}.header-search-result a{padding:12px 16px;display:block}.header-search-result a:hover,.header-search-result a:focus-visible{color:inherit;background:var(--surface-hover)}.header-search-result strong,.header-search-result span,.header-search-result small{display:block}.header-search-result strong{font:500 15px/1.5 var(--serif)}.header-search-excerpt{color:var(--muted);font-size:var(--font-size-sm);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;line-height:1.55;display:-webkit-box;overflow:hidden}.header-search-result small{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;overflow:hidden}.header-search-result-tags{color:var(--text-subtle)!important}.header-search-more{width:100%;color:var(--accent-dark);background:var(--control-surface);border:0;border-top:1px solid var(--list-line);cursor:pointer;font:inherit;font-size:var(--font-size-sm);text-align:center;padding:10px 16px;display:block}.header-search-more[hidden]{display:none}.header-search-more:hover,.header-search-more:focus-visible{background:var(--surface-hover)}.header-search-more:disabled{cursor:default;opacity:.6}.search-highlight{color:inherit;background:var(--search-highlight);box-shadow:inset 0 -1px 0 var(--search-highlight-inset);border-radius:.28em;padding:.03em .2em}.site-footer{color:var(--text-faint);background:var(--footer-surface);border-top:1px solid var(--line);font-size:var(--font-size-sm);margin-top:auto}.footer-inner{justify-content:center;align-items:center;gap:16px;min-height:52px;display:flex}.footer-copyright{color:var(--text-subtle);align-items:center;gap:9px;font-weight:500;display:flex}.footer-copyright-year:after{content:"";background:var(--text-faint);opacity:.8;vertical-align:middle;border-radius:50%;width:3px;height:3px;margin-left:9px;display:inline-block}.eyebrow{color:var(--accent-dark);font:600 11px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px}.soft-button{color:var(--on-accent);background:var(--accent);border-radius:var(--radius-control);font-size:var(--font-size-ui);align-items:center;gap:10px;padding:8px 16px;display:inline-flex}.soft-button:hover{color:var(--on-accent);background:var(--accent-dark)}.text-link span,.read-more span{display:inline-block}.text-link span{margin-left:4px}.sidebar-nav{z-index:15;top:var(--header-height);width:var(--sidebar-width);background:var(--sidebar-surface);border-right:1px solid var(--line);font-size:14.5px;position:fixed;bottom:0;left:0;overflow:hidden}.sidebar-nav-inner{box-sizing:border-box;flex-direction:column;height:100%;padding:22px 18px 24px;display:flex;overflow-y:auto}.sidebar-brand{display:none}.sidebar-heading{color:var(--text-faint);font:600 12px/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;padding:0 8px}.sidebar-link{color:var(--text-subtle);border-radius:var(--radius-control);margin-bottom:2px;padding:8px;line-height:1.5;display:block}.sidebar-link:hover{color:var(--accent-dark);background:var(--surface-hover)}.sidebar-link.active{color:var(--accent-dark);background:var(--accent-soft);font-weight:600}.sidebar-link-top{margin-bottom:22px;font-weight:600}.sidebar-timeline{overscroll-behavior:none;flex:0 auto;min-height:96px;margin-bottom:16px;overflow-y:auto}.sidebar-timeline-year{position:relative}.sidebar-timeline-year:before{content:"";border-left:1px solid var(--line);position:absolute;top:6px;bottom:6px;left:11px}.sidebar-timeline-year+.sidebar-timeline-year{margin-top:6px}.sidebar-timeline-year-label{color:var(--text-faint);font:600 12px/1.4 var(--sans);letter-spacing:.08em;font-variant-numeric:tabular-nums;padding:2px 8px 4px 24px;display:block}.sidebar-timeline ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.sidebar-timeline li a{color:var(--text-subtle);border-radius:var(--radius-control);gap:8px;padding:5px 8px 5px 24px;line-height:1.45;display:flex;position:relative}.sidebar-timeline li a:before{content:"";box-sizing:border-box;background:var(--sidebar-surface);border:1px solid var(--text-faint);border-radius:50%;width:5px;height:5px;position:absolute;top:11px;left:9px}.sidebar-timeline li a:hover{color:var(--accent-dark);background:var(--surface-hover)}.sidebar-timeline li a.active{color:var(--accent-dark);background:var(--accent-soft);font-weight:600}.sidebar-timeline li a.active:before{background:var(--accent);border-color:var(--accent)}.sidebar-timeline time{color:var(--text-faint);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;flex:none;padding-top:2px}.sidebar-timeline li span{flex:auto;min-width:0}.sidebar-timeline+.sidebar-link{margin-top:-4px}.sidebar-timeline+.sidebar-link+.sidebar-link{border-bottom:1px solid var(--line);margin-bottom:22px;padding-bottom:8px}.sidebar-timeline,.sidebar-nav-inner,.article-sidebar,.header-search-results{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}:is(.sidebar-timeline,.sidebar-nav-inner,.article-sidebar,.header-search-results)::-webkit-scrollbar{width:6px}:is(.sidebar-timeline,.sidebar-nav-inner,.article-sidebar,.header-search-results)::-webkit-scrollbar-track{background:0 0}:is(.sidebar-timeline,.sidebar-nav-inner,.article-sidebar,.header-search-results)::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}:is(.sidebar-timeline,.sidebar-nav-inner,.article-sidebar,.header-search-results)::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.sidebar-timeline,.sidebar-nav-inner{scrollbar-color:transparent transparent}:is(.sidebar-timeline,.sidebar-nav-inner)::-webkit-scrollbar-thumb{background:0 0}:is(.sidebar-timeline,.sidebar-nav-inner).is-scrolling{scrollbar-color:var(--scrollbar-thumb) transparent}:is(.sidebar-timeline,.sidebar-nav-inner).is-scrolling::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}.sidebar-handle{display:none}.sidebar-heading+.sidebar-link{margin-bottom:2px}.sidebar-backdrop{display:none}@media (width<=1024px){.header-action.sidebar-toggle{display:grid}.site-brand{flex:auto}.sidebar-nav{z-index:40;overscroll-behavior:contain;touch-action:pan-y;width:min(84vw,320px);height:100dvh;box-shadow:var(--glass-shadow);transition:transform var(--duration-medium) var(--ease-emphasized);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-nav.is-open{transform:translate(0)}.sidebar-nav-inner{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.sidebar-brand{color:var(--ink);font:600 15px/1.2 var(--sans);align-items:center;gap:9px;margin-bottom:14px;padding:0 8px;display:inline-flex}.sidebar-backdrop{z-index:39;opacity:0;pointer-events:none;transition:opacity var(--duration-medium) var(--ease-standard);background:#0f172a52;display:block;position:fixed;inset:0}body.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}body.sidebar-open{overflow:hidden}}@media (width>=1025px){.docs-shell{padding-left:var(--sidebar-width);gap:0}.site-footer{padding-left:var(--sidebar-width)}.sidebar-nav{transition:transform var(--duration-medium) var(--ease-emphasized), visibility 0s}.docs-shell,.site-footer{transition:padding-left var(--duration-medium) var(--ease-emphasized)}:root.sidebar-collapsed .sidebar-nav{visibility:hidden;transition:transform var(--duration-medium) var(--ease-emphasized), visibility 0s var(--duration-medium);transform:translate(-100%)}:root.sidebar-collapsed .docs-shell,:root.sidebar-collapsed .site-footer{padding-left:0}.about-page{transition:padding-left var(--duration-medium) var(--ease-emphasized)}.about-visual{transition:transform var(--duration-medium) var(--ease-emphasized)}:root.sidebar-collapsed .about-page{padding-left:calc(var(--sidebar-width) / 2)}:root.sidebar-collapsed .about-visual{transform:translateX(calc(var(--sidebar-width) / -2))}.sidebar-handle{z-index:16;top:calc(50% + var(--header-height) / 2);left:calc(var(--sidebar-width) - 15px);width:30px;height:calc((100vh - var(--header-height)) / 3);color:var(--text-faint);background:var(--paper);border:1px solid var(--line);box-shadow:var(--glass-shadow);cursor:pointer;transition:left var(--duration-medium) var(--ease-emphasized), color .18s var(--ease-standard), background-color .18s var(--ease-standard), border-color .18s var(--ease-standard), box-shadow .18s var(--ease-standard), opacity .4s var(--ease-standard);border-radius:999px;place-items:center;padding:0;display:grid;position:fixed;transform:translateY(-50%)}.sidebar-handle svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px;transition:transform var(--duration-medium) var(--ease-emphasized)}.sidebar-handle:hover,.sidebar-handle:focus-visible{color:var(--on-accent);background:var(--accent);box-shadow:0 2px 12px color-mix(in srgb, var(--accent) 45%, transparent);border-color:#0000}.sidebar-handle:hover svg,.sidebar-handle:focus-visible svg{transform:translate(-2px)}:root.sidebar-collapsed .sidebar-handle:hover svg,:root.sidebar-collapsed .sidebar-handle:focus-visible svg{transform:rotate(180deg)translate(-2px)}:root.sidebar-collapsed .sidebar-handle{opacity:.8;left:-4px}:root.sidebar-collapsed .sidebar-handle.is-strong,:root.sidebar-collapsed .sidebar-handle:hover,:root.sidebar-collapsed .sidebar-handle:focus-visible{opacity:1;color:var(--on-accent);background:var(--accent);box-shadow:0 2px 12px color-mix(in srgb, var(--accent) 45%, transparent);border-color:#0000}:root.sidebar-collapsed .sidebar-handle:hover,:root.sidebar-collapsed .sidebar-handle:focus-visible{background:var(--accent-dark);left:0}:root.sidebar-collapsed .sidebar-handle svg{transform:rotate(180deg)}}.page-header{padding:32px 0 30px}.posts-page-header{padding-bottom:16px}:where(.page-header,.about-header) h1{font:600 clamp(24px, 4vw, 32px)/1.35 var(--sans);margin:0}.page-header>p:last-child{max-width:600px;color:var(--muted);margin:10px 0 0}.term-page-header{padding-bottom:22px}.term-page-header h1{font-size:clamp(22px,3.6vw,28px)}.term-page-meta{color:var(--muted);font-size:var(--font-size-sm);align-items:center;gap:16px;margin-top:8px;display:flex}.home-page{min-width:0;padding:34px 0 40px;font-size:17px}.home-hero{margin-bottom:2.5rem}.home-hero h1{font:700 clamp(26px, 4.2vw, 34px)/1.3 var(--sans);margin:0}.home-intro{max-width:62ch;color:var(--muted);margin:10px 0 0;font-size:17px;line-height:1.75}.home-updated{color:var(--text-faint);margin:12px 0 0;font-size:14px}.home-section{padding-bottom:40px}.home-quicklinks{padding-bottom:0}.home-quicklinks .post-subscribe{margin-top:0}.home-section h2{font:600 20px/1.4 var(--sans);margin:0 0 16px}.home-recent-list{margin:0;padding:0;list-style:none}.home-recent-list li{flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:13px 0;display:flex}.home-recent-list li+li{border-top:1px solid var(--list-line)}.home-recent-list time{color:var(--text-faint);font-variant-numeric:tabular-nums;flex:none;font-size:13px}.home-recent-list a:not(.home-recent-category){min-width:0;color:var(--ink);transition:color var(--duration-fast) var(--ease-standard);font-weight:500}.home-recent-list a:not(.home-recent-category):hover{color:var(--accent)}.home-recent-category{color:var(--accent-dark);margin-left:auto;font-size:13px;font-weight:500}.home-recent-category:hover{color:var(--accent)}.section-heading{justify-content:space-between;align-items:end;margin-bottom:16px;display:flex;position:relative}.section-heading h2{margin:0}.section-heading>a{font-size:14px}.post-list{background:var(--list-surface);border-top:1px solid var(--list-line);border-radius:var(--list-radius);box-shadow:var(--list-shadow);overflow:hidden}.post-card{border-bottom:1px solid var(--list-line);grid-template-columns:54px minmax(0,1fr);gap:16px;padding:18px 8px;display:grid}.post-date{color:var(--muted);text-align:center;padding-top:4px}.post-date strong{color:var(--accent);font:500 17px/1.2 var(--serif);display:block}.post-date span{letter-spacing:.08em;margin-top:2px;font-size:9px;display:block}.post-card-meta{color:var(--muted);font-size:var(--font-size-xs);flex-wrap:wrap;gap:4px 10px;display:flex}.post-card-meta>*+:before{content:"·";color:var(--text-divider);margin-right:10px}.post-card-meta a{color:var(--text-subtle)}:where(.post-card) h2{font:500 22px/1.4 var(--serif)}.post-card h2{margin:2px 0 3px}.post-card-summary{justify-content:space-between;align-items:baseline;gap:18px;display:flex}.post-card p{max-width:700px;color:var(--muted);margin:0;font-size:14px;line-height:1.65}.read-more{color:var(--accent);font-size:var(--font-size-sm);letter-spacing:.04em}.post-card-summary .read-more{flex:none}.about-page{grid-template-columns:minmax(0,1fr);align-items:start;gap:32px;padding:30px 0 56px;display:grid}.about-copy{z-index:1;min-width:0;max-width:var(--prose-width);grid-column:1;position:relative}.about-header{padding-bottom:16px}.about-header h1{font-size:clamp(22px,3.4vw,28px)}.about-prose{padding-top:2px}.about-prose>p:first-child{margin-top:0}.about-visual{z-index:0;height:calc(100vh - var(--header-height));height:calc(100dvh - var(--header-height));pointer-events:none;max-width:32vw;position:fixed;bottom:0;right:clamp(24px,3vw,48px)}.about-visual img{object-fit:contain;object-position:bottom right;width:auto;max-width:100%;height:100%;display:block}.about-residency-row{grid-column:1;justify-content:center;width:100%;margin-top:20px;display:flex}.about-residency-badge{width:fit-content;max-width:100%;color:var(--text-subtle);align-items:center;gap:.6rem;display:flex}.about-uptime-dot{isolation:isolate;background:var(--accent);border-radius:50%;flex:none;width:.5rem;height:.5rem;position:relative}.about-uptime-dot:before,.about-uptime-dot:after{z-index:-1;content:"";border:1px solid var(--accent-border);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-.375rem}.about-uptime p{font:clamp(.8rem, 1.1vw, .9rem)/1.6 var(--sans);font-variant-numeric:tabular-nums;margin:0}.about-stats{grid-column:1;grid-template-columns:repeat(4,1fr);width:100%;margin-top:26px;display:grid}.about-stat{text-align:center;flex-direction:column;gap:5px;padding:8px 10px;display:flex}.about-stat+.about-stat{border-left:1px solid var(--list-line)}.about-stat-num{color:var(--ink);font:600 26px/1.15 var(--sans);font-variant-numeric:tabular-nums}.about-stat-label{color:var(--muted);font-size:var(--font-size-ui)}@media (width<=1280px){.about-visual{max-width:22vw;height:min(48vh,420px)}}@media (width<=1024px){.about-visual{display:none}}.shell.guestbook-shell{max-width:1560px;margin-inline:auto}.guestbook-page{min-height:calc(100vh - var(--header-height));padding:0 0 78px}.guestbook-header{padding-bottom:30px}.article{max-width:var(--article-width);margin:0 auto;padding:34px 0 70px}.article-header{border-bottom:1px solid var(--line);padding-bottom:26px}.article-category{color:var(--accent-dark);font-size:var(--font-size-sm);letter-spacing:.04em;margin:0 0 8px;font-weight:600}.article-category a:hover{color:var(--accent)}.article-header h1{font:700 clamp(24px, 4.2vw, 32px)/1.35 var(--sans);margin:0 0 14px}.article-summary{max-width:680px;color:var(--muted);margin:-2px 0 14px}.article-meta{color:var(--muted);font-size:var(--font-size-sm);flex-wrap:wrap;align-items:center;gap:5px 8px;display:flex}.article-meta>*+:before{content:"·";color:var(--text-divider);margin-right:8px}.article-meta-tag{color:var(--text-subtle)}.article-meta-tag:hover{color:var(--accent)}:where(.article-spoiler,.prose blockquote){color:var(--muted);border-left:3px solid var(--accent-soft);padding:4px 18px}.article-spoiler{font:15px/1.75 var(--sans);margin:24px 0 0}.article-spoiler strong{color:var(--ink)}.post-article .article-header{border-bottom:0;padding-bottom:0}.post-article .article-spoiler{margin-top:1rem}.article-toc{color:var(--muted);background:var(--soft-panel);border:1px solid var(--line);border-radius:var(--radius-medium);margin-top:24px;padding:12px 16px;font-size:14px}.article-toc summary{width:fit-content;color:var(--accent-dark);cursor:pointer;font-weight:600}.article-toc nav{padding-top:8px}.article-toc ul{margin:0;padding-left:20px}.article-toc li+li{margin-top:3px}.article-toc a{color:var(--muted)}.article-sidebar{display:none}.prose{max-width:var(--prose-width);font-family:var(--sans);padding-top:24px;font-size:16px}.prose h2,.prose h3{margin:2.2em 0 .7em;font-weight:600;line-height:1.5}.prose :where(h2,h3,h4)[id]{scroll-margin-top:calc(var(--header-height) + 18px)}.prose h2{font-size:25px}.prose h3{font-size:20px}.prose p{margin:1.15em 0}.prose a{color:var(--accent);border-bottom:1px dotted}.source-link{display:inline-block;position:relative}.source-link:before{z-index:21;content:"";background:var(--tooltip-tip);border-right:1px solid var(--accent-border);border-bottom:1px solid var(--accent-border);opacity:0;visibility:hidden;pointer-events:none;width:8px;height:8px;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%,3px)rotate(45deg)}.source-link:after{z-index:20;content:attr(data-tooltip);color:var(--tooltip-text);background:var(--tooltip-surface);border:1px solid var(--accent-border);border-radius:var(--radius-pill);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--inset-highlight);opacity:0;visibility:hidden;transform-origin:bottom;white-space:nowrap;backdrop-filter:blur(14px)saturate(1.15);font:500 12px/1.45 var(--sans);letter-spacing:.05em;pointer-events:none;padding:7px 13px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)scale(.96)}.source-link:before,.source-link:after{transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard)}.source-link:hover:before,.source-link:focus-visible:before,.source-link:hover:after,.source-link:focus-visible:after{opacity:1;visibility:visible}.source-link:hover:before,.source-link:focus-visible:before{transform:translate(-50%)rotate(45deg)}.source-link:hover:after,.source-link:focus-visible:after{transform:translate(-50%)scale(1)}.prose blockquote{margin:1.8em 0}.prose code{background:var(--paper-deep);border-radius:var(--radius-small);padding:2px 5px;font:.9em ui-monospace,monospace}.prose pre{color:var(--code-text);background:var(--code-surface);border-radius:var(--radius-medium);padding:18px;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose figure{margin:1.8em 0}.prose img{border-radius:var(--radius-medium);max-width:100%;height:auto;margin-inline:auto;display:block}.prose figcaption{color:var(--muted);text-align:center;font:var(--font-size-sm)/1.6 var(--sans);margin-top:7px}.post-article .prose img{cursor:zoom-in}.article-lightbox{background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.article-lightbox::backdrop{backdrop-filter:blur(5px);background:#0f172ab8}.article-lightbox-viewer{cursor:zoom-in;touch-action:none;overscroll-behavior:contain;-webkit-user-select:none;user-select:none;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.article-lightbox-viewer.is-zoomed{cursor:grab}.article-lightbox-viewer.is-zoomed:active{cursor:grabbing}.article-lightbox img{object-fit:contain;transform-origin:50%;pointer-events:auto;will-change:transform;-webkit-user-drag:none;border-radius:clamp(.4rem,1vw,.75rem);width:auto;max-width:96vw;height:auto;max-height:min(90dvh,100dvh - 7rem);display:block;transform:translate(0,0)scale(1);box-shadow:0 1.5rem 4rem #050c1861}.article-lightbox img.is-transforming{transition:none}.article-lightbox.is-loading img{opacity:0}.article-lightbox.is-loading .article-lightbox-viewer:after{content:"";opacity:0;border:2px solid #ffffff42;border-top-color:#ffffffe6;border-radius:50%;width:2.25rem;height:2.25rem;margin:-1.125rem 0 0 -1.125rem;animation:.7s linear infinite lightbox-spin,.18s .15s forwards lightbox-loading-in;position:absolute;top:50%;left:50%}.article-lightbox-nav{color:#ffffffeb;cursor:pointer;backdrop-filter:blur(14px)saturate(125%);touch-action:manipulation;-webkit-tap-highlight-color:transparent;--nav-edge-offset:3.5rem;z-index:3;background:#eef7ff2e;border:1px solid #ffffff52;border-radius:50%;place-items:center;width:4rem;height:4rem;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 .65rem 1.8rem #050c1833,inset 0 1px #ffffff24}.article-lightbox-nav svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.75rem;height:1.75rem}.article-lightbox-prev{left:max(calc(env(safe-area-inset-left) + .75rem), calc(50% - var(--lightbox-image-width,80vw) / 2 - var(--nav-edge-offset)))}.article-lightbox-next{right:max(calc(env(safe-area-inset-right) + .75rem), calc(50% - var(--lightbox-image-width,80vw) / 2 - var(--nav-edge-offset)))}.article-lightbox-nav:hover{color:var(--code-text);background:#f5faff47;border-color:#ffffff7a;transform:translateY(-50%)scale(1.06)}.article-lightbox-nav:focus-visible{outline-offset:3px;background:#ffffff1f;outline:1px solid #ffffffd1}.article-lightbox-count{z-index:2;top:max(1.25rem, env(safe-area-inset-top));color:#ffffffd1;border-radius:var(--radius-pill);backdrop-filter:blur(10px);font:500 var(--font-size-xs)/1.2 var(--sans);letter-spacing:.06em;background:#1d304561;border:1px solid #ffffff24;padding:.35rem .75rem;position:fixed;left:50%;transform:translate(-50%)}.article-lightbox-controls{z-index:2;right:50%;bottom:max(1rem, env(safe-area-inset-bottom));color:#ffffffeb;border-radius:var(--radius-pill);backdrop-filter:blur(12px);background:#1d304594;border:1px solid #ffffff3d;gap:.25rem;padding:.35rem;display:flex;position:fixed;transform:translate(50%);box-shadow:0 .75rem 2rem #050c1833}.article-lightbox-controls button{min-width:2.75rem;height:2.75rem;color:inherit;border-radius:var(--radius-pill);cursor:pointer;font:500 1rem/1 var(--sans);touch-action:manipulation;background:0 0;border:0;place-items:center;padding:0 .65rem;display:grid}.article-lightbox-controls button:hover,.article-lightbox-controls button:focus-visible{color:var(--code-text);background:#97c1e238}.article-lightbox-control-nav{display:none!important}html.lightbox-open,html.lightbox-open body{overscroll-behavior:none;overflow:hidden}@media (width>=641px){.article-lightbox img{max-width:calc(100vw - 10rem)}.article-lightbox-prev{left:max(var(--lightbox-nav-side,1rem), env(safe-area-inset-left))}.article-lightbox-next{right:max(var(--lightbox-nav-side,1rem), env(safe-area-inset-right))}.article-lightbox.is-zoomed .article-lightbox-nav{opacity:0}.article-lightbox.is-zoomed .article-lightbox-nav:before{content:"";position:absolute;inset:-1rem}.article-lightbox.is-zoomed .article-lightbox-nav:hover,.article-lightbox.is-zoomed .article-lightbox-nav:focus-visible{opacity:1}}@media (width<=640px){.article-lightbox{--lightbox-stage-top:calc(4.5rem + env(safe-area-inset-top));--lightbox-stage-bottom:calc(5.5rem + env(safe-area-inset-bottom))}.article-lightbox-viewer{top:var(--lightbox-stage-top);bottom:var(--lightbox-stage-bottom)}.article-lightbox img{max-width:calc(100vw - 1rem);max-height:calc(100dvh - 10rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));object-fit:contain}.article-lightbox-nav{display:none}.article-lightbox-count{top:max(1rem, env(safe-area-inset-top))}.article-lightbox-controls{bottom:calc(1rem + env(safe-area-inset-bottom))}.article-lightbox-controls button{min-width:2.5rem;height:2.5rem;padding:0 .5rem}.article-lightbox-control-nav:not([hidden]){display:grid!important}.article-lightbox-control-nav svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem}}.post-navigation{color:var(--muted);border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px;padding-top:20px;display:grid}.post-navigation a{min-width:0;color:inherit}.post-navigation a:hover strong{color:var(--accent)}.post-navigation span{color:var(--accent);font-size:var(--font-size-xs);letter-spacing:.06em;display:block}.post-navigation strong{color:var(--ink);font:500 15px/1.5 var(--serif);text-overflow:ellipsis;white-space:nowrap;transition:color var(--duration-fast) var(--ease-standard);margin-top:5px;display:block;overflow:hidden}.post-navigation-next{text-align:right}.term-cloud{flex-wrap:wrap;gap:12px;padding-bottom:80px;display:flex}:where(.term-cloud a,.category-filter button,.tag-filter-list button){border:1px solid var(--line);align-items:center;display:flex}:where(.term-cloud a,.tag-filter-list button){border-radius:var(--radius-control)}.term-cloud a{background:var(--glass);backdrop-filter:blur(10px);gap:12px;padding:9px 15px}.term-cloud small{color:var(--muted)}.category-filter{margin-bottom:18px;overflow:hidden}.page-header+.post-filter{margin-top:-20px}.category-filter-track{scrollbar-width:none;gap:7px;padding:2px 0 4px;display:flex;overflow-x:auto}.category-filter-track::-webkit-scrollbar{display:none}.category-filter button,.tag-filter-list button{cursor:pointer;font:var(--font-size-xs)/1.5 var(--sans)}.category-filter button{color:var(--muted);border-radius:var(--radius-pill);white-space:nowrap;background:0 0;flex:none;padding:4px 9px}.category-filter button span,.tag-filter-list button span{color:var(--text-faint)}.category-filter button:hover,.tag-filter-list button:hover{color:var(--accent-dark);background:var(--surface-hover)}.category-filter button.active,.tag-filter-list button.active{color:var(--accent-dark);background:var(--accent-soft);border-color:var(--accent-border);font-weight:600}.category-filter button.active span,.tag-filter-list button.active span{color:var(--accent)}.tag-filter{color:var(--muted);margin:-8px 0 18px}.tag-filter summary{cursor:pointer;width:fit-content;font-size:var(--font-size-sm);transition:color var(--duration-fast) var(--ease-standard);padding:3px 0;list-style:none}.tag-filter summary::-webkit-details-marker{display:none}.tag-filter summary:before{content:"+";width:14px;color:var(--text-faint);display:inline-block}.tag-filter[open] summary:before{content:"-"}.tag-filter summary:hover{color:var(--accent)}.tag-filter-list{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px;padding:8px 0 2px;display:grid}.tag-filter-list button{min-width:0;color:var(--text-subtle);background:var(--control-surface);justify-content:space-between;gap:8px;padding:4px 8px}.tag-filter-list button:hover{border-color:var(--accent-border)}.tag-filter-list button span{font-size:9px}.filter-empty{border-top:1px solid var(--list-line)}.collection-footer{text-align:right;padding-top:18px}.category-footer{padding-bottom:70px}.shell.archive-shell{max-width:1560px;margin-inline:auto}.archive-layout{--archive-pill-font-size:.75rem;--archive-pill-line-height:1.5;--archive-pill-padding-y:.38rem;--archive-pill-padding-x:.72rem;--archive-pill-border-width:1px;--archive-pill-radius:var(--radius-pill);grid-template-columns:minmax(300px,340px) minmax(0,1fr);align-items:start;gap:clamp(44px,4vw,64px);padding:38px 0 76px;display:grid}.archive-sidebar{align-self:start;min-width:0;position:sticky;top:24px}.archive-intro{padding-bottom:20px}.archive-intro h1{font:500 clamp(38px, 3.6vw, 50px)/1.25 var(--serif);margin:0}.archive-intro>p:not(.eyebrow){color:var(--muted);margin:9px 0 0;font-size:15px;line-height:1.7}.archive-view-description{flex-wrap:wrap;align-items:center;gap:0 .32em;display:flex}.archive-view-switch{white-space:nowrap;background:var(--control-surface);border:var(--archive-pill-border-width) solid var(--line);border-radius:var(--archive-pill-radius);flex:none;align-self:center;align-items:center;display:inline-flex}.archive-view-switch button{padding:var(--archive-pill-padding-y) var(--archive-pill-padding-x);color:var(--muted);border-radius:var(--archive-pill-radius);cursor:pointer;font:500 var(--archive-pill-font-size)/var(--archive-pill-line-height) var(--sans);transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);background:0 0;border:0;flex:none}.archive-view-switch button:hover{color:var(--accent-dark);background:var(--surface-hover)}.archive-view-switch button:focus-visible{z-index:1;outline:2px solid var(--accent);outline-offset:-2px;position:relative}.archive-view-switch button.active{color:var(--accent-dark);background:var(--accent-soft);font-weight:600}.archive-filters{padding-top:0}.archive-sidebar .category-filter{margin-bottom:20px}.archive-sidebar .category-filter-track{flex-wrap:wrap;overflow:visible}.archive-sidebar .category-filter button{padding:var(--archive-pill-padding-y) var(--archive-pill-padding-x);border-width:var(--archive-pill-border-width);border-radius:var(--archive-pill-radius);font-size:var(--archive-pill-font-size);line-height:var(--archive-pill-line-height)}.archive-tag-filter h2{color:var(--muted);font:500 .8rem/1.5 var(--sans);margin:0 0 10px}.archive-tag-toggle{display:none}.archive-tag-filter .tag-filter-list{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:0}.archive-tag-filter .tag-filter-list button{padding:.4rem .65rem;font-size:.75rem}.archive-card-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));align-items:stretch;gap:clamp(24px,2.2vw,32px);min-width:0;display:grid}.archive-card{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-medium);min-width:0;box-shadow:var(--soft-shadow);backdrop-filter:blur(14px);content-visibility:auto;contain-intrinsic-size:auto 700px;flex-direction:column;transition:transform .36s cubic-bezier(.22,1,.36,1),box-shadow .36s cubic-bezier(.22,1,.36,1),background-color .36s cubic-bezier(.22,1,.36,1),border-color .36s cubic-bezier(.22,1,.36,1);display:flex;overflow:hidden}.archive-card-cover{aspect-ratio:16/10;background:var(--paper-deep);border-radius:var(--radius-medium) var(--radius-medium) 0 0;display:block;position:relative;overflow:hidden}.archive-card-cover img,.archive-card-placeholder{width:100%;height:100%;display:block}.archive-card-cover img{object-fit:cover;transition:transform .38s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.archive-card-placeholder{background:var(--placeholder-background);position:absolute;inset:0}.archive-card-placeholder:after{aspect-ratio:1;content:"";border:1px solid #6e9bc224;border-radius:50%;width:38%;position:absolute;bottom:18%;right:18%}.archive-card-body{flex-direction:column;flex:1;min-width:0;padding:24px 26px 22px;display:flex}.archive-card-meta{color:var(--muted);flex-wrap:wrap;gap:4px 9px;font-size:.75rem;display:flex}.archive-card-meta>*+:before{content:"·";color:var(--text-divider);margin-right:9px}.archive-card h2{font:500 clamp(22px, 1.7vw, 25px)/1.42 var(--serif);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:9px 0 8px;display:-webkit-box;overflow:hidden}.archive-card-summary{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:15px;line-height:1.7;display:-webkit-box;overflow:hidden}.archive-card-footer{justify-content:space-between;align-items:end;gap:16px;margin-top:auto;padding-top:18px;display:flex}.archive-card-tags{flex-wrap:wrap;gap:5px 9px;min-width:0;display:flex}.archive-card-tags button{max-width:100%;color:var(--text-subtle);cursor:pointer;font:var(--font-size-xs)/1.5 var(--sans);text-overflow:ellipsis;white-space:nowrap;transition:color var(--duration-fast) var(--ease-standard);background:0 0;border:0;padding:0;overflow:hidden}.archive-card-tags button:hover{color:var(--accent)}.archive-card-tags button.active{color:var(--accent-dark)}.archive-card-footer .read-more{flex:none}.archive-content{min-width:0}.archive-card-list[hidden],.archive-timeline-list[hidden]{display:none}html[data-archive-view=cards] .archive-card-list,html[data-archive-view=timeline] .archive-timeline-list{display:block}html[data-archive-view=cards] .archive-card-list{display:grid}html[data-archive-view=cards] .archive-timeline-list,html[data-archive-view=timeline] .archive-card-list{display:none}html[data-archive-view=timeline] .archive-view-switch button[data-archive-view=cards]{color:var(--muted);background:0 0;font-weight:500}html[data-archive-view=timeline] .archive-view-switch button[data-archive-view=timeline]{color:var(--accent-dark);background:var(--accent-soft);font-weight:600}html.archive-no-transition .archive-view-switch button{transition:none}.archive-timeline-list{min-width:0;padding:2px 0 30px}.archive-timeline-year{grid-template-columns:82px minmax(0,1fr);gap:24px;display:grid;position:relative}.archive-timeline-year+.archive-timeline-year{padding-top:38px}.archive-timeline-year h2{color:var(--accent);font:500 26px/1.5 var(--serif);margin:-4px 0 0}.archive-timeline-items{border-left:1px solid var(--accent-border);padding:0 0 8px 28px;position:relative}.archive-timeline-item{grid-template-columns:58px minmax(0,1fr);gap:18px;padding:0 0 34px;display:grid;position:relative}.archive-timeline-item:last-child{padding-bottom:12px}.archive-timeline-item:before{content:"";background:var(--paper);border:2px solid var(--accent);width:9px;height:9px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%;position:absolute;top:8px;left:-33px}.archive-timeline-item time{color:var(--muted);font-size:var(--font-size-ui);letter-spacing:.03em;padding-top:2px}.archive-timeline-body{min-width:0}.archive-timeline-body h3{font:500 clamp(19px, 1.6vw, 23px)/1.45 var(--serif);overflow-wrap:anywhere;margin:0}.archive-timeline-body h3 a{transform-origin:0;transition:color var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard);display:inline-block}.archive-timeline-body h3 a:hover{color:var(--accent);transform:scale(1.02)}.archive-timeline-body>p{max-width:780px;color:var(--muted);margin:7px 0 10px;font-size:14px;line-height:1.75}.archive-timeline-meta{color:var(--text-faint);font-size:var(--font-size-xs);flex-wrap:wrap;align-items:center;gap:5px 11px;display:flex}.archive-timeline-meta button{color:var(--text-subtle);cursor:pointer;font:inherit;transition:color var(--duration-fast) var(--ease-standard);background:0 0;border:0;padding:0}.archive-timeline-meta button:hover{color:var(--accent)}.archive-timeline-meta button.active{color:var(--accent-dark)}.archive-timeline-meta span+span:before{content:"·";color:var(--text-divider);margin-right:11px}.archive{padding-bottom:70px}.archive-year{border-top:1px solid var(--line);grid-template-columns:100px 1fr;gap:24px;padding:24px 0;display:grid}.archive-year h2{color:var(--accent);font:500 27px/1.5 var(--serif);margin:0}.archive-item{grid-template-columns:58px minmax(0,1fr);align-items:baseline;gap:12px;padding:8px 0;display:grid}.archive-item time{color:var(--muted);font-size:var(--font-size-ui)}.archive-title{font:500 15px/1.7 var(--serif)}@media (width>=901px){.archive-layout{--archive-pill-font-size:14px}.archive-intro h1{font-size:clamp(42px,3.8vw,54px)}.archive-intro>p:not(.eyebrow){font-size:16px}.archive-tag-filter h2{font-size:15px}.archive-tag-filter .tag-filter-list button{font-size:14px}.archive-tag-filter .tag-filter-list button span{font-size:11px}}@media (width<=900px){.archive-layout{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px 0 52px}.archive-sidebar{position:static}.archive-intro{padding-bottom:12px}.archive-intro .eyebrow{margin-bottom:6px}.archive-intro h1{font-size:clamp(34px,10vw,43px);line-height:1.18}.archive-intro>p:not(.eyebrow){margin-top:6px;font-size:14px;line-height:1.6}.archive-sidebar .category-filter{margin-bottom:12px;margin-right:0}.archive-sidebar .category-filter-track{padding-right:0}.archive-tag-filter h2{display:none}.archive-tag-toggle{width:100%;color:var(--muted);cursor:pointer;font:500 .85rem/1.5 var(--sans);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:7px 1px;display:flex}.archive-tag-toggle-icon{border-bottom:1px solid;border-right:1px solid;width:.5rem;height:.5rem;margin-right:3px;transform:rotate(45deg)translateY(-2px)}.archive-tag-toggle[aria-expanded=true] .archive-tag-toggle-icon{transform:rotate(225deg)translate(-2px,-2px)}.archive-tag-panel.is-collapsible{visibility:hidden;opacity:0;grid-template-rows:0fr;display:grid}.archive-tag-panel.is-collapsible.is-expanded{visibility:visible;opacity:1;grid-template-rows:1fr;transition-delay:0s}.archive-tag-panel.is-collapsible>.tag-filter-list{min-height:0;overflow:hidden}.archive-tag-filter .tag-filter-list{gap:6px;padding-top:5px}.archive-tag-filter .tag-filter-list button{font-size:var(--font-size-xs);padding:.32rem .55rem}.archive-card-list{grid-template-columns:minmax(0,1fr);gap:18px}.archive-card-body{padding:19px 18px 18px}.archive-card h2{font-size:21px}.archive-card-summary{font-size:14px}.archive-card-footer{flex-direction:column;align-items:flex-start;gap:12px}.archive-timeline-year{grid-template-columns:minmax(0,1fr);gap:12px}.archive-timeline-year+.archive-timeline-year{padding-top:28px}.archive-timeline-year h2{font-size:23px}.archive-timeline-items{margin-left:5px;padding-left:23px}.archive-timeline-item{grid-template-columns:minmax(0,1fr);gap:4px;padding-bottom:27px}.archive-timeline-item:before{left:-28px}.archive-timeline-item time{font-size:var(--font-size-xs)}.archive-timeline-body h3{font-size:19px}.archive-timeline-body>p{margin-top:5px;font-size:13px}}.pagination{color:var(--muted);font-size:var(--font-size-ui);grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:32px 0 70px;display:grid}.pagination-edge,.pagination-pages{align-items:center;gap:7px;display:flex}.pagination-edge-next{justify-content:flex-end}.pagination :where(a,span){border:1px solid var(--line);border-radius:var(--radius-pill);white-space:nowrap;justify-content:center;align-items:center;min-height:36px;padding:6px 11px;display:inline-flex}.pagination a{color:var(--text-subtle);background:var(--glass);transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard)}.pagination a:hover{color:var(--accent-dark);background:var(--surface-hover);border-color:var(--accent-border)}.pagination-pages :where(a,span){min-width:36px;padding-inline:8px}.pagination .is-current{color:var(--accent-dark);background:var(--control-active);border-color:var(--accent-border);font-weight:600}.pagination .is-disabled{color:var(--text-faint);opacity:.62;background:0 0}.empty{color:var(--muted);padding:30px 0}.not-found{isolation:isolate;text-align:center;place-content:center;min-height:62vh;display:grid;position:relative}.not-found h1{font:600 28px/1.4 var(--sans);margin:0}.not-found p:not(.eyebrow){color:var(--muted)}.not-found .soft-button{margin:10px auto}.back-to-top{--back-to-top-offset:8px;z-index:12;width:var(--back-to-top-width);height:var(--back-to-top-height);cursor:pointer;background:0 0;border:0;padding:0;position:fixed;bottom:24px;right:20px}.back-to-top:before{content:"";background:var(--back-to-top-glow);border-radius:50%;position:absolute;inset:34px 5px 3px}.back-to-top-layer{z-index:1;width:100%;height:var(--back-to-top-height);display:block;position:absolute;inset:0;overflow:hidden}.back-to-top-silhouette{z-index:1}.back-to-top-color{z-index:2}.back-to-top-reading{--reading-remainder:100%}.back-to-top-reading .back-to-top-color{clip-path:inset(var(--reading-remainder) 0 0)}.back-to-top img{filter:drop-shadow(0 4px 5px #435b771f);width:100%;height:auto;transform:translateY(var(--back-to-top-offset));display:block}.back-to-top-silhouette img{filter:brightness(0)saturate()invert(72%)sepia(27%)saturate(1035%)hue-rotate(177deg)brightness(101%)contrast(91%)drop-shadow(0 4px 5px #435b771f)}.back-to-top-hint{z-index:3;width:25px;height:22px;color:var(--muted);background:var(--back-to-top-hint);border:1px solid var(--frame-line);border-radius:var(--radius-pill);opacity:.58;backdrop-filter:blur(8px);font:var(--font-size-ui)/1 var(--sans);place-items:center;display:grid;position:absolute;top:20px;left:-4px}.back-to-top:hover img,.back-to-top:focus-visible img{transform:translateY(3px)scale(1.02)}.back-to-top:hover .back-to-top-color img,.back-to-top:focus-visible .back-to-top-color img{filter:brightness(1.04)drop-shadow(0 4px 5px #435b7724)}.back-to-top:hover .back-to-top-hint,.back-to-top:focus-visible .back-to-top-hint{color:var(--accent-dark);background:var(--back-to-top-hint-hover);border-color:var(--line);opacity:1}.back-to-top:focus-visible{outline:none}@media (width>=769px){.brand-mark{width:30px;height:30px}.brand-text{font-size:17px}.header-tools{justify-content:flex-end;align-items:center;gap:10px;width:auto;display:flex}}@media (width>=1024px){.post-page{--reader-sticky-top:calc(var(--header-height,72px) + 24px)}.post-article{max-width:none}.post-article.has-toc{grid-template-columns:var(--article-main-track) var(--article-toc-width);gap:var(--article-gap);max-width:none;display:grid}.post-article .article-header h1{font-size:clamp(24px,3vw,30px)}.post-article .prose>p:first-child{margin-top:0}.post-article .prose{max-width:none}.article-main{min-width:0}.article-toc-mobile{display:none}.article-sidebar{min-width:0;top:var(--reader-sticky-top);max-height:calc(100vh - var(--reader-sticky-top) - 24px);overscroll-behavior:contain;align-self:start;display:block;position:sticky;overflow:hidden auto}.article-toc-desktop{color:var(--text-subtle);border-left:1px solid var(--line);padding:4px 0 4px 18px;font-size:14px;line-height:1.7}.article-toc-desktop>p{color:var(--accent-dark);letter-spacing:.02em;margin:0 0 10px;font-size:15px;font-weight:600}.article-toc-desktop nav>ul{margin:0;padding:0;list-style:none}.article-toc-desktop ul{padding-left:14px}.article-toc-desktop li+li{margin-top:5px}.article-toc-desktop a:hover{color:var(--accent-dark)}.article-toc-desktop a.active{color:var(--accent-dark);font-weight:600}}@media (width>=1280px){:root{--article-shell-width:1140px;--article-side-width:200px;--article-gap:40px}.article-toc-desktop{font-size:15px;line-height:1.78}.article-toc-desktop li+li{margin-top:6px}}@media (width<=768px){:root{--header-height:54px;--back-to-top-width:64px;--back-to-top-height:98px}.shell{padding-inline:16px}.header-inner{gap:6px;min-height:54px;padding-inline:12px}.site-brand{flex:auto;gap:8px;min-width:0;overflow:hidden}.brand-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.brand-mark{width:24px;height:24px}.header-tools{flex:none;width:auto}.header-actions{gap:0;min-height:34px}.header-action{width:34px;min-width:34px;height:34px;min-height:34px}.header-search-wrap{width:auto;left:0;right:0}.header-search-popover{width:100%;left:0;right:auto}.header-search-results{overscroll-behavior:contain;max-height:min(46dvh,420px)}.posts-page-header{padding-top:22px}.about-page{grid-template:"visual""header""prose""stats""subscribe""uptime"/1fr;row-gap:.75rem;padding:22px 0 40px;display:grid}.about-stats{grid-area:stats;grid-template-columns:repeat(2,1fr);row-gap:14px;margin-top:.5rem}.about-stat:nth-child(odd){border-left:0}.about-page .post-subscribe{grid-area:subscribe;margin-top:.25rem}.about-copy{display:contents}.about-header{grid-area:header;padding-bottom:0}.about-visual{aspect-ratio:632/1017;grid-area:visual;width:clamp(150px,46vw,190px);max-width:none;height:auto;margin-inline:auto;display:block;position:static;overflow:hidden}.about-visual img{object-fit:cover;object-position:center;width:100%;height:100%}.about-prose{grid-area:prose;padding-top:4px;font-size:15px;line-height:1.75}.about-prose p{margin:.9em 0}.about-residency-row{grid-area:uptime;justify-content:center}.about-residency-badge{gap:.6rem}.about-uptime p[data-uptime-mobile-format]{letter-spacing:.01em;text-align:center;flex:auto;justify-content:center;min-width:0;font-size:clamp(.82rem,3.4vw,.95rem);display:flex}.about-uptime p[data-uptime-mobile-format]>span{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.guestbook-page{padding:0 0 48px}.guestbook-header{padding:22px 0 20px}.home-recent-list li{flex-direction:column;align-items:flex-start;gap:2px}.home-recent-category{margin-left:0}.post-card{grid-template-columns:42px minmax(0,1fr);gap:11px;padding:15px 0}.post-card h2{font-size:19px}.post-card-summary{display:block}.post-card-summary .read-more{margin-top:2px;display:inline-block}.pagination{grid-template-columns:1fr 1fr;gap:10px;padding:26px 0 52px}.pagination-pages{grid-area:1/1/auto/-1;justify-content:center}.pagination-edge{gap:6px}.pagination :where(a,span){min-height:34px;font-size:var(--font-size-xs);padding:5px 9px}.pagination-pages :where(a,span){min-width:34px}.tag-filter-list{grid-template-columns:repeat(2,minmax(0,1fr))}.category-filter{margin-right:-16px}.category-filter-track{padding-right:16px}.archive-year{grid-template-columns:1fr;gap:4px}.archive-item{grid-template-columns:52px minmax(0,1fr);gap:8px;padding:9px 0}.post-navigation{grid-template-columns:1fr;gap:18px}.post-navigation>span{display:none}.post-navigation-next{text-align:left}.back-to-top{--back-to-top-offset:5px;right:10px;bottom:calc(20px + env(safe-area-inset-bottom))}.back-to-top:before{inset:24px 2px 2px}.back-to-top img{transform:translateY(5px)}.back-to-top-hint{width:21px;height:19px;font-size:var(--font-size-xs);top:12px;left:-3px}.back-to-top:hover img,.back-to-top:focus-visible img{transform:translateY(2px)scale(1.02)}.footer-inner{flex-flow:wrap;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:10px 0;display:flex}.footer-copyright{align-items:center;gap:7px;display:flex}}@media (width<=640px){.post-article{padding-top:18px}.post-article .article-category{margin-bottom:6px}.post-article .article-header h1{margin-bottom:8px;font-size:clamp(1.5rem,7.4vw,1.75rem);line-height:1.3}.post-article .article-summary{margin:-1px 0 10px}.post-article .article-spoiler{font:var(--font-size-ui)/1.55 var(--sans);padding:6px 10px}.post-article .article-toc-mobile{margin-top:9px;padding:7px 12px}.post-article .article-toc-mobile nav{padding-top:6px}.post-article .prose,.post-article .article-toc-mobile+.prose{padding-top:14px}.post-article .prose>:first-child{margin-top:0}}@media (hover:hover){.post-card:hover{background:var(--card-hover)}.archive-card:hover{background:var(--glass-hover);border-color:var(--accent-border);box-shadow:var(--glass-shadow)}.archive-card:hover .archive-card-cover img{transform:scale(1.03)}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}a,.soft-button,.skip-link{transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard)}.article-sidebar{transition:top var(--duration-medium) var(--ease-emphasized), max-height var(--duration-medium) var(--ease-emphasized)}.header-search-wrap{transition:opacity .26s var(--ease-emphasized), transform .26s var(--ease-emphasized), visibility 0s linear .26s}.header-tools.search-active .header-search-wrap{transition-delay:0s}.header-tools [data-header-search-toggle]{transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard)}.theme-toggle svg{transition:opacity .28s var(--ease-standard), transform .32s var(--ease-emphasized)}.soft-button{transition-property:color,background-color,transform,box-shadow;transition-duration:var(--duration-fast), var(--duration-fast), .28s, .28s;transition-timing-function:var(--ease-standard), var(--ease-standard), var(--ease-emphasized), var(--ease-emphasized)}.source-link:before,.source-link:after{transition:opacity var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-emphasized), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), visibility 0s linear var(--duration-fast)}.source-link:hover:before,.source-link:focus-visible:before,.source-link:hover:after,.source-link:focus-visible:after{transition-delay:0s}.archive-tag-panel.is-collapsible{transition:grid-template-rows .32s var(--ease-emphasized), opacity .24s var(--ease-standard), visibility 0s linear .32s}.archive-tag-toggle-icon{transition:transform .32s var(--ease-emphasized)}.article-lightbox-nav{transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard), transform .28s var(--ease-emphasized)}.article-lightbox-controls button{transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), transform .28s var(--ease-emphasized)}.back-to-top img,.back-to-top-hint{transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard), transform .32s var(--ease-emphasized), filter .32s var(--ease-emphasized)}.about-uptime-dot{animation:5.2s cubic-bezier(.45,0,.25,1) infinite about-uptime-breathe}.about-uptime-dot:before,.about-uptime-dot:after{animation:5.6s cubic-bezier(.45,0,.25,1) infinite about-uptime-ripple}.about-uptime-dot:after{animation-delay:2.6s}.article-lightbox[open]{animation:lightbox-enter var(--duration-fast) var(--ease-standard)}.article-lightbox[open]::backdrop{animation:lightbox-backdrop-enter var(--duration-fast) var(--ease-standard)}}@keyframes about-uptime-breathe{0%,to{opacity:.78;transform:scale(.96)}50%{opacity:.94;transform:scale(1.14)}}@keyframes about-uptime-ripple{0%{opacity:.22;transform:scale(.78)}76%,to{opacity:0;transform:scale(2.2)}}@keyframes lightbox-spin{to{transform:rotate(360deg)}}@keyframes lightbox-loading-in{to{opacity:1}}@keyframes lightbox-enter{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes lightbox-backdrop-enter{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){:root.theme-transitioning,:root.theme-transitioning *{transition:none!important}.source-link:before,.source-link:after,.header-tools .header-search-wrap,.header-tools [data-header-search-toggle],.lang-toggle-char,.article-sidebar,.sidebar-nav,.docs-shell,.site-footer,.about-page,.about-visual{transition:none}.about-uptime-dot,.about-uptime-dot:before,.about-uptime-dot:after{animation:none}.about-uptime-dot:before,.about-uptime-dot:after{opacity:0}.archive-tag-panel.is-collapsible,.archive-tag-toggle-icon,.post-card,.archive-card,.archive-card-cover img{transition:none}.archive-card:hover .archive-card-cover img{transform:none}.back-to-top:hover img,.back-to-top:focus-visible img{transform:translateY(var(--back-to-top-offset))}}:root[data-theme=dark]{color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark}}.guestbook-layout{gap:40px;display:grid}.guestbook-form{border-block:1px solid var(--line);background:#e4eef81f;padding:20px 2px 22px}.guestbook-reference-tools{border-bottom:1px solid var(--list-line);flex-wrap:wrap;align-items:center;gap:6px 14px;margin:-4px 0 16px;padding:0 0 10px;display:flex}.guestbook-reference{min-width:0;color:var(--text-subtle);font-size:var(--font-size-ui);text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center;row-gap:2px;font-weight:500;display:grid}.guestbook-reference[hidden],.guestbook-post-picker[hidden]{display:none}.guestbook-reference>span:first-child{white-space:nowrap}.guestbook-reference-target{justify-content:center;align-items:center;gap:.4rem;min-width:0;max-width:100%;display:inline-flex}.guestbook-reference a{min-width:0;color:var(--accent-dark);overflow-wrap:anywhere;font-weight:600}.guestbook-reference button{width:1.25rem;height:1.25rem;color:var(--text-faint);box-shadow:none;cursor:pointer;font:400 15px/1 var(--sans);transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;margin:0;padding:0;display:inline-grid}.guestbook-reference button:hover,.guestbook-reference button:focus-visible,.guestbook-reference button:active{color:var(--accent-dark);background:var(--control-active);box-shadow:inset 0 0 0 1px var(--accent-border)}.guestbook-reference button:focus-visible{outline:0}.guestbook-post-picker-toggle{color:var(--text-subtle);border:0;border-bottom:1px solid var(--line);cursor:pointer;font:var(--font-size-sm)/1.7 var(--sans);background:0 0;margin-left:auto;padding:0}.guestbook-post-picker-toggle:hover{color:var(--accent-dark);border-color:var(--accent-border)}.guestbook-post-picker{border-bottom:1px solid var(--list-line);margin:-8px 0 16px;padding:10px 0 12px}.guestbook-post-picker label{color:var(--text-faint);font-size:var(--font-size-xs);margin-bottom:5px;display:block}.guestbook-post-picker input{width:100%;color:var(--ink);background:var(--control-surface);border:1px solid var(--line);border-radius:var(--radius-small);font:13px/1.6 var(--sans);outline:0;padding:7px 9px}.guestbook-post-picker input:focus{background:var(--glass-hover);border-color:var(--accent-border);box-shadow:0 0 0 2px #6e9bc212}.guestbook-post-picker-status{color:var(--text-faint);font-size:var(--font-size-sm);margin:8px 0 0}.guestbook-post-results{--guestbook-post-row-height:46px;max-height:calc(var(--guestbook-post-row-height) * 2.5);margin:7px 0 0;padding:0;list-style:none;overflow-y:auto}.guestbook-post-results li{height:var(--guestbook-post-row-height)}.guestbook-post-results li+li{border-top:1px solid var(--list-line)}.guestbook-post-results button{width:100%;height:100%;color:var(--text-subtle);cursor:pointer;text-align:left;font:13px/1.6 var(--sans);background:0 0;border:0;justify-content:space-between;align-items:baseline;gap:16px;padding:7px 3px;display:flex}.guestbook-post-results button>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.guestbook-post-results button:hover{color:var(--accent-dark);background:var(--surface-hover)}.guestbook-post-results time{color:var(--text-faint);font-size:var(--font-size-xs);flex:none}.guestbook-field{gap:6px;display:grid}.guestbook-field+.guestbook-field,.guestbook-optional-fields+.guestbook-field{margin-top:14px}.guestbook-field label{width:fit-content;color:var(--text-subtle);font-size:var(--font-size-sm)}.guestbook-field input,.guestbook-field textarea{width:100%;color:var(--ink);background:var(--control-surface);border:1px solid var(--line);border-radius:var(--radius-small);font:14px/1.65 var(--sans);transition:background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);outline:0;padding:8px 10px}.guestbook-field textarea{resize:vertical;min-height:118px}.guestbook-field input:focus,.guestbook-field textarea:focus{background:var(--glass-hover);border-color:var(--accent-border);box-shadow:0 0 0 2px #6e9bc212}.guestbook-optional-fields{color:var(--text-faint);font-size:var(--font-size-sm);margin-top:11px}.guestbook-optional-fields summary{cursor:pointer;user-select:none;width:fit-content}.guestbook-optional-fields[open] summary{color:var(--text-subtle);margin-bottom:10px}.guestbook-optional-fields-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.guestbook-optional-fields-inner .guestbook-field+.guestbook-field{margin-top:0}.guestbook-form-footer{justify-content:space-between;align-items:center;gap:14px;min-height:32px;margin-top:13px;display:flex}.guestbook-form-status{color:var(--text-subtle);font-size:var(--font-size-sm);margin:0}.guestbook-submit{color:var(--accent-dark);background:var(--control-surface);border:1px solid var(--accent-border);border-radius:var(--radius-control);cursor:pointer;font:500 var(--font-size-ui)/1.5 var(--sans);transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard);flex:none;padding:6px 15px}.guestbook-submit:hover{color:var(--accent-dark);background:var(--control-active);border-color:var(--accent)}.guestbook-submit:active{transform:translateY(1px)}.guestbook-submit:disabled{opacity:.55;cursor:wait}.guestbook-messages-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:10px;display:flex}.guestbook-messages-header h2{color:var(--ink);font:500 20px/1.5 var(--serif);margin:0}.guestbook-messages-header span{color:var(--text-faint);font-size:var(--font-size-sm)}.guestbook-list-status{color:var(--muted);text-align:center;margin:24px 0 0}.guestbook-message-list{margin:0;padding:0;list-style:none}.guestbook-load-more{color:var(--text-subtle);background:var(--control-surface);border:1px solid var(--line);border-radius:var(--radius-pill);cursor:pointer;font:var(--font-size-sm)/1.5 var(--sans);margin:22px auto 0;padding:7px 18px;display:block}.guestbook-load-more[hidden]{display:none}.guestbook-load-more:hover{color:var(--accent-dark);border-color:var(--accent-border)}.guestbook-load-more:disabled{opacity:.55;cursor:wait}.guestbook-message{border-bottom:1px solid var(--list-line);content-visibility:auto;contain-intrinsic-size:auto 130px;padding:18px 2px}.guestbook-message-header{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.guestbook-message-author{color:var(--accent-dark);font:600 15px/1.5 var(--serif)}a.guestbook-message-author{text-decoration:underline;text-decoration-color:var(--accent-border);text-underline-offset:3px;text-decoration-thickness:1px}a.guestbook-message-author:hover{text-decoration-color:var(--accent)}a.guestbook-message-author:after{content:"↗";font-size:.8em;font-family:var(--sans);color:var(--text-faint);margin-left:2px}a.guestbook-message-author:hover:after{color:var(--accent)}.guestbook-message-time{color:var(--text-faint);font-size:var(--font-size-xs);flex:none}.guestbook-message-content{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0 0;line-height:1.85}.guestbook-message-reference{color:var(--text-faint);font-size:var(--font-size-sm);margin:8px 0 0}.guestbook-message-reference a{color:var(--text-subtle)}.guestbook-skeleton{flex-direction:column;gap:13px;display:flex}.guestbook-skeleton-bar{background:var(--surface-hover);border-radius:6.5px;height:13px;animation:1.8s ease-in-out infinite guestbook-skeleton-breathe}.guestbook-skeleton-bar:first-child{width:18%;min-width:88px;height:15px;margin-bottom:3px}.guestbook-skeleton-bar:nth-child(2){width:88%}.guestbook-skeleton-bar:nth-child(3){width:62%}.guestbook-skeleton:nth-child(2) .guestbook-skeleton-bar:nth-child(2){width:74%}.guestbook-skeleton:nth-child(2) .guestbook-skeleton-bar:nth-child(3){width:38%}.guestbook-skeleton:nth-child(3) .guestbook-skeleton-bar:nth-child(3){width:51%}@keyframes guestbook-skeleton-breathe{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.guestbook-skeleton-bar{animation:none}}.guestbook-sticky-side{min-width:0}@media (width<=959px){.guestbook-sticky-side{height:auto;max-height:none;display:block;position:static;overflow:visible}}@media (width>=960px){.guestbook-page{padding-top:24px;font-size:17px;overflow:visible}.guestbook-header{padding:0 0 18px}.guestbook-header .eyebrow{font-size:12px}.guestbook-app{margin-top:0;padding-top:0;overflow:visible}.guestbook-layout{--guestbook-sticky-width:400px;--guestbook-picker-width:0px;grid-template-columns:minmax(360px, var(--guestbook-sticky-width)) minmax(0, 1fr);align-items:start;gap:clamp(40px,4vw,56px);margin-top:0;padding-top:0;transition:grid-template-columns .26s;position:relative;overflow:visible}.guestbook-layout.is-picker-open{--guestbook-sticky-width:clamp(760px, 54vw, 900px);--guestbook-picker-width:clamp(360px, 28vw, 480px)}.guestbook-sticky-side{grid-template-columns:minmax(360px, 400px) var(--guestbook-picker-width);min-width:0;height:fit-content;max-height:none;top:calc(var(--header-height,72px) + 24px);align-self:start;transition:grid-template-columns .26s;display:grid;position:sticky;overflow:visible}.guestbook-rail{align-self:start;min-width:0;height:fit-content;max-height:none;position:relative;overflow:visible}.guestbook-header,.guestbook-compose,.guestbook-form{position:static;top:auto}.guestbook-compose{max-height:none;overflow:visible}.guestbook-form{box-shadow:none;background:0 0;border-block:0;padding:0 2px 18px}.guestbook-reference-tools{border-bottom:0;justify-content:center;margin:0 0 14px;padding-bottom:0}.guestbook-reference{justify-content:center;width:100%;font-size:13px}.guestbook-picker-drawer{min-width:0;height:auto;max-height:calc(100vh - var(--header-height,72px) - 48px);border-inline:1px solid color-mix(in srgb, var(--line) 42%, transparent);box-shadow:none;background:0 0;border-radius:0;align-self:start;position:static;overflow:hidden}.guestbook-picker-handle{z-index:20;writing-mode:vertical-rl;text-orientation:mixed;width:34px;max-height:280px;color:var(--text-subtle);background:color-mix(in srgb, var(--control-surface) 92%, transparent);border:1px solid var(--line);border-radius:var(--radius-pill);font:14px/1.4 var(--sans);letter-spacing:.04em;opacity:1;transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);justify-content:center;align-items:center;margin:0;padding:18px 8px;display:inline-flex;position:absolute;top:50%;right:0;translate:50% -50%}.guestbook-picker-handle:hover,.guestbook-picker-handle[aria-expanded=true]{color:var(--accent-dark);background:var(--control-active);border-color:var(--accent-border)}.guestbook-picker-panel{width:100%;height:auto;max-height:inherit;opacity:0;pointer-events:none;background:color-mix(in srgb, var(--control-surface) 18%, transparent);min-width:0;min-height:0;box-shadow:none;border:0;border-radius:0;flex-direction:column;margin:0;padding:10px clamp(24px,2.5vw,36px) 14px;transition:opacity .2s,transform .24s;display:flex;overflow:hidden;transform:translate(-8px)}.guestbook-layout.is-picker-open .guestbook-picker-panel{opacity:1;pointer-events:auto;transform:translate(0)}.guestbook-picker-panel>label,.guestbook-picker-panel>input,.guestbook-picker-panel>.guestbook-post-picker-status{flex:none}.guestbook-post-picker label{font-size:12px}.guestbook-post-picker input,.guestbook-post-results button{font-size:14px}.guestbook-post-picker-status{font-size:13px}.guestbook-post-results{--guestbook-post-row-height:52px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-faint) 28%, transparent) transparent;flex:auto;min-height:0;max-height:min(520px,62vh);padding-right:6px;overflow-y:auto}.guestbook-post-results time{font-size:12px}.guestbook-post-results::-webkit-scrollbar{width:6px}.guestbook-post-results::-webkit-scrollbar-track{background:0 0}.guestbook-post-results::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text-faint) 28%, transparent);border-radius:var(--radius-pill)}.guestbook-post-results::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--accent) 42%, transparent)}.guestbook-field label,.guestbook-optional-fields,.guestbook-form-status{font-size:13px}.guestbook-field input,.guestbook-field textarea{font-size:15px}.guestbook-submit{font-size:14px}.guestbook-thread{align-self:start;min-width:0;margin-top:0;padding:0}.guestbook-thread>:first-child{margin-top:0}.guestbook-messages-header h2{font-size:21px}.guestbook-messages-header span{font-size:13px}.guestbook-message{border-color:color-mix(in srgb, var(--list-line) 70%, transparent);padding-block:20px}.guestbook-message-author{font-size:16px}.guestbook-message-time{font-size:12px}.guestbook-message-content{font-size:17px}.guestbook-message-reference{font-size:13px}}.article-views{font-variant-numeric:tabular-nums}.post-actions{align-items:stretch;gap:14px;width:100%;margin-top:40px;display:flex}.post-engagement{flex:none;display:flex}.reaction-button{min-width:108px;color:var(--text-subtle);background:var(--control-surface);border:1px solid var(--line);border-radius:var(--radius-medium);font:500 var(--font-size-ui)/1 var(--sans);cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:7px;padding:16px 22px;transition:color .2s ease-out,border-color .2s ease-out,background-color .2s ease-out,transform .2s ease-out;display:inline-flex}.reaction-button svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px;transition:fill .2s ease-out;display:block}.reaction-button:hover:not(:disabled){color:var(--accent-dark);border-color:var(--accent-border);background:var(--control-active)}.reaction-button:focus-visible{outline:1px solid var(--accent-border);outline-offset:3px;box-shadow:0 0 0 3px var(--accent-soft)}.reaction-button.is-active{color:var(--accent-dark);border-color:var(--accent-border);background:var(--accent-soft)}.reaction-button.is-active svg{fill:currentColor}.reaction-button:disabled{cursor:default}.reaction-count{font-variant-numeric:tabular-nums}.post-subscribe{border-top:1px solid var(--list-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;width:100%;margin-top:38px;padding:22px 0 0;display:flex}.post-subscribe-copy{flex-direction:column;min-width:0;display:flex}.post-subscribe-copy strong{color:var(--ink);font:500 16px/1.55 var(--serif)}.post-subscribe-copy>span{color:var(--muted);font-size:var(--font-size-ui);margin-top:4px;line-height:1.6}.post-subscribe-links{flex-wrap:wrap;gap:8px;display:inline-flex}.subscribe-link{color:var(--accent-dark);background:var(--accent-soft);border-radius:var(--radius-pill);font-size:var(--font-size-ui);align-items:center;gap:6px;padding:8px 14px;line-height:1;transition:color .2s ease-out,background-color .2s ease-out;display:inline-flex}.subscribe-link svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:15px;height:15px;display:block}.subscribe-link:hover{color:var(--on-accent);background:var(--accent)}.subscribe-link:focus-visible{outline:1px solid var(--accent-border);outline-offset:3px;box-shadow:0 0 0 3px var(--accent-soft)}.post-discussion{flex:auto;min-width:0}.post-discussion-link{height:100%;color:inherit;background:var(--control-surface);border:1px solid var(--line);border-radius:var(--radius-medium);grid-template-columns:minmax(0,1fr) auto;align-items:center;transition:background-color .2s ease-out,border-color .2s ease-out,transform .2s ease-out,color .2s ease-out;display:grid}.post-discussion-link:hover{color:inherit;background:var(--control-active);border-color:var(--accent-border)}.post-discussion-link:focus-visible{outline:1px solid var(--accent-border);outline-offset:3px;box-shadow:0 0 0 3px var(--accent-soft)}.post-discussion-copy{flex-direction:column;justify-content:center;min-width:0;padding:17px 22px;display:flex}.post-discussion-copy strong{color:var(--ink);font:500 16px/1.55 var(--serif)}.post-discussion-copy>span{color:var(--muted);font-size:var(--font-size-ui);margin-top:5px;line-height:1.7}.post-discussion-action{width:fit-content;color:var(--text-subtle);font-size:var(--font-size-ui);justify-self:end;align-items:center;gap:7px;margin-right:20px;padding:7px 10px;line-height:1;transition:transform .2s ease-out,color .2s ease-out;display:inline-flex}.post-discussion-action svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px;display:block}.post-discussion-action>span{align-items:center;display:inline-flex}.post-discussion-link:hover .post-discussion-action{color:var(--accent-dark)}@media (width<=959px){.guestbook-layout{grid-template-columns:minmax(0,1fr);align-items:start}.guestbook-rail{max-height:none;position:static;overflow:visible}.guestbook-picker-drawer{display:block}.guestbook-compose{max-height:none;box-shadow:none;background:0 0;border:0;position:static;overflow:visible}.guestbook-header{box-shadow:none;border:0}.guestbook-form{box-shadow:none;background:0 0;border-block:0;padding:0 2px 18px}.guestbook-reference-tools{border-bottom:0;justify-content:center;margin:0 0 16px;padding-bottom:0}.guestbook-reference{justify-content:center;width:100%}.guestbook-picker-handle{writing-mode:horizontal-tb;width:fit-content;max-width:100%;color:var(--text-subtle);background:color-mix(in srgb, var(--control-surface) 55%, transparent);border:1px solid color-mix(in srgb, var(--line) 70%, transparent);border-radius:var(--radius-pill);text-align:center;margin:0 auto 16px;padding:8px 18px;font-size:14px;display:flex}.guestbook-post-picker{background:color-mix(in srgb, var(--control-surface) 45%, transparent);border:1px solid color-mix(in srgb, var(--list-line) 60%, transparent);border-radius:var(--radius-medium);width:100%;box-shadow:none;margin:-2px 0 16px;padding:12px}.guestbook-post-results{--guestbook-post-row-height:56px;max-height:calc(var(--guestbook-post-row-height) * 2.5);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-faint) 35%, transparent) transparent;overflow-y:auto}.guestbook-post-results li+li{border-color:color-mix(in srgb, var(--list-line) 55%, transparent)}.guestbook-post-results::-webkit-scrollbar{width:5px}.guestbook-post-results::-webkit-scrollbar-track{background:0 0}.guestbook-post-results::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text-faint) 30%, transparent);border-radius:var(--radius-pill)}.guestbook-post-picker input,.guestbook-field input,.guestbook-field textarea{background:color-mix(in srgb, var(--control-surface) 65%, transparent);border-color:color-mix(in srgb, var(--line) 70%, transparent)}}@media (width<=768px){.guestbook-layout{gap:28px}.guestbook-form{padding:0 2px 18px}.guestbook-post-picker-toggle{width:fit-content;margin-inline:auto}.guestbook-post-results button{flex-direction:column;align-items:flex-start;gap:1px}.guestbook-optional-fields-inner{grid-template-columns:1fr}.guestbook-form-footer{align-items:flex-end}.guestbook-message{padding:17px 0}.guestbook-message-header{flex-direction:column;align-items:flex-start;gap:3px}.post-actions{flex-direction:column;gap:12px;margin-top:30px}.reaction-button{flex-direction:row;min-width:0;padding:13px 20px}.reaction-button svg{width:18px;height:18px}.post-discussion-link{text-align:left;grid-template-columns:1fr}.post-discussion-copy{padding:16px 17px 10px}.post-discussion-action{justify-self:start;margin:0 17px 15px}}.nav-menu-bar{transform-box:fill-box;transform-origin:50%;transition:transform var(--duration-fast) var(--ease-emphasized), opacity var(--duration-fast) var(--ease-standard)}.sidebar-toggle[aria-expanded=true] .nav-menu-bar-top{transform:translateY(5px)rotate(45deg)}.sidebar-toggle[aria-expanded=true] .nav-menu-bar-mid{opacity:0}.sidebar-toggle[aria-expanded=true] .nav-menu-bar-bottom{transform:translateY(-5px)rotate(-45deg)}:where(.text-link,.read-more,.post-card h2 a,.article-category a,.article-toc a,.article-toc-desktop a,.footer-copyright a){display:inline-block}@media (hover:hover) and (prefers-reduced-motion:no-preference){.header-action,.header-tools [data-header-search-toggle],.header-search-clear,.header-search-submit,.site-brand,.soft-button,.subscribe-link,.reaction-button,.pagination a,.term-cloud a,.category-filter button,.tag-filter-list button,.archive-view-switch button,.guestbook-submit,.guestbook-load-more,.guestbook-reference button,.guestbook-picker-handle,.text-link,.read-more,.home-recent-list a:not(.home-recent-category),.home-recent-category,.post-card h2 a,.article-category a,.article-meta-tag,.article-toc a,.article-toc-desktop a,.archive-card-tags button,.archive-timeline-meta button,.post-navigation a,.tag-filter summary,.footer-copyright a{transition:color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard), transform .24s var(--ease-emphasized)}:is(.header-action,.header-search-clear,.header-search-submit,.guestbook-reference button):hover{transform:scale(1.08)}:is(.site-brand,.soft-button,.subscribe-link,.pagination a,.term-cloud a,.category-filter button,.tag-filter-list button,.archive-view-switch button,.guestbook-picker-handle):hover,:is(.guestbook-submit,.guestbook-load-more,.reaction-button):hover:not(:disabled){transform:scale(1.04)}:is(.text-link,.read-more,.home-recent-category,.article-category a,.article-meta-tag,.archive-card-tags button,.archive-timeline-meta button,.article-toc a,.article-toc-desktop a,.tag-filter summary,.footer-copyright a):hover{transform:scale(1.06)}.home-recent-list a:not(.home-recent-category),.post-card h2 a,.post-navigation-previous{transform-origin:0}.post-navigation-next{transform-origin:100%}:is(.home-recent-list a:not(.home-recent-category),.post-card h2 a,.post-navigation-previous,.post-navigation-next):hover{transform:scale(1.02)}.archive-card:hover,.post-discussion-link:hover{transform:scale(1.01)}}