.project-card[data-astro-cid-mspuyifq]{position:relative;display:flex;gap:22px;padding:4px 0}.card-spine[data-astro-cid-mspuyifq]{flex:0 0 2px;background:var(--card-status, var(--accent));border-radius:1px;opacity:.85}.project-card[data-astro-cid-mspuyifq][data-status=in-progress]{--card-status: var(--accent)}.project-card[data-astro-cid-mspuyifq][data-status=done]{--card-status: color-mix(in srgb, var(--ink-mute) 55%, transparent)}.project-card[data-astro-cid-mspuyifq][data-status=wished]{--card-status: var(--gold)}.card-body[data-astro-cid-mspuyifq]{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}.card-head[data-astro-cid-mspuyifq]{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.card-title[data-astro-cid-mspuyifq]{font-family:var(--font-serif-zh);font-size:18px;font-weight:600;line-height:1.35;color:var(--ink);letter-spacing:-.005em;margin:0;flex:1;min-width:0}.card-name[data-astro-cid-mspuyifq]{color:var(--ink)}.card-sub[data-astro-cid-mspuyifq]{font-weight:400;font-style:italic;color:var(--ink-soft);font-size:14.5px}.card-time[data-astro-cid-mspuyifq]{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;color:var(--ink-mute);white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums lining-nums}.card-tagline[data-astro-cid-mspuyifq]{font-family:var(--font-serif-zh);font-size:14.5px;line-height:1.75;color:var(--ink-soft);margin:0}.card-foot[data-astro-cid-mspuyifq]{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:auto;padding-top:6px}.card-tags[data-astro-cid-mspuyifq]{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:baseline}.card-tags[data-astro-cid-mspuyifq] li[data-astro-cid-mspuyifq]{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);letter-spacing:.06em;text-transform:uppercase;padding-right:12px;margin-right:12px;border-right:1px solid var(--rule);line-height:1.4}.card-tags[data-astro-cid-mspuyifq] li[data-astro-cid-mspuyifq]:last-child{border-right:none;padding-right:0;margin-right:0}.card-links[data-astro-cid-mspuyifq]{list-style:none;margin:0 0 0 auto;padding:0;display:flex;gap:18px}.card-links[data-astro-cid-mspuyifq] a[data-astro-cid-mspuyifq]{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-serif-zh);font-size:13px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:2px;transition:color .2s ease,border-color .2s ease}.card-links[data-astro-cid-mspuyifq] a[data-astro-cid-mspuyifq]:hover{color:var(--accent);border-bottom-color:var(--accent)}.card-links[data-astro-cid-mspuyifq] svg[data-astro-cid-mspuyifq]{opacity:.55;transition:opacity .2s ease,transform .2s ease}.card-links[data-astro-cid-mspuyifq] a[data-astro-cid-mspuyifq]:hover svg[data-astro-cid-mspuyifq]{opacity:1;transform:translate(1px,-1px)}@media(max-width:640px){.project-card[data-astro-cid-mspuyifq]{gap:16px}.card-body[data-astro-cid-mspuyifq]{gap:10px}.card-head[data-astro-cid-mspuyifq]{flex-direction:column;align-items:flex-start;gap:6px}.card-time[data-astro-cid-mspuyifq]{order:-1;font-size:11px}.card-title[data-astro-cid-mspuyifq]{font-size:18px}.card-sub[data-astro-cid-mspuyifq]{font-size:14px}.card-tagline[data-astro-cid-mspuyifq]{font-size:14.5px}.card-foot[data-astro-cid-mspuyifq]{gap:14px}.card-links[data-astro-cid-mspuyifq]{margin-left:0}.card-tags[data-astro-cid-mspuyifq] li[data-astro-cid-mspuyifq]{font-size:10px;padding-right:8px;margin-right:8px}}.projects-hero[data-astro-cid-2hwget37]{padding:88px 24px 56px;background:radial-gradient(ellipse at top,rgba(122,31,26,.03) 0%,transparent 60%),var(--paper)}.hero-inner[data-astro-cid-2hwget37]{max-width:600px;margin:0 auto;text-align:center}.hero-eyebrow[data-astro-cid-2hwget37]{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.22em;color:var(--gold);text-transform:uppercase;margin:0 0 24px}.hero-title[data-astro-cid-2hwget37]{font-family:var(--font-serif-zh);font-size:44px;font-weight:600;color:var(--ink);letter-spacing:-.01em;margin:0 0 24px;line-height:1.2}.hero-rule[data-astro-cid-2hwget37]{width:60px;height:1px;background:var(--rule);margin:0 auto 24px}.hero-body[data-astro-cid-2hwget37]{font-family:var(--font-serif-zh);font-size:16px;line-height:1.85;color:var(--ink-soft);margin:0 0 32px}.hero-marks[data-astro-cid-2hwget37]{display:flex;justify-content:center;gap:8px}.hero-marks[data-astro-cid-2hwget37] span[data-astro-cid-2hwget37]{width:6px;height:6px;border-radius:50%;background:var(--ink-faint)}.hero-marks[data-astro-cid-2hwget37] span[data-astro-cid-2hwget37]:nth-child(2){background:var(--ink-mute)}.filter-bar[data-astro-cid-2hwget37]{padding:0 24px;position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.filter-inner[data-astro-cid-2hwget37]{max-width:720px;margin:0 auto;display:flex;justify-content:center;gap:28px;padding:18px 0 16px;border-bottom:1px solid var(--rule)}.filter-tab[data-astro-cid-2hwget37]{appearance:none;background:none;border:0;padding:6px 2px;margin:0;cursor:pointer;font-family:var(--font-serif-zh);color:var(--ink-mute);display:inline-flex;align-items:baseline;gap:6px;position:relative;transition:color .22s ease;line-height:1.3}.filter-tab[data-astro-cid-2hwget37]:hover{color:var(--ink)}.filter-tab[data-astro-cid-2hwget37]:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 40%,transparent);outline-offset:4px;border-radius:2px}.tab-label[data-astro-cid-2hwget37]{font-size:15px;font-weight:500;letter-spacing:-.005em}.tab-count[data-astro-cid-2hwget37]{font-family:var(--font-mono);font-size:11px;color:var(--ink-faint);font-variant-numeric:tabular-nums lining-nums;transition:color .22s ease}.filter-tab[data-astro-cid-2hwget37][data-filter=all],.filter-tab[data-astro-cid-2hwget37][data-filter=in-progress]{--tab-active: var(--accent)}.filter-tab[data-astro-cid-2hwget37][data-filter=done]{--tab-active: color-mix(in srgb, var(--ink-mute) 75%, transparent)}.filter-tab[data-astro-cid-2hwget37][data-filter=wished]{--tab-active: var(--gold)}.filter-tab[data-astro-cid-2hwget37][aria-pressed=true]{color:var(--ink)}.filter-tab[data-astro-cid-2hwget37][aria-pressed=true] .tab-count[data-astro-cid-2hwget37]{color:var(--ink-mute)}.filter-tab[data-astro-cid-2hwget37][aria-pressed=true]:after{content:"";position:absolute;left:0;right:0;bottom:-17px;height:1.5px;background:var(--tab-active);border-radius:1px}.projects-feed[data-astro-cid-2hwget37]{padding:24px 24px 120px;background:var(--paper)}.feed-inner[data-astro-cid-2hwget37]{max-width:960px;margin:0 auto}.projects-feed[data-astro-cid-2hwget37][data-active-filter=in-progress] .project-section[data-astro-cid-2hwget37][data-status=done],.projects-feed[data-astro-cid-2hwget37][data-active-filter=in-progress] .project-section[data-astro-cid-2hwget37][data-status=wished],.projects-feed[data-astro-cid-2hwget37][data-active-filter=done] .project-section[data-astro-cid-2hwget37][data-status=in-progress],.projects-feed[data-astro-cid-2hwget37][data-active-filter=done] .project-section[data-astro-cid-2hwget37][data-status=wished],.projects-feed[data-astro-cid-2hwget37][data-active-filter=wished] .project-section[data-astro-cid-2hwget37][data-status=in-progress],.projects-feed[data-astro-cid-2hwget37][data-active-filter=wished] .project-section[data-astro-cid-2hwget37][data-status=done]{display:none}.projects-feed[data-astro-cid-2hwget37]:not([data-active-filter=all]) .project-section[data-astro-cid-2hwget37]{margin-top:24px}.feed-empty[data-astro-cid-2hwget37]{font-family:var(--font-serif-zh);font-size:15px;color:var(--ink-mute);text-align:center;margin:80px 0;font-style:italic}.project-section[data-astro-cid-2hwget37]{margin-top:64px}.project-section[data-astro-cid-2hwget37]:first-child{margin-top:24px}.section-head[data-astro-cid-2hwget37]{display:flex;align-items:baseline;gap:16px;margin-bottom:32px;padding-bottom:14px;border-bottom:1px solid var(--rule)}.section-eyebrow[data-astro-cid-2hwget37]{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;margin:0}.section-head[data-astro-cid-2hwget37][data-status=in-progress] .section-eyebrow[data-astro-cid-2hwget37]{color:var(--accent)}.section-head[data-astro-cid-2hwget37][data-status=done] .section-eyebrow[data-astro-cid-2hwget37]{color:var(--ink-mute)}.section-head[data-astro-cid-2hwget37][data-status=wished] .section-eyebrow[data-astro-cid-2hwget37]{color:var(--gold)}.section-title[data-astro-cid-2hwget37]{font-family:var(--font-serif-zh);font-size:22px;font-weight:600;color:var(--ink);margin:0;letter-spacing:-.005em}.section-count[data-astro-cid-2hwget37]{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-mute);margin-left:auto;font-variant-numeric:tabular-nums lining-nums}.project-list[data-astro-cid-2hwget37]{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:36px 28px}@media(min-width:880px){.project-list[data-astro-cid-2hwget37]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:no-preference){.projects-hero[data-astro-cid-2hwget37] .hero-eyebrow[data-astro-cid-2hwget37],.projects-hero[data-astro-cid-2hwget37] .hero-title[data-astro-cid-2hwget37],.projects-hero[data-astro-cid-2hwget37] .hero-rule[data-astro-cid-2hwget37],.projects-hero[data-astro-cid-2hwget37] .hero-body[data-astro-cid-2hwget37],.projects-hero[data-astro-cid-2hwget37] .hero-marks[data-astro-cid-2hwget37],.filter-tab[data-astro-cid-2hwget37]{opacity:0}}@media(max-width:640px){.projects-hero[data-astro-cid-2hwget37]{padding:64px 18px 44px}.hero-title[data-astro-cid-2hwget37]{font-size:32px}.hero-body[data-astro-cid-2hwget37]{font-size:15px}.filter-bar[data-astro-cid-2hwget37]{padding:0 12px}.filter-inner[data-astro-cid-2hwget37]{gap:18px;padding:14px 4px 12px;overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.filter-inner[data-astro-cid-2hwget37]::-webkit-scrollbar{display:none}.filter-tab[data-astro-cid-2hwget37]{flex-shrink:0}.tab-label[data-astro-cid-2hwget37]{font-size:14px}.filter-tab[data-astro-cid-2hwget37][aria-pressed=true]:after{bottom:-13px}.projects-feed[data-astro-cid-2hwget37]{padding:20px 18px 80px}.project-section[data-astro-cid-2hwget37]{margin-top:48px}.section-head[data-astro-cid-2hwget37]{gap:12px;margin-bottom:24px;padding-bottom:12px}.section-title[data-astro-cid-2hwget37]{font-size:19px}.project-list[data-astro-cid-2hwget37]{gap:28px}}
