    /* 1. 初始化計數器 (必須放在最外層 body 上) */
    .QAcorner {
      counter-reset: section-counter 0 qno 0;
    }

    .qamenu-section {
      border: 1px solid #ccc;
      margin-bottom: 15px;
      border-radius: 4px;
      overflow: hidden;
    }

    .qamenu-section.green {
        background-color: #eef9ee;
    }
    .qamenu-section.blue {
        background-color: #e9f1ff;
    }
    .qamenu-section.yellow {
        background-color: #ffffde;
    }
    .qamenu-section.red {
        background-color: #f9e0e0;
    }

    /* 2. 大分類標題 (1), (2)... 自動編號 */
    .firstLevelTitle {
      padding: 10px 15px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      cursor: pointer;
      user-select: none;
    }

    .firstLevelTitle .title {
      counter-increment: section-counter;
    }

    .firstLevelTitle .title::before {
      content: "(" counter(section-counter) ") ";
    }

    .toggle-btn {
      background: none;
      border: none;
      cursor: pointer;
      padding: 0;
    }

    .toggle-btn img {
      width: 16px;
      height: 16px;
      transform: rotate(-90deg); /* 預設折疊方向 */
      transition: transform 0.2s ease;
    }

    /* 3. 問答列表結構與自動編號 Q1, Q2, Q3... */
    .qna-list {
      list-style: none !important;
      padding-left: 0;
      margin: 0;
    }

    .qna-list > li {
      counter-increment: qno; 
      border-bottom: 1px solid #eee;
      padding: 12px 15px;
    }

    .qna-list > li:last-child {
      border-bottom: none;
    }

    /* 4. 懸掛縮排對齊核心 (Flexbox 佈局) */
    .question {
      display: flex;
      align-items: flex-start;
      font-weight: bold;
      color: #000;
      margin-bottom: 6px;
    }

    .question::before {
      content: "Q" counter(qno) ".";
      color: #2e7d32;
      font-weight: bold;
      flex-shrink: 0;   /* 不縮小 */
      min-width: 38px;  /* 固定預留編號空間，實現完美懸掛縮排 */
      margin-right: 4px;
    }

    .answer {
      color: #444;
      padding-left: 38px; /* 讓回答內容與問題文字左側對齊 */
    }

    .alpha-list {
      list-style-type: lower-alpha;
      padding-left: 20px;
      margin: 8px 0;
    }

    /* 5. 折疊/展開 (Collapse) 控制 */
    .qacontent {
      max-height: 0; /* 預設折疊 */
      opacity: 0;
      overflow: hidden;
      padding: 0 15px;
      pointer-events: none;
      transition: max-height 0.3s ease, opacity 0.3s ease, padding 0.3s ease;
    }

    .qamenu-section.expanded .qacontent {
      max-height: 5000px;
      opacity: 1;
      padding: 10px 15px;
      pointer-events: auto;
    }

    .qamenu-section.expanded .toggle-btn img {
      transform: rotate(0deg);
    }