    .article-index-card {
      background: #fff;
      border-radius: 10px;
      box-shadow: 0 3px 16px rgba(0,0,0,0.07);
      overflow: hidden;
      transition: transform 0.22s ease, box-shadow 0.22s ease;
      display: flex;
      flex-direction: column;
      height: 100%;
      text-decoration: none;
      color: inherit;
      border-top: 3px solid transparent;
    }
    .article-index-card.p1 { border-top-color: #17C5DC; }
    .article-index-card.p2 { border-top-color: #3498db; }
    .article-index-card.p3 { border-top-color: #27ae60; }
    .article-index-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 12px 32px rgba(0,0,0,0.13);
      color: inherit;
    }
    .article-index-card .card-img {
      height: 180px;
      overflow: hidden;
    }
    .article-index-card .card-img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
      transition: transform 0.4s ease;
    }
    .article-index-card:hover .card-img img { transform: scale(1.06); }
    .article-index-card .card-body {
      padding: 20px 18px 18px;
      flex: 1;
      display: flex;
      flex-direction: column;
    }
    .article-priority-badge {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      font-size: 0.7rem;
      font-weight: 700;
      letter-spacing: 1px;
      text-transform: uppercase;
      padding: 3px 10px;
      border-radius: 20px;
      margin-bottom: 10px;
    }
    .p1-badge { background: rgba(23,197,220,0.1); color: #17C5DC; border: 1px solid rgba(23,197,220,0.3); }
    .p2-badge { background: rgba(52,152,219,0.1); color: #3498db; border: 1px solid rgba(52,152,219,0.3); }
    .p3-badge { background: rgba(39,174,96,0.1); color: #27ae60; border: 1px solid rgba(39,174,96,0.3); }
    .article-index-card h3 {
      font-family: 'Oswald', sans-serif;
      font-size: 1.05rem;
      font-weight: 700;
      color: #1A1A1A;
      margin-bottom: 8px;
      line-height: 1.3;
    }
    .article-index-card p {
      font-size: 0.85rem;
      color: #666;
      margin-bottom: 14px;
      flex: 1;
      line-height: 1.6;
    }
    .article-read-link {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: 0.88rem;
      font-weight: 700;
      color: #17C5DC;
      text-decoration: none;
    }
    .article-read-link i { transition: transform 0.2s; }
    .article-index-card:hover .article-read-link i { transform: translateX(4px); }
    .article-kw-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 4px;
      margin-bottom: 12px;
    }
    .article-kw-tag {
      display: inline-block;
      background: #f0f2f4;
      color: #666;
      font-size: 0.7rem;
      font-weight: 600;
      padding: 2px 8px;
      border-radius: 10px;
    }
    .filter-tab {
      background: transparent;
      border: 2px solid #e0e0e0;
      border-radius: 6px;
      padding: 7px 18px;
      font-family: 'Oswald', sans-serif;
      font-size: 0.9rem;
      font-weight: 500;
      color: #555;
      cursor: pointer;
      transition: all 0.2s;
      letter-spacing: 0.3px;
    }
    .filter-tab:hover, .filter-tab.active {
      background: #17C5DC;
      border-color: #17C5DC;
      color: #fff;
    }
