/* 仅作用于作品列表，不覆盖原站一二级导航或作品详情样式。 */
.portfolio{max-width:1240px;margin:0 auto;padding:85px 40px 110px;box-sizing:border-box;color:#222;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}
.portfolio *{box-sizing:border-box}
.portfolio-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:64px}
.portfolio-eyebrow{font-size:11px;letter-spacing:.17em;color:#888;margin:0 0 22px}
.portfolio-intro h1{font-size:48px;font-weight:600;line-height:1.4;letter-spacing:-.035em;margin:0}
.portfolio-intro>p{font-size:15px;line-height:1.9;color:#888;margin:0 0 5px}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:54px 30px}
.portfolio-card{display:block;text-decoration:none;color:inherit;min-width:0}
.portfolio-cover{position:relative;aspect-ratio:4/3;background:#f3f3f3;overflow:hidden;border-radius:12px}
.portfolio-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.portfolio-card:hover .portfolio-cover img{transform:scale(1.035)}
/* App 图标固定在封面左下角，独立于封面的悬停缩放。 */
.portfolio-cover img.portfolio-app-icon{position:absolute;left:18px;bottom:18px;width:58px;height:58px;object-fit:contain;border-radius:14px;background:white;box-shadow:0 3px 16px #0002;border:2px solid #fff;transform:none}
.portfolio-meta{display:flex;justify-content:space-between;align-items:center;color:#999;font-size:11px;letter-spacing:.03em;margin:20px 0 10px}
.portfolio-meta>span:last-child{font-size:20px;color:#555;transition:transform .2s}
.portfolio-card:hover .portfolio-meta>span:last-child{transform:translate(2px,-2px)}
.portfolio-card h2{font-size:24px;font-weight:600;line-height:1.4;margin:0 0 10px}
.portfolio-card>p{font-size:13px;line-height:1.8;color:#888;margin:0;max-width:330px}
.portfolio-card:focus-visible{outline:2px solid #008fff;outline-offset:7px;border-radius:12px}
@media(max-width:960px){.portfolio{padding:65px 30px 85px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 25px}.portfolio-intro h1{font-size:40px}.portfolio-intro>p{font-size:13px}}
@media(max-width:600px){.portfolio{padding:45px 24px 65px}.portfolio-intro{display:block;margin-bottom:38px}.portfolio-intro h1{font-size:34px}.portfolio-intro>p{margin-top:24px}.portfolio-grid{grid-template-columns:1fr;gap:38px}.portfolio-card h2{font-size:23px}}
.portfolio-meta .portfolio-meta-actions{display:inline-flex;align-items:center;gap:17px;font-size:inherit;color:#666;transform:none!important}
.portfolio-platforms{display:inline-flex;align-items:center;gap:8px}
.portfolio-platforms .platform-device{display:inline-flex;color:#71808b}
.portfolio-platforms .platform-device svg{display:block;width:17px;height:19px}
.portfolio-platforms .platform-device.is-upcoming{color:#aeb7be}
.portfolio-meta .portfolio-arrow{font-size:20px;color:#555;transition:transform .2s}
.portfolio-card:hover .portfolio-meta .portfolio-arrow{transform:translate(2px,-2px)}
