.pf-article { color: #0e1a24; line-height: 1.8; }

  .pf-chapo {
    font-size: 1.06rem;
    line-height: 1.75;
    color: #1a2e40;
    border-left: 4px solid #0c7abf;
    padding: 14px 18px;
    background: #f6f9fc;
    border-radius: 0 8px 8px 0;
    margin: 20px 0 24px;
  }

  .pf-tip {
    border-left: 4px solid #0c7abf;
    background: #f6f9fc;
    padding: 13px 16px;
    border-radius: 6px;
    margin: 20px 0;
    font-size: .96rem;
  }
  .pf-warning {
    border-left: 4px solid #e07b00;
    background: #fff8f0;
    padding: 13px 16px;
    border-radius: 6px;
    margin: 20px 0;
    font-size: .96rem;
  }

  .pf-toc {
    border: 1px solid #e6edf5;
    border-radius: 12px;
    padding: 20px 22px;
    margin: 24px 0;
    background: #f6f9fc;
  }
  .pf-toc strong { display: block; margin-bottom: 10px; font-size: 1rem; color: #0f2233; }
  .pf-toc ol { margin: 0; padding-left: 22px; }
  .pf-toc li { margin: 5px 0; font-size: .95rem; }
  .pf-toc a { color: #0c7abf; font-weight: 600; text-decoration: none; }
  .pf-toc a:hover { text-decoration: underline; }

  .pf-card {
    border: 2px solid #e6edf5;
    border-radius: 14px;
    padding: 24px;
    margin: 28px 0;
    background: #fff;
    box-shadow: 0 2px 12px rgba(12,122,191,.07);
  }
  .pf-card-icon {
    font-size: 2rem;
    margin-bottom: 10px;
    display: block;
  }
  .pf-card-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: #0f2233;
    margin-bottom: 8px;
  }
  .pf-checklist { list-style: none; padding: 0; margin: 12px 0; }
  .pf-checklist li {
    padding: 5px 0 5px 24px;
    position: relative;
    font-size: .96rem;
  }
  .pf-checklist li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #0c7abf;
    font-weight: 700;
  }
  .pf-checklist li.pf-no::before { content: "✗"; color: #b5000e; }

  .pf-compare { overflow-x: auto; margin: 24px 0; }
  .pf-compare table { width: 100%; border-collapse: collapse; font-size: .93rem; }
  .pf-compare th,
  .pf-compare td { border: 1px solid #e6edf5; padding: 11px 13px; vertical-align: top; text-align: left; }
  .pf-compare th { background: #f2f6fb; font-weight: 700; color: #0f2233; }
  .pf-compare tr:hover td { background: #f8fbfe; }
  .pf-oui { color: #137a2e; font-weight: 700; }
  .pf-non { color: #b5000e; font-weight: 700; }

  .pf-cta {
    border: 2px solid #e6edf5;
    background: linear-gradient(135deg, #f0f8ff 0%, #e8f3fb 100%);
    padding: 24px;
    border-radius: 14px;
    margin: 32px 0;
  }
  .pf-cta h3 { margin: 0 0 10px; color: #0f2233; font-size: 1.15rem; }
  .pf-cta-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
  .pf-btn {
    display: inline-block;
    background: #0c7abf;
    color: #fff !important;
    padding: 11px 20px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 700;
    font-size: .95rem;
  }
  .pf-btn:hover { background: #0a5f96; }
  .pf-btn-outline {
    display: inline-block;
    border: 2px solid #0c7abf;
    color: #0c7abf !important;
    padding: 9px 18px;
    border-radius: 8px;
    text-decoration: none !important;
    font-weight: 700;
    font-size: .95rem;
  }
  .pf-btn-outline:hover { background: #0c7abf; color: #fff !important; }

  .pf-chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 16px 0; }
  .pf-chip {
    display: inline-block;
    padding: 8px 16px;
    border-radius: 999px;
    border: 2px solid #0c7abf;
    color: #0b5ea8 !important;
    text-decoration: none !important;
    font-weight: 700;
    font-size: .88rem;
    background: #fff;
  }
  .pf-chip:hover, .pf-chip-solid {
    background: #0c7abf;
    color: #fff !important;
    border-color: #0c7abf;
  }

  .pf-faq-item { border-bottom: 1px solid #e6edf5; padding: 18px 0; }
  .pf-faq-q { font-weight: 700; color: #0f2233; font-size: 1.02rem; margin-bottom: 8px; }
  .pf-faq-a { font-size: .96rem; color: #1a2e40; line-height: 1.75; }

  @media (max-width: 600px) {
    .pf-compare th, .pf-compare td { padding: 8px; font-size: .85rem; }
    .pf-cta-actions { flex-direction: column; }
  }
