.project-flip-shell[data-astro-cid-ud2tqcnk]{background:var(--paper-raised);isolation:isolate;perspective:1200px;border-radius:14px;min-width:0;min-height:450px;position:relative;overflow:hidden}.project-flip-shell[data-astro-cid-ud2tqcnk]:before{z-index:-2;content:"";opacity:.28;background:conic-gradient(from 20deg, transparent 0 62%, var(--accent), var(--warm), transparent 92%);border-radius:16px;animation:10s linear infinite project-flip-orbit;position:absolute;inset:-2px}.project-flip-stage[data-astro-cid-ud2tqcnk]{box-shadow:var(--shadow);transform-style:preserve-3d;border-radius:14px;transition:transform .52s cubic-bezier(.2,.75,.25,1);position:absolute;inset:0}.project-flip-shell[data-astro-cid-ud2tqcnk].is-pinned .project-flip-stage[data-astro-cid-ud2tqcnk]{transform:rotateY(180deg)}.project-flip-face[data-astro-cid-ud2tqcnk]{border:1px solid var(--line);-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:14px;position:absolute;inset:0;overflow:hidden}.project-flip-front[data-astro-cid-ud2tqcnk]{background:linear-gradient(145deg, var(--paper-raised), color-mix(in srgb, var(--accent-soft) 66%, var(--paper-raised)));pointer-events:auto}.project-flip-front__content[data-astro-cid-ud2tqcnk]{z-index:2;flex-direction:column;justify-content:space-between;height:100%;padding:clamp(1.5rem,3vw,2.2rem);display:flex;position:relative}.project-flip-meta[data-astro-cid-ud2tqcnk]{color:var(--warm);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.7rem;padding-right:7.5rem;font-size:.68rem;font-weight:800;display:flex}.project-flip-meta[data-astro-cid-ud2tqcnk] span[data-astro-cid-ud2tqcnk]+span[data-astro-cid-ud2tqcnk]:before{content:"·";margin-right:.7rem}.project-flip-domain[data-astro-cid-ud2tqcnk]{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .7rem;font-size:.72rem;font-weight:800}.project-flip-face[data-astro-cid-ud2tqcnk] h3[data-astro-cid-ud2tqcnk]{max-width:520px;font-family:var(--display);letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,3.2rem);font-weight:560;line-height:1.04}html:lang(zh-CN) .project-flip-face[data-astro-cid-ud2tqcnk] h3[data-astro-cid-ud2tqcnk]{letter-spacing:.02em;font-weight:400;line-height:1.14}.project-flip-summary[data-astro-cid-ud2tqcnk]{max-width:560px;color:var(--muted);margin:1rem 0 0;line-height:1.65}.project-flip-front[data-astro-cid-ud2tqcnk] footer[data-astro-cid-ud2tqcnk]{justify-content:space-between;align-items:end;gap:1rem;display:flex}.project-flip-metrics[data-astro-cid-ud2tqcnk]{flex-wrap:wrap;gap:1.6rem;display:flex}.project-flip-metrics[data-astro-cid-ud2tqcnk] span[data-astro-cid-ud2tqcnk]{flex-direction:column;display:flex}.project-flip-metrics[data-astro-cid-ud2tqcnk] small[data-astro-cid-ud2tqcnk],.project-flip-hint[data-astro-cid-ud2tqcnk]{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:750}.project-flip-metrics[data-astro-cid-ud2tqcnk] strong[data-astro-cid-ud2tqcnk]{color:var(--accent);font-size:1.1rem}.project-flip-hint[data-astro-cid-ud2tqcnk]{text-align:right;max-width:145px;margin-left:auto}.project-flip-orbs[data-astro-cid-ud2tqcnk]{pointer-events:none;position:absolute;inset:0;overflow:hidden}.project-flip-orbs[data-astro-cid-ud2tqcnk] i[data-astro-cid-ud2tqcnk]{filter:blur(24px);opacity:.16;border-radius:50%;animation:6s ease-in-out infinite project-flip-float;position:absolute}.project-flip-orbs[data-astro-cid-ud2tqcnk] i[data-astro-cid-ud2tqcnk]:first-child{background:var(--accent);width:120px;height:120px;top:16%;right:12%}.project-flip-orbs[data-astro-cid-ud2tqcnk] i[data-astro-cid-ud2tqcnk]:nth-child(2){background:var(--warm);width:170px;height:130px;animation-delay:-2s;bottom:-35px;right:30%}.project-flip-orbs[data-astro-cid-ud2tqcnk] i[data-astro-cid-ud2tqcnk]:nth-child(3){background:var(--accent-soft);width:90px;height:90px;animation-delay:-4s;top:48%;left:-30px}.project-flip-back[data-astro-cid-ud2tqcnk]{color:var(--paper);background:color-mix(in srgb, var(--ink) 94%, var(--accent));pointer-events:none;transform:rotateY(180deg)}.project-flip-shell[data-astro-cid-ud2tqcnk].is-pinned .project-flip-front[data-astro-cid-ud2tqcnk]{pointer-events:none}.project-flip-shell[data-astro-cid-ud2tqcnk].is-pinned .project-flip-back[data-astro-cid-ud2tqcnk]{pointer-events:auto}.project-flip-back[data-astro-cid-ud2tqcnk]:before{content:"";opacity:.16;background-image:linear-gradient(color-mix(in srgb, var(--accent) 55%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--accent) 55%, transparent) 1px, transparent 1px);background-size:38px 38px;position:absolute;inset:0}.project-flip-back__content[data-astro-cid-ud2tqcnk]{z-index:2;flex-direction:column;height:100%;padding:clamp(1.5rem,3vw,2.2rem);display:flex;position:relative}.project-flip-back[data-astro-cid-ud2tqcnk] h3[data-astro-cid-ud2tqcnk]{max-width:calc(100% - 7rem);font-size:clamp(1.7rem,3vw,2.45rem)}.project-flip-kicker[data-astro-cid-ud2tqcnk]{color:var(--warm);letter-spacing:.12em;margin:0 0 .7rem;font-size:.68rem;font-weight:800}.project-flip-approach[data-astro-cid-ud2tqcnk]{margin-top:1.3rem}.project-flip-approach[data-astro-cid-ud2tqcnk]>strong[data-astro-cid-ud2tqcnk]{color:color-mix(in srgb, var(--paper) 82%, white);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem}.project-flip-approach[data-astro-cid-ud2tqcnk] ul[data-astro-cid-ud2tqcnk]{color:color-mix(in srgb, var(--paper) 78%, transparent);margin:.65rem 0 0;padding-left:1.05rem;font-size:.84rem;line-height:1.55}.project-flip-approach[data-astro-cid-ud2tqcnk] li[data-astro-cid-ud2tqcnk]+li[data-astro-cid-ud2tqcnk]{margin-top:.38rem}.project-flip-back[data-astro-cid-ud2tqcnk] .tag-row[data-astro-cid-ud2tqcnk]{margin-top:auto;padding-top:1rem}.project-flip-back[data-astro-cid-ud2tqcnk] .tag-row[data-astro-cid-ud2tqcnk] span[data-astro-cid-ud2tqcnk]{border-color:color-mix(in srgb, var(--paper) 24%, transparent);color:color-mix(in srgb, var(--paper) 72%, transparent)}.project-flip-links[data-astro-cid-ud2tqcnk]{flex-wrap:wrap;gap:1rem;margin-top:1rem;display:flex}.project-flip-links[data-astro-cid-ud2tqcnk] a[data-astro-cid-ud2tqcnk]{color:var(--paper);font-size:.82rem;font-weight:800}.project-flip-links[data-astro-cid-ud2tqcnk] a[data-astro-cid-ud2tqcnk]:hover{text-underline-offset:4px;text-decoration:underline}.project-flip-pin[data-astro-cid-ud2tqcnk]{z-index:5;border:1px solid color-mix(in srgb, var(--line) 82%, transparent);background:color-mix(in srgb, var(--paper-raised) 88%, transparent);min-height:36px;color:var(--ink);cursor:pointer;backdrop-filter:blur(10px);border-radius:999px;align-items:center;gap:.4rem;padding:.42rem .65rem;font-size:.68rem;font-weight:800;display:inline-flex;position:absolute;top:1rem;right:1rem;box-shadow:0 8px 20px #2f302a1a}.project-flip-pin[data-astro-cid-ud2tqcnk] svg[data-astro-cid-ud2tqcnk]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:15px;height:15px}.project-flip-pin[data-astro-cid-ud2tqcnk][aria-pressed=true]{border-color:var(--warm);background:var(--warm);color:var(--paper-raised)}.project-flip-pin[data-astro-cid-ud2tqcnk][aria-pressed=true] svg[data-astro-cid-ud2tqcnk]{fill:currentColor}.project-flip-pin[data-astro-cid-ud2tqcnk]:focus-visible{outline:3px solid var(--warm);outline-offset:4px}.project-flip-status[data-astro-cid-ud2tqcnk]{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes project-flip-orbit{to{transform:rotate(1turn)}}@keyframes project-flip-float{0%,to{transform:translate(0,0)}50%{transform:translateY(10px)}}@media (hover:hover) and (pointer:fine){.project-flip-shell[data-astro-cid-ud2tqcnk]:hover .project-flip-stage[data-astro-cid-ud2tqcnk]{transform:rotateY(180deg)}.project-flip-shell[data-astro-cid-ud2tqcnk]:hover .project-flip-front[data-astro-cid-ud2tqcnk]{pointer-events:none}.project-flip-shell[data-astro-cid-ud2tqcnk]:hover .project-flip-back[data-astro-cid-ud2tqcnk]{pointer-events:auto}}@media (width<=640px){.project-flip-shell[data-astro-cid-ud2tqcnk]{min-height:520px}.project-flip-meta[data-astro-cid-ud2tqcnk]{flex-direction:column;align-items:start;gap:.15rem;padding-right:0}.project-flip-meta[data-astro-cid-ud2tqcnk] span[data-astro-cid-ud2tqcnk]+span[data-astro-cid-ud2tqcnk]:before{display:none}.project-flip-face[data-astro-cid-ud2tqcnk] h3[data-astro-cid-ud2tqcnk]{font-size:2.15rem}.project-flip-front[data-astro-cid-ud2tqcnk] footer[data-astro-cid-ud2tqcnk]{flex-direction:column;align-items:start}.project-flip-hint[data-astro-cid-ud2tqcnk]{text-align:left;margin-left:0}.project-flip-back[data-astro-cid-ud2tqcnk] h3[data-astro-cid-ud2tqcnk]{max-width:100%;padding-right:4rem;font-size:1.75rem}.project-flip-pin[data-astro-cid-ud2tqcnk] span[data-astro-cid-ud2tqcnk]{display:none}.project-flip-pin[data-astro-cid-ud2tqcnk]{justify-content:center;width:38px;padding:0}}@media (prefers-reduced-motion:reduce){.project-flip-shell[data-astro-cid-ud2tqcnk]:before,.project-flip-orbs[data-astro-cid-ud2tqcnk] i[data-astro-cid-ud2tqcnk]{animation:none}.project-flip-stage[data-astro-cid-ud2tqcnk]{transition:none;transform:none!important}.project-flip-face[data-astro-cid-ud2tqcnk]{transition:none;transform:none}.project-flip-back[data-astro-cid-ud2tqcnk],.project-flip-shell[data-astro-cid-ud2tqcnk].is-pinned .project-flip-front[data-astro-cid-ud2tqcnk]{opacity:0;pointer-events:none}.project-flip-shell[data-astro-cid-ud2tqcnk].is-pinned .project-flip-back[data-astro-cid-ud2tqcnk]{opacity:1;pointer-events:auto}}@media (prefers-reduced-motion:reduce) and (hover:hover) and (pointer:fine){.project-flip-shell[data-astro-cid-ud2tqcnk]:hover .project-flip-front[data-astro-cid-ud2tqcnk]{opacity:0;pointer-events:none}.project-flip-shell[data-astro-cid-ud2tqcnk]:hover .project-flip-back[data-astro-cid-ud2tqcnk]{opacity:1;pointer-events:auto}}
