.proj-card[data-astro-cid-y2vllrex]{grid-template-columns:var(--thumb-w,240px) minmax(0, 1fr);border-bottom:1px solid var(--border);cursor:pointer;align-items:center;column-gap:28px;padding:22px 32px 22px 0;text-decoration:none;display:grid;position:relative}.proj-card[data-astro-cid-y2vllrex]:after{content:">";color:var(--text-3);transition:transform var(--t), color var(--t);font-size:18px;position:absolute;top:50%;right:0;transform:translateY(-50%)}.proj-card[data-astro-cid-y2vllrex]:hover:after{color:var(--accent);transform:translate(4px,-50%)}.c-thumb[data-astro-cid-y2vllrex]{aspect-ratio:3;background:repeating-linear-gradient(-55deg, transparent, transparent 9px, rgb(var(--tint-rgb) / .011) 9px, rgb(var(--tint-rgb) / .011) 10px), var(--thumb-bg);border:1px solid var(--border);font-family:var(--fm);color:var(--text-3);letter-spacing:.14em;transition:border-color var(--t);border-radius:4px;justify-content:center;align-items:center;font-size:8px;display:flex;position:relative;overflow:hidden}.proj-card[data-astro-cid-y2vllrex]:hover .c-thumb[data-astro-cid-y2vllrex]{border-color:var(--border-h)}.c-thumb-overlay[data-astro-cid-y2vllrex]{background:var(--thumb-overlay);transition:background var(--t);z-index:1;pointer-events:none;position:absolute;inset:0}.proj-card[data-astro-cid-y2vllrex]:hover .c-thumb-overlay[data-astro-cid-y2vllrex]{background:0 0}.c-thumb-img[data-astro-cid-y2vllrex]{object-fit:cover;filter:saturate(.7);width:100%;height:100%;transition:filter var(--t), transform var(--t);display:block;position:absolute;inset:0}.proj-card[data-astro-cid-y2vllrex]:hover .c-thumb-img[data-astro-cid-y2vllrex]{filter:none;transform:scale(1.02)}.c-body[data-astro-cid-y2vllrex]{flex-direction:column;gap:6px;min-width:0;display:flex}.c-name[data-astro-cid-y2vllrex]{font-family:var(--fd);letter-spacing:-.01em;color:var(--text);transition:color var(--t);font-size:16px;font-weight:500;line-height:1.3}.proj-card[data-astro-cid-y2vllrex]:hover .c-name[data-astro-cid-y2vllrex]{color:var(--accent)}.c-desc[data-astro-cid-y2vllrex]{color:var(--text-2);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.65;display:-webkit-box;overflow:hidden}.c-tags[data-astro-cid-y2vllrex]{flex-wrap:wrap;margin-top:4px;display:flex}.c-tags[data-astro-cid-y2vllrex] .tag{letter-spacing:.1em;color:color-mix(in srgb, var(--text-2) 62%, transparent);background:0 0;padding:0;font-size:12px}.c-tags[data-astro-cid-y2vllrex] .tag:not(:last-child):after{content:"·";margin:0 .7em}@media (width<=860px){.proj-card[data-astro-cid-y2vllrex]{border-bottom:0;flex-direction:column;align-items:stretch;padding:0;display:flex}.proj-card[data-astro-cid-y2vllrex]:after{display:none}.c-body[data-astro-cid-y2vllrex]{padding:14px 2px 0}.c-desc[data-astro-cid-y2vllrex]{-webkit-line-clamp:3;line-clamp:3}.c-tags[data-astro-cid-y2vllrex]{margin-top:6px}}.filter-bar{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.filter-btn{font-family:var(--fm);letter-spacing:.06em;color:var(--text-2);transition:color var(--t), background var(--t);cursor:pointer;background:0 0;border-radius:2px;padding:5px 13px;font-size:16px;font-weight:500}.filter-btn:hover{color:var(--text)}.filter-btn.on{color:var(--accent);background:var(--accent-dim)}.yr-bar{flex-wrap:wrap;gap:4px;margin-bottom:20px;display:flex}.yr-btn{font-family:var(--fm);letter-spacing:.06em;color:var(--text-3);transition:color var(--t), background var(--t);cursor:pointer;text-transform:uppercase;background:0 0;border-radius:2px;padding:5px 13px;font-size:16px;font-weight:500}.yr-btn:hover{color:var(--text-2)}.yr-btn.on{color:var(--accent);background:var(--accent-dim)}.srch-wrap{max-width:400px;margin-bottom:36px;position:relative}.srch-icon{color:var(--text-3);pointer-events:none;font-size:14px;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.srch-input{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r);width:100%;color:var(--text);font-family:var(--fb);transition:border-color var(--t);outline:none;padding:10px 14px 10px 36px;font-size:13.5px}.srch-input::placeholder{color:var(--text-3)}.srch-input:focus{border-color:var(--border-h)}.proj-section+.proj-section{margin-top:88px}.sec-title{font-family:var(--fd);letter-spacing:-.02em;color:var(--text);margin:0 0 28px;font-size:1.7rem;font-weight:600}#proj-content.one-section .sec-title{display:none}.year-group+.year-group{margin-top:48px}.year-header{align-items:center;gap:14px;margin-bottom:6px;display:flex}.year-num{font-family:var(--fm);letter-spacing:.22em;color:var(--text-3);white-space:nowrap;text-transform:uppercase;font-size:24px}.year-line{background:var(--border);flex:1;height:1px}.proj-section[data-section=featured]{--thumb-w:360px}.proj-grid{border-top:1px solid var(--border);flex-direction:column;display:flex}.empty{font-family:var(--fm);letter-spacing:.06em;color:var(--text-3);padding:32px 0;font-size:8px}@media (width<=860px){.proj-grid{border-top:0;gap:56px}}
