.prose pre:is(.astro-code,.shiki){background-color:var(--code-content-bg)!important}.prose pre:is(.astro-code,.shiki) span{background-color:#0000!important}.prose pre:is(.astro-code,.shiki) span[style*=--shiki-light]{color:var(--shiki-light)!important}:root[data-theme=dark] .prose pre:is(.astro-code,.shiki) span[style*=--shiki-dark]{color:var(--shiki-dark)!important}:root[data-theme=dark] .prose pre:is(.astro-code,.shiki){color:var(--shiki-dark,var(--text))!important}.prose .code-block{border:1px solid var(--code-border);background:var(--code-content-bg);border-radius:8px;margin:1.5em 0;position:relative;overflow:hidden}.prose .code-block pre{background:var(--code-content-bg);border:none;border-radius:0;margin:0}.prose pre:is(.astro-code,.shiki){counter-reset:line;--ln-width:2.5ch;--ln-gap:3ch;--code-pad-x:16px}.prose pre:is(.astro-code,.shiki):has(.line){padding-left:0}.prose pre:is(.astro-code,.shiki) .line{vertical-align:top;width:100%;padding-left:var(--code-pad-x);display:inline-block;position:relative}.prose pre:is(.astro-code,.shiki) .line:before{counter-increment:line;content:counter(line);width:var(--ln-width);min-width:var(--ln-width);text-align:right;margin-right:var(--ln-gap);box-sizing:border-box;line-height:inherit;color:var(--muted);opacity:.7;font-variant-numeric:tabular-nums;user-select:none;pointer-events:none;font-size:.85em;display:inline-block;position:static}body[data-code-line-numbers=off] .prose pre:is(.astro-code,.shiki) .line:before{content:none}body[data-code-line-numbers=off] .prose pre:is(.astro-code,.shiki) .line{padding-left:0}@supports (color:color-mix(in oklab, black, white)){.prose pre:is(.astro-code,.shiki) .line:before{color:color-mix(in oklab, var(--muted) 70%, var(--code-content-bg));opacity:1}}.prose .code-block .code-toolbar{background:var(--code-header-bg);border-bottom:1px solid var(--code-border);height:38px;font-family:var(--font-mono);color:var(--muted);justify-content:space-between;align-items:center;padding:0 16px;font-size:13px;display:flex}.prose .code-block .code-lang{text-transform:uppercase;letter-spacing:.02em;color:var(--code-text);align-items:center;gap:8px;font-weight:600;display:inline-flex}.prose .code-block .code-meta{align-items:center;gap:8px;display:flex}.prose .code-block .code-info{color:var(--meta)}.prose .code-block .code-separator{color:var(--faint);user-select:none}.prose .code-block .code-copy{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:color .2s,background-color .2s;display:inline-flex}.prose .code-block .code-copy:disabled{cursor:default;opacity:.6}.prose .code-block .code-copy:hover:not(:disabled){color:var(--text);background:var(--code-action-hover-bg)}.prose .code-block .code-copy:focus-visible{outline-offset:2px;outline:2px solid}.prose .code-block .code-copy svg{width:14px;height:14px;display:block}.prose .code-block .code-copy .icon-check,.prose .code-block .code-copy[data-state=copied] .icon-copy{display:none}.prose .code-block .code-copy[data-state=copied] .icon-check{display:block}.prose .code-block .code-lang-icon{width:16px;height:16px;color:var(--muted);opacity:.8;flex:none;transition:color .2s,opacity .2s,filter .2s;display:inline-block}.prose .code-block .code-lang-icon.is-colored{color:inherit;filter:grayscale();opacity:.65}.prose .code-block .code-toolbar:hover .code-lang-icon:not(.is-colored){color:var(--code-text);opacity:1}.prose .code-block .code-toolbar:hover .code-lang-icon.is-colored{filter:grayscale(0%);opacity:1}@media (width<=640px){.prose .code-block .code-toolbar{flex-wrap:wrap;row-gap:6px;height:auto;padding:8px 12px}.prose .code-block .code-lang{font-size:12px}.prose .code-block .code-meta{margin-left:auto}.prose .code-block .code-info,.prose .code-block .code-separator{display:none}}@media (prefers-reduced-motion:reduce){.prose .code-block .code-lang-icon{transition:none}}.lightbox{width:100vw;height:100vh;color:var(--lightbox-text);--lb-backdrop:var(--overlay-85);background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;display:none;position:fixed;inset:0;overflow:hidden}.lightbox[open]{display:flex}@media (prefers-reduced-motion:no-preference){.lightbox[open],.lightbox[open]::backdrop{animation:.26s ease-out lightbox-fade-in}.lightbox[open] .lightbox-figure{animation:.3s ease-out lightbox-figure-in}.lightbox.is-closing{animation:.18s ease-in forwards lightbox-fade-out;display:flex}.lightbox.is-closing::backdrop{animation:.18s ease-in forwards lightbox-fade-out}}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}@keyframes lightbox-fade-out{0%{opacity:1}to{opacity:0}}@keyframes lightbox-figure-in{0%{opacity:0;transform:scale(.965)}to{opacity:1;transform:scale(1)}}.lightbox::backdrop{background:var(--lb-backdrop)}@supports (backdrop-filter:blur(1px)){.lightbox::backdrop{-webkit-backdrop-filter:blur(var(--blur-lg))}}.lightbox-close{background:var(--overlay-60);color:var(--lightbox-text);cursor:pointer;z-index:3;border:1px solid #ffffff52;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;font-size:22px;line-height:1;transition:background .15s,transform .15s;display:inline-flex;position:fixed;top:20px;right:20px}.lightbox-close:hover{background:var(--overlay-85);transform:scale(1.06)}.lightbox-close:focus-visible,.lightbox-nav:focus-visible{outline:2px solid var(--lightbox-text);outline-offset:2px}.lightbox-navs{pointer-events:none;z-index:2;background:0 0;justify-content:space-between;align-items:center;padding:0;display:flex;position:fixed;top:50%;left:24px;right:24px;transform:translateY(-50%)}.lightbox-nav{border:1px solid var(--lightbox-border);background:var(--overlay-45);width:36px;height:36px;color:var(--lightbox-text);cursor:pointer;pointer-events:auto;border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:20px;line-height:1;transition:background .15s,transform .15s;display:inline-flex}.lightbox-nav[disabled]{opacity:.2;cursor:default}.lightbox-nav[disabled]:hover,.lightbox-nav[disabled]:focus-visible{background:var(--overlay-45)}.lightbox-nav:hover:not([disabled]),.lightbox-nav:focus-visible:not([disabled]){background:var(--overlay-60);transform:scale(1.04)}.lightbox-figure{flex-direction:column;justify-content:center;align-items:center;gap:8px;margin:0;display:flex}.lightbox-figure img{background:0 0;border:0;border-radius:0;width:auto;max-width:90vw;height:auto;max-height:90vh}.lightbox[data-enable-zoom=true] [data-lightbox-image]{touch-action:none}.lightbox[data-enable-zoom=false] [data-lightbox-image]{touch-action:pan-y}.lightbox-meta{color:var(--lightbox-text);text-align:center;font-size:12px;font-family:var(--font-copy);justify-items:center;gap:6px;display:grid;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.lightbox-caption{max-width:min(72vw,720px);color:var(--lightbox-text);letter-spacing:.02em}.lightbox-meta-row{align-items:center;gap:10px;display:inline-flex}.lightbox-dots{align-items:center;gap:6px;display:none}.lightbox-dot{background:var(--lightbox-dot-muted);border-radius:999px;width:6px;height:6px}.lightbox-dot.is-active{background:var(--lightbox-text)}.prose img[data-lightbox]{cursor:zoom-in;transition:opacity .18s}.prose [data-lightbox-trigger=true]{cursor:zoom-in}.prose a[data-lightbox-trigger=true]{display:inline-block}.prose img[data-lightbox]:hover{opacity:.92}.prose [data-lightbox-trigger=true]:focus-visible{outline:2px solid var(--text);outline-offset:4px}.prose [data-lightbox-trigger=true]:focus-visible img{opacity:.92}@media (width<=640px){.lightbox::backdrop{-webkit-backdrop-filter:none}.lightbox[data-mobile-nav=hidden] .lightbox-navs{display:none}.lightbox[data-mobile-nav=bottom] .lightbox-navs{justify-content:center;gap:16px;inset:auto 0 64px;transform:none}.lightbox[data-mobile-nav=bottom] .lightbox-nav{width:38px;height:38px}.lightbox{--lb-backdrop:var(--overlay-85);background:0 0;border:0;border-radius:0;width:100vw;height:100vh;padding:0}.lightbox-close{background:var(--overlay-60);width:40px;height:40px;color:var(--lightbox-text);border-color:#ffffff52;font-size:20px;position:absolute;top:12px;right:12px}.lightbox-figure{justify-content:center;align-items:center;height:100%;margin:0}.lightbox-figure img{object-fit:contain;background:0 0;border:0;border-radius:0;width:100vw;height:auto;max-height:100vh}.lightbox-meta{color:var(--lightbox-text);justify-items:center;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.lightbox[data-mobile-count=hidden] .lightbox-count{display:none}.lightbox[data-mobile-count=hidden] .lightbox-dots{display:inline-flex}}@media (prefers-reduced-transparency:reduce){.lightbox{--lb-backdrop:var(--overlay-90)}.lightbox::backdrop{-webkit-backdrop-filter:none}}.page-header.page-header--about{align-items:flex-end}.page-header.page-header--about .page-actions{align-self:flex-end;gap:6px;margin-left:6px;margin-right:0;transform:translateY(2px)}.page-header.page-header--about .icon-link .icon{width:18px;height:18px}.about-body{font-family:var(--font-copy);margin:30px 0 0;font-size:16px;line-height:1.7}.about-body p:has(>img){text-align:center}.about-body p:has(>img)>img{max-width:60%;margin:0 auto;display:block}@media (width<=900px){.about-body p:has(>img)>img{max-width:78%}}@media (width<=640px){.about-body p:has(>img)>img{max-width:100%}}.about-body p:has(>img)+p{text-align:center;color:var(--meta);margin:6px 0 0;font-size:13px}.about-body>:first-child{margin-top:0}.about-body>:last-child{margin-bottom:0}.about-body p,.about-body ul,.about-body ol{margin:12px 0}.about-body .code-block pre{font-size:15px}.about-body .code-block pre code{font-size:.92em}.about-body h2,.about-body h3{font-family:var(--font-readable);margin:38px 0 10px}.about-body h2{font-size:18px}.about-body h3{font-size:16px}.about-section{margin-top:34px}.about-section-title{margin-top:0}.friend-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 0;padding:0;list-style:none;display:grid}.friend-card{border:1px solid var(--border);background:var(--code-content-bg);min-height:84px;color:var(--text);border-radius:8px;align-items:center;gap:14px;padding:12px;transition:background .2s,border-color .2s;display:flex}.friend-card:hover,:root[data-theme=dark] .friend-card:hover{background:var(--panel);border-color:var(--border)}.friend-card__avatar{border:1px solid var(--border);background:var(--panel);width:56px;height:56px;color:var(--muted);font-family:var(--font-copy);border-radius:50%;flex:0 0 56px;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.friend-card__avatar img{object-fit:cover;width:100%;height:100%;display:block}.friend-card__avatar--image .friend-card__avatar-text{display:none}.friend-card__body{gap:4px;min-width:0;display:grid}.friend-card__name{font-size:16px;font-weight:600;line-height:1.35;font-family:var(--font-readable)}.friend-card__description{color:var(--muted);font-size:14px;line-height:1.6;font-family:var(--font-copy)}.about-site-info{border:1px solid var(--border);background:var(--code-content-bg);border-radius:8px;margin:16px 0;padding:12px 44px 12px 12px;position:relative}.about-site-info__copy{border:1px solid var(--border);background:var(--panel);width:30px;height:30px;color:var(--muted);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:background .2s,border-color .2s,color .2s;display:inline-flex;position:absolute;top:8px;right:8px}.about-site-info__copy-icon{width:15px;height:15px}.about-site-info__check-icon{width:15px;height:15px;display:none}.about-site-info__copy:disabled{cursor:default;opacity:.62}.about-site-info__copy:hover:not(:disabled){border-color:var(--border);background:var(--panel);color:var(--text)}.about-site-info__copy:focus-visible{outline-offset:2px;outline:2px solid}.about-site-info__copy[data-state=copied]{border-color:var(--border);background:var(--panel);color:var(--text)}.about-site-info__copy[data-state=copied] .about-site-info__copy-icon{display:none}.about-site-info__copy[data-state=copied] .about-site-info__check-icon{display:block}:root[data-theme=dark] .about-site-info__copy:hover:not(:disabled),:root[data-theme=dark] .about-site-info__copy[data-state=copied]{border-color:var(--border);background:var(--panel)}.about-site-info__fields{gap:7px;margin:0;display:grid}.about-site-info__field{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:10px;min-width:0;display:grid}.about-site-info__field-label,.about-site-info__field-value{margin:0}.about-site-info__field-label{color:var(--meta);font-size:13px;line-height:1.6}.about-site-info__field-value{min-width:0;color:var(--muted);font-size:14px;line-height:1.6;font-family:var(--font-copy);overflow-wrap:anywhere}.about-site-info__field-value a{color:var(--text);text-underline-offset:3px;text-decoration-thickness:1px}.qa-list{gap:18px;margin-top:12px;display:grid}.qa-item{padding:0}.qa-item>summary{cursor:pointer;list-style:none}.qa-item>summary::-webkit-details-marker{display:none}.qa-question{color:var(--text);font-size:16px;font-weight:400;line-height:1.75;font-family:var(--font-copy);align-items:center;gap:10px;margin:0;display:flex}.qa-icon{border:1px solid var(--border);width:22px;height:22px;color:var(--muted);border-radius:4px;flex:0 0 22px;justify-content:center;align-items:center;font-size:12px;line-height:1;display:inline-flex}.qa-answer{color:var(--muted);font-size:16px;line-height:1.75;font-family:var(--font-copy);grid-template-columns:22px minmax(0,1fr);align-items:start;column-gap:10px;margin:12px 0 0;display:grid}.qa-answer:before{content:"A";border:1px solid var(--border);background:var(--panel);width:22px;height:22px;color:var(--muted);border-radius:4px;justify-content:center;align-items:center;margin-top:3px;font-size:12px;line-height:1;display:inline-flex}:root[data-theme=dark] .qa-answer:before{background:var(--panel)}.qa-answer>*{grid-column:2}.qa-answer>:first-child{margin-top:0}.qa-answer>:last-child{margin-bottom:0}.contact-block{margin-top:12px}.contact-list{flex-wrap:wrap;gap:10px 34px;margin:0;padding:0;list-style:none;display:flex}.contact-list li{color:var(--text);font-size:16px;line-height:1.75;font-family:var(--font-copy);flex-wrap:nowrap;align-items:center;gap:6px;display:inline-flex}.contact-link-head{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.contact-icon{width:16px;height:16px;display:block}@media (width<=900px){.page-header.page-header--about{flex-flow:wrap;justify-content:flex-start;align-items:flex-end}.page-header.page-header--about .page-actions{align-self:flex-end;margin-left:6px;margin-right:0;transform:none}.friend-list{grid-template-columns:1fr}}.site-stats{border-top:1px solid var(--border);margin-top:40px;padding-top:28px}.site-stats__title{font-size:16px;font-weight:600;font-family:var(--font-readable);color:var(--text);margin:0 0 18px}.site-stats__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;display:grid}.site-stats__item{border:1px solid var(--border);background:var(--code-content-bg);border-radius:8px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.site-stats__label{color:var(--meta);font-size:13px;font-family:var(--font-copy);margin:0}.site-stats__value{color:var(--text);font-size:22px;font-weight:600;font-family:var(--font-readable);margin:0;line-height:1.2}.site-stats__meta{color:var(--meta);font-size:13px;font-family:var(--font-copy);margin:16px 0 0}@media (width<=640px){.site-stats__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-stats__value{font-size:18px}}
