
    .tps-article {
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: #111827;
      line-height: 1.6;
      max-width: 860px;
      margin: 0 auto;
      padding: 16px 12px 40px;
    }
    .tps-article h1,
    .tps-article h2,
    .tps-article h3 {
      color: #111827;
      line-height: 1.3;
      margin-top: 1.6em;
      margin-bottom: 0.3em;
    }
    .tps-article h1 {
      font-size: 1.9rem;
      margin-top: 0.2em;
      margin-bottom: 0.6em;
    }
    .tps-article h2 {
      font-size: 1.35rem;
    }
    .tps-article h3 {
      font-size: 1.12rem;
    }
    .tps-article p {
      margin: 0.4em 0 0.4em;
      font-size: 0.98rem;
    }
    .tps-article a {
      color: #3598db;
      text-decoration: none;
    }
    .tps-article a:hover {
      text-decoration: underline;
    }
    .tps-article ul,
    .tps-article ol {
      padding-left: 1.2rem;
      margin: 0.4em 0 0.6em;
      font-size: 0.96rem;
    }

    .tps-intro-lead {
      font-size: 1.02rem;
      margin-bottom: 0.8em;
    }
    .tps-intro-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px 18px;
      margin-bottom: 1em;
      font-size: 0.9rem;
    }
    .tps-intro-grid div {
      background: #f9fafb;
      border: 1px solid #e5e7eb;
      border-radius: 8px;
      padding: 8px 10px;
    }
    .tps-intro-grid h3 {
      margin: 0 0 2px;
      font-size: 0.8rem;
      text-transform: uppercase;
      letter-spacing: 0.03em;
      color: #4b5563;
    }
    .tps-intro-grid p {
      margin: 0;
      color: #374151;
    }

    .tps-toc {
      border-left: 3px solid #3598db;
      background: #f3f4ff;
      padding: 10px 14px;
      margin: 0 0 1.3em;
      font-size: 0.9rem;
    }
    .tps-toc strong {
      display: block;
      margin-bottom: 4px;
    }
    .tps-toc ol {
      margin: 0;
      padding-left: 1.1rem;
    }
    .tps-toc li {
      margin: 2px 0;
    }

    .tps-figure {
      margin: 1.2em 0;
      padding: 10px;
      border-radius: 10px;
      border: 1px solid #e5e7eb;
      background: #ffffff;
    }
    .tps-figure svg {
      display: block;
      max-width: 100%;
      height: auto;
    }
    .tps-figure figcaption {
      margin-top: 6px;
      font-size: 0.85rem;
      color: #4b5563;
    }

    .tps-cta-group {
      margin: 1.4em 0 1.2em;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }
    .tps-btn-primary,
    .tps-btn-secondary {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 7px 14px;
      border-radius: 999px;
      font-size: 0.9rem;
      border: 1px solid transparent;
      cursor: pointer;
      white-space: nowrap;
    }
    .tps-btn-primary {
      background: #3598db;
      color: #ffffff;
      border-color: #3598db;
    }
    .tps-btn-secondary {
      background: #ffffff;
      color: #111827;
      border-color: #d1d5db;
    }
    .tps-btn-primary:hover {
      background: #1d7fbe;
      border-color: #1d7fbe;
    }
    .tps-btn-secondary:hover {
      background: #f3f4f6;
    }

    .tps-faq h3 {
      margin-top: 1.1em;
      margin-bottom: 0.2em;
    }
    .tps-faq p {
      margin-top: 0.2em;
    }

    @media (max-width: 768px) {
      .tps-intro-grid {
        grid-template-columns: 1fr;
      }
      .tps-cta-group {
        flex-direction: column;
        align-items: flex-start;
      }
    }
  