
    .ivpn-page {
      --ivpn-blue: #2563eb;
      --ivpn-dark: #111827;
      --ivpn-muted: #64748b;
      --ivpn-border: #e5e7eb;
      --ivpn-soft: #f8fafc;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans SC", "Microsoft YaHei", Arial, sans-serif;
      color: var(--ivpn-dark);
      line-height: 1.75;
    }
    .ivpn-wrap {
      max-width: 1080px;
      margin: 0 auto;
      padding: 28px 16px;
    }
    .ivpn-hero {
      background: linear-gradient(135deg, #eff6ff, #ffffff);
      border: 1px solid #bfdbfe;
      border-radius: 18px;
      padding: 34px;
      margin-bottom: 22px;
    }
    .ivpn-kicker {
      color: var(--ivpn-blue);
      font-weight: 900;
      margin-bottom: 8px;
    }
    .ivpn-hero h1 {
      margin: 0 0 14px;
      font-size: 34px;
      line-height: 1.25;
      letter-spacing: 0;
    }
    .ivpn-hero p {
      max-width: 820px;
      color: #475569;
      margin: 0;
      font-size: 17px;
    }
    .ivpn-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 22px;
    }
    .ivpn-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      padding: 0 18px;
      border-radius: 999px;
      text-decoration: none;
      font-weight: 900;
      background: var(--ivpn-blue);
      color: #fff !important;
    }
    .ivpn-btn.secondary {
      background: #111827;
    }
    .ivpn-btn.feedback {
      background: #0f766e;
    }
    .ivpn-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
      margin: 22px 0;
    }
    .ivpn-card,
    .ivpn-section {
      background: #fff;
      border: 1px solid var(--ivpn-border);
      border-radius: 16px;
      box-shadow: 0 10px 28px rgba(15, 23, 42, .05);
    }
    .ivpn-card {
      padding: 20px;
    }
    .ivpn-card h3 {
      margin: 0 0 8px;
      font-size: 18px;
    }
    .ivpn-card p {
      margin: 0;
      color: var(--ivpn-muted);
      font-size: 15px;
    }
    .ivpn-section {
      margin-top: 28px;
      padding: 26px;
    }
    .ivpn-section h2 {
      margin: 0 0 16px;
      font-size: 25px;
    }
    .ivpn-section h3 {
      margin: 22px 0 8px;
      font-size: 19px;
    }
    .ivpn-section p {
      color: #475569;
    }
    .ivpn-list {
      margin: 0;
      padding-left: 22px;
      color: #475569;
    }
    .ivpn-list li {
      margin: 8px 0;
    }
    .ivpn-tablewrap {
      margin: 6px 0 4px;
      border: 1px solid var(--ivpn-border);
      border-radius: 14px;
      overflow: hidden;
    }
    .ivpn-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 14px;
      table-layout: fixed;
    }
    .ivpn-table th {
      background: var(--ivpn-soft);
      text-align: left;
      padding: 11px 10px;
      font-weight: 900;
      border-bottom: 2px solid var(--ivpn-border);
      font-size: 13px;
    }
    .ivpn-table td {
      padding: 12px 10px;
      border-bottom: 1px solid var(--ivpn-border);
      color: #475569;
      vertical-align: top;
      word-break: break-word;
      line-height: 1.6;
    }
    /* 各列宽度分配，避免右侧被挤出 */
    .ivpn-table th:nth-child(1), .ivpn-table td:nth-child(1) { width: 11%; }
    .ivpn-table th:nth-child(2), .ivpn-table td:nth-child(2) { width: 9%; }
    .ivpn-table th:nth-child(3), .ivpn-table td:nth-child(3) { width: 14%; }
    .ivpn-table th:nth-child(4), .ivpn-table td:nth-child(4) { width: 11%; }
    .ivpn-table th:nth-child(5), .ivpn-table td:nth-child(5) { width: 17%; }
    .ivpn-table th:nth-child(6), .ivpn-table td:nth-child(6) { width: 15%; }
    .ivpn-table th:nth-child(7), .ivpn-table td:nth-child(7) { width: 12%; }
    .ivpn-table th:nth-child(8), .ivpn-table td:nth-child(8) { width: 11%; }
    .ivpn-table tr:last-child td {
      border-bottom: 0;
    }
    .ivpn-table tr:nth-child(even) td {
      background: #fcfdfe;
    }
    .ivpn-table td strong {
      color: var(--ivpn-dark);
    }
    .ivpn-flag {
      font-weight: 900;
      color: var(--ivpn-dark);
    }
    /* 窄屏：表格转为卡片式，每家一张，信息竖排全部可见 */
    @media (max-width: 900px) {
      .ivpn-tablewrap {
        border: 0;
        border-radius: 0;
      }
      .ivpn-table, .ivpn-table tbody, .ivpn-table tr, .ivpn-table td {
        display: block;
        width: 100% !important;
      }
      .ivpn-table thead {
        display: none;
      }
      .ivpn-table tr {
        border: 1px solid var(--ivpn-border);
        border-radius: 14px;
        margin-bottom: 14px;
        padding: 6px 4px 10px;
        background: #fff;
        box-shadow: 0 4px 14px rgba(15, 23, 42, .04);
      }
      .ivpn-table tr:nth-child(even) td {
        background: transparent;
      }
      .ivpn-table td {
        border-bottom: 1px dashed #eef2f7;
        padding: 9px 14px 9px 96px;
        position: relative;
        min-height: 22px;
      }
      .ivpn-table td::before {
        content: attr(data-label);
        position: absolute;
        left: 14px;
        top: 9px;
        width: 74px;
        font-weight: 900;
        color: var(--ivpn-dark);
        font-size: 12.5px;
      }
      /* 第一格（商家名）作为卡片标题 */
      .ivpn-table td:first-child {
        padding: 10px 14px 12px;
        border-bottom: 2px solid var(--ivpn-border);
        font-size: 18px;
      }
      .ivpn-table td:first-child::before {
        content: none;
      }
      .ivpn-table td:last-child {
        border-bottom: 0;
      }
    }
    .ivpn-code {
      background: #020617;
      color: #d1fae5;
      border-radius: 14px;
      padding: 16px;
      overflow-x: auto;
      font-size: 14px;
      line-height: 1.7;
      white-space: pre-wrap;
      word-break: break-all;
    }
    .ivpn-faq details {
      border-top: 1px solid var(--ivpn-border);
      padding: 14px 0;
    }
    .ivpn-faq details:first-child {
      border-top: 0;
    }
    .ivpn-faq summary {
      cursor: pointer;
      font-weight: 900;
    }
    .ivpn-faq p {
      margin: 10px 0 0;
      color: #475569;
    }
    .ivpn-note {
      background: #fffbeb;
      border: 1px solid #fde68a;
      color: #92400e;
      border-radius: 14px;
      padding: 14px 16px;
      margin-top: 16px;
      font-weight: 800;
    }
    .ivpn-danger {
      background: #fef2f2;
      border: 1px solid #fecaca;
      color: #991b1b;
      border-radius: 14px;
      padding: 16px 18px;
      margin-top: 16px;
    }
    .ivpn-danger strong {
      color: #7f1d1d;
    }
    @media (max-width: 820px) {
      .ivpn-hero {
        padding: 24px;
      }
      .ivpn-hero h1 {
        font-size: 28px;
      }
      .ivpn-grid {
        grid-template-columns: 1fr;
      }
    }
  
