.projects{max-width:700px;margin:0 auto;padding:48px 24px 64px}.projects .prompt{font-size:var(--font-size-sm);align-items:center;gap:6px;margin-bottom:8px;display:flex}.projects .prompt .args{color:var(--text-secondary)}.projects__total{font-size:var(--font-size-xs);color:var(--text-muted);margin-bottom:24px}.projects__grid{flex-direction:column;gap:16px;display:flex}.proj-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition),box-shadow var(--transition);padding:20px}.proj-card:hover{border-color:var(--green);box-shadow:0 2px 12px #00000026}.proj-card__perm-row{font-size:var(--font-size-xs);font-family:var(--font);align-items:center;gap:12px;margin-bottom:8px;display:flex}.proj-card__perm{color:var(--text-muted)}.proj-card__status{font-weight:var(--font-weight-semi-bold)}.proj-card__period{color:var(--text-muted);margin-left:auto}.proj-card__name{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--text);align-items:center;gap:8px;margin-bottom:8px;display:flex}.proj-card__dir-icon{font-size:var(--font-size-sm)}.proj-card__desc{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:12px;line-height:1.6}.proj-card__stack{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.proj-card__stack .tag{border:1px solid var(--border);border-radius:var(--radius);font-size:var(--font-size-xs);color:var(--text-secondary);white-space:nowrap;padding:2px 8px}.proj-card__links{border-top:1px dashed var(--border);gap:16px;padding-top:12px;display:flex}.proj-card__link{font-size:var(--font-size-xs);color:var(--text-muted);transition:color var(--transition);align-items:center;gap:4px;text-decoration:none;display:flex}.proj-card__link:hover{color:var(--green)}.proj-card__link--demo{color:var(--text-secondary)}.proj-card__link-icon{font-size:10px}.projects__empty{text-align:center;font-size:var(--font-size-sm);padding:48px}.projects__footer-prompt{font-size:var(--font-size-sm);align-items:center;gap:6px;margin-top:48px;display:flex}.projects__footer-prompt .cursor{color:var(--green);animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}@media (max-width:768px){.projects{padding:32px 16px 48px}.proj-card{padding:16px}.proj-card__perm-row{flex-wrap:wrap;gap:8px}.proj-card__period{width:100%;margin-left:0}}
