
    .tps-article {
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      line-height: 1.6;
      color: #333;
    }
    .tps-article h1,
    .tps-article h2,
    .tps-article h3 {
      color: #3598db;
      margin-top: 1.8em;
      margin-bottom: 0.6em;
      line-height: 1.3;
    }
    .tps-article p {
      margin: 0.5em 0;
    }
    .tps-article a {
      color: #3598db;
      text-decoration: none;
    }
    .tps-article a:hover {
      text-decoration: underline;
    }
    .tps-summary-box {
      border-radius: 12px;
      border: 1px solid #e2eef8;
      background: #f5f9ff;
      padding: 1.5em 1.8em;
      margin: 1.5em 0 2em;
    }
    .tps-summary-box p {
      margin: 0.3em 0;
    }
    .tps-summary-label {
      font-weight: 600;
    }
    .tps-btn-row {
      display: flex;
      flex-wrap: wrap;
      gap: 0.75em;
      margin: 1.2em 0 0.2em;
    }
    .tps-btn {
      display: inline-block;
      padding: 0.7em 1.6em;
      border-radius: 999px;
      border: 1px solid #3598db;
      font-size: 0.95rem;
      font-weight: 600;
      cursor: pointer;
      text-align: center;
      white-space: nowrap;
    }
    .tps-btn-primary {
      background: #3598db;
      color: #fff;
    }
    .tps-btn-primary:hover {
      background: #2077b3;
      border-color: #2077b3;
    }
    .tps-btn-outline {
      background: #fff;
      color: #3598db;
    }
    .tps-btn-outline:hover {
      background: #e7f2fc;
    }
    .tps-toc-box {
      border-radius: 12px;
      border: 1px solid #e2eef8;
      background: #f7fbff;
      padding: 1.2em 1.5em;
      margin: 2em 0;
    }
    .tps-toc-title {
      font-weight: 600;
      margin-bottom: 0.5em;
      color: #3598db;
    }
    .tps-toc-box ul {
      margin: 0.2em 0;
      padding-left: 1.2em;
    }
    .tps-toc-box li {
      margin: 0.25em 0;
    }
    .tps-highlight {
      font-weight: 600;
    }
    .tps-inline-badge {
      display: inline-block;
      padding: 0.12em 0.5em;
      border-radius: 999px;
      background: #e8f2fc;
      color: #2468aa;
      font-size: 0.75rem;
      margin-left: 0.35em;
      vertical-align: middle;
    }
    .tps-figure {
      margin: 2em auto;
      text-align: center;
      max-width: 520px;
    }
    .tps-figure svg {
      width: 100%;
      height: auto;
      max-height: 260px;
    }
    .tps-figure figcaption {
      font-size: 0.85rem;
      color: #555;
      margin-top: 0.6em;
    }
    .tps-faq-section {
      margin-top: 2.5em;
      border-top: 1px solid #e5e5e5;
      padding-top: 1.5em;
    }
    .tps-faq-item {
      margin-bottom: 1em;
    }
    .tps-share-footer {
      margin-top: 2em;
      padding-top: 1em;
      border-top: 1px dashed #e0e0e0;
      font-size: 0.9rem;
      color: #555;
    }
    .tps-share-links {
      margin-bottom: 0.5em;
    }
    .tps-share-links span {
      margin-right: 0.75em;
    }
    @media (max-width: 640px) {
      .tps-summary-box,
      .tps-toc-box {
        padding: 1.1em 1.2em;
      }
      .tps-btn-row {
        flex-direction: column;
        align-items: stretch;
      }
      .tps-btn {
        width: 100%;
      }
    }
  