.note-card-link {
  text-decoration: none;
  color: inherit;
  display: block;
  width: 100%;
  /* 改成 100%，寬度由父容器控制 */
  min-width: 0;
  /* 避免 min-width 干擾 */
  flex: 0 1 auto;
}

.note-card {
  --border-radius: 0.75rem;
  --primary-color: #7257fa;
  --secondary-color: #3c3852;

  width: 100%;
  /* 100% 滿寬 */
  max-width: none;
  /* 取消 max-width: 240px */
  font-family: "Arial", sans-serif;
  padding: 1rem;
  cursor: pointer;
  border-radius: var(--border-radius);
  background: #fdfdfd;
  box-shadow: 0px 8px 16px 0px rgb(0 0 0 / 3%);
  position: relative;
  /* 保留讓箭頭絕對定位 */
  transition: transform 0.2s ease, border 0.2s ease, box-shadow 0.2s ease;

  border: 1px solid #ccc;

  height: auto;
  /* 高度自適應 */
  min-height: 220px;
  /* 可選：設定最小高度 */
  overflow: visible;
  /* 讓箭頭不被遮擋 */
}

.note-card:hover {
  transform: translateY(-3px);
  border-color: var(--primary-color);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

.note-card>*+* {
  margin-top: 1.1em;
}

.note-card .note-card__title {
  font-size: 1.3rem;
  font-weight: bold;
  color: #000;
  transition: color 0.2s;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.note-card .note-card__content {
  color: var(--secondary-color);
  font-size: 0.86rem;

  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.note-card .note-card__date {
  color: #6e6b80;
  font-size: 0.8rem;
}

.note-card .note-card__arrow {
  position: absolute;
  background: var(--primary-color);
  padding: 0.4rem;
  border-top-left-radius: var(--border-radius);
  border-bottom-right-radius: var(--border-radius);
  bottom: 0;
  right: 0;
  transition: 0.2s;
  display: flex;
  justify-content: center;
  align-items: center;
}

.note-card svg {
  transition: transform 0.2s;
}

.note-card:hover .note-card__title {
  color: var(--primary-color);
  text-decoration: underline;
}

.note-card:hover .note-card__arrow {
  background: #111;
}

.note-card:hover .note-card__arrow svg {
  transform: translateX(3px);
}