403Webshell
Server IP : 104.21.73.108  /  Your IP : 216.73.216.59
Web Server : Apache/2
System : Linux cat167-197.static.lnwhostname.com 5.10.0-20-amd64 #1 SMP Debian 5.10.158-2 (2022-12-13) x86_64
User : paphayomho ( 1042)
PHP Version : 5.6.40
Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/paphayomho/domains/paphayomhospital.go.th/private_html/HA2569/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/paphayomho/domains/paphayomhospital.go.th/private_html/HA2569/ServiceProfile_den69.html
<!DOCTYPE html>
<html lang="th">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Service Profile กลุ่มงานทันตกรรม โรงพยาบาลป่าพะยอม 2569</title>
<link href="https://fonts.googleapis.com/css2?family=Sarabun:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/chart.umd.min.js"></script>
<style>
  /* ======================================
     CSS VARIABLES & BASE
  ====================================== */
  :root {
    --green-900: #0f3d2e;
    --green-800: #1a5c42;
    --green-700: #1e7a55;
    --green-600: #22926a;
    --green-500: #2aab7d;
    --green-400: #3dc993;
    --green-300: #6dd9af;
    --green-100: #d4f5e9;
    --green-50:  #edfaf4;
    --blue-600:  #1a6fa8;
    --blue-500:  #2388c8;
    --blue-300:  #7ec8f0;
    --blue-50:   #eaf6fe;
    --amber-500: #d97706;
    --amber-100: #fef3c7;
    --red-500:   #dc2626;
    --red-100:   #fee2e2;
    --gray-900:  #111827;
    --gray-700:  #374151;
    --gray-500:  #6b7280;
    --gray-300:  #d1d5db;
    --gray-100:  #f3f4f6;
    --gray-50:   #f9fafb;
    --white:     #ffffff;
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.08);
    --shadow-md: 0 4px 16px rgba(0,0,0,0.10);
    --shadow-lg: 0 8px 32px rgba(0,0,0,0.12);
    --radius:    12px;
    --radius-sm: 8px;
  }

  * { box-sizing: border-box; margin: 0; padding: 0; }

  body {
    font-family: 'Sarabun', 'Noto Sans Thai', sans-serif;
    background: var(--gray-50);
    color: var(--gray-900);
    line-height: 1.7;
    font-size: 15px;
  }

  /* ======================================
     PRINT STYLES
  ====================================== */
  @media print {
    .no-print { display: none !important; }
    .section { page-break-inside: avoid; }
    body { background: white; font-size: 13px; }
    .hero { background: var(--green-800) !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    .card { box-shadow: 0 0 1px #ccc; border: 1px solid #ddd; }
  }

  /* ======================================
     LAYOUT UTILITIES
  ====================================== */
  .container { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
  .grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
  .grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .grid-5 { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
  .flex { display: flex; }
  .flex-center { display: flex; align-items: center; justify-content: center; }
  .gap-12 { gap: 12px; }

  @media (max-width: 768px) {
    .grid-2, .grid-3, .grid-4, .grid-5 { grid-template-columns: 1fr; }
    .container { padding: 0 16px; }
  }
  @media (max-width: 1024px) {
    .grid-4 { grid-template-columns: repeat(2, 1fr); }
    .grid-5 { grid-template-columns: repeat(3, 1fr); }
  }

  /* ======================================
     SECTION
  ====================================== */
  .section {
    padding: 40px 0;
  }
  .section-alt {
    background: var(--white);
  }
  .section-title {
    font-size: 22px;
    font-weight: 700;
    color: var(--green-800);
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .section-title .icon {
    width: 32px; height: 32px;
    background: var(--green-100);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px;
  }
  .section-subtitle {
    color: var(--gray-500);
    font-size: 14px;
    margin-bottom: 28px;
  }
  .divider {
    width: 48px; height: 4px;
    background: linear-gradient(90deg, var(--green-500), var(--blue-500));
    border-radius: 2px;
    margin: 10px 0 24px;
  }

  /* ======================================
     CARD
  ====================================== */
  .card {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    padding: 24px;
    border: 1px solid rgba(0,0,0,0.05);
    transition: box-shadow 0.2s;
  }
  .card:hover { box-shadow: var(--shadow-md); }
  .card-sm { padding: 16px; }
  .card-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--gray-500);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 8px;
  }

  /* ======================================
     TOP NAV (Print Button)
  ====================================== */
  .topbar {
    background: var(--green-900);
    padding: 10px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: sticky;
    top: 0;
    z-index: 100;
  }
  .topbar-brand {
    color: var(--green-300);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.03em;
  }
  .btn-print {
    background: var(--green-600);
    color: white;
    border: none;
    padding: 7px 18px;
    border-radius: 20px;
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: background 0.2s;
  }
  .btn-print:hover { background: var(--green-500); }

  /* ======================================
     HERO SECTION
  ====================================== */
  .hero {
    background: linear-gradient(135deg, var(--green-900) 0%, var(--green-800) 50%, #1a4a6b 100%);
    color: white;
    padding: 60px 0 50px;
    position: relative;
    overflow: hidden;
  }
  .hero::before {
    content: '';
    position: absolute;
    top: -40px; right: -60px;
    width: 320px; height: 320px;
    border-radius: 50%;
    background: rgba(255,255,255,0.04);
    pointer-events: none;
  }
  .hero::after {
    content: '';
    position: absolute;
    bottom: -80px; left: -40px;
    width: 260px; height: 260px;
    border-radius: 50%;
    background: rgba(255,255,255,0.03);
    pointer-events: none;
  }
  .hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: 20px;
    padding: 5px 14px;
    font-size: 13px;
    color: var(--green-300);
    margin-bottom: 20px;
    font-weight: 600;
  }
  .hero h1 {
    font-size: 36px;
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: 6px;
  }
  .hero h2 {
    font-size: 18px;
    font-weight: 400;
    color: rgba(255,255,255,0.8);
    margin-bottom: 4px;
  }
  .hero-date {
    font-size: 13px;
    color: var(--green-300);
    margin-bottom: 28px;
  }
  .hero-purpose {
    background: rgba(255,255,255,0.08);
    border-left: 4px solid var(--green-400);
    padding: 16px 20px;
    border-radius: 0 8px 8px 0;
    font-size: 15px;
    color: rgba(255,255,255,0.92);
    margin-bottom: 20px;
    font-style: italic;
  }
  .hero-message {
    background: rgba(42,171,125,0.15);
    border: 1px solid rgba(42,171,125,0.3);
    padding: 16px 20px;
    border-radius: 8px;
    font-size: 14px;
    color: var(--green-300);
    font-weight: 500;
  }
  .hero-message strong { color: white; }
  .hero-kpi-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-top: 36px;
  }
  .hero-kpi {
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 10px;
    padding: 16px;
    text-align: center;
  }
  .hero-kpi .val {
    font-size: 28px;
    font-weight: 800;
    color: var(--green-300);
    display: block;
  }
  .hero-kpi .lbl {
    font-size: 12px;
    color: rgba(255,255,255,0.65);
    margin-top: 2px;
  }
  @media (max-width: 768px) {
    .hero h1 { font-size: 26px; }
    .hero-kpi-row { grid-template-columns: repeat(2,1fr); }
  }

  /* ======================================
     SERVICE IDENTITY CARDS
  ====================================== */
  .identity-card {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
    padding: 22px;
    border-top: 4px solid var(--green-500);
  }
  .identity-card.blue { border-top-color: var(--blue-500); }
  .identity-card.amber { border-top-color: var(--amber-500); }
  .identity-card h4 {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--green-700);
    margin-bottom: 12px;
    display: flex; align-items: center; gap: 8px;
  }
  .identity-card.blue h4 { color: var(--blue-600); }
  .identity-card.amber h4 { color: var(--amber-500); }
  .identity-card ul {
    list-style: none;
    display: flex; flex-direction: column; gap: 6px;
  }
  .identity-card ul li {
    display: flex; align-items: flex-start; gap: 8px;
    font-size: 14px; color: var(--gray-700);
  }
  .identity-card ul li::before {
    content: '▸';
    color: var(--green-500);
    font-size: 12px;
    margin-top: 3px;
    flex-shrink: 0;
  }
  .identity-card.blue ul li::before { color: var(--blue-500); }
  .identity-card.amber ul li::before { color: var(--amber-500); }

  /* ======================================
     CAPACITY ICON CARDS
  ====================================== */
  .cap-card {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
    padding: 20px 16px;
    text-align: center;
    transition: transform 0.2s, box-shadow 0.2s;
  }
  .cap-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
  .cap-icon {
    font-size: 32px;
    margin-bottom: 10px;
    display: block;
  }
  .cap-num {
    font-size: 28px;
    font-weight: 800;
    color: var(--green-700);
    line-height: 1;
    display: block;
  }
  .cap-label {
    font-size: 13px;
    color: var(--gray-500);
    margin-top: 4px;
    font-weight: 500;
  }
  .cap-note {
    font-size: 11px;
    color: var(--amber-500);
    margin-top: 4px;
    font-weight: 600;
  }

  /* ======================================
     CHARTS
  ====================================== */
  .chart-panel {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
    padding: 24px;
  }
  .chart-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--gray-700);
    margin-bottom: 4px;
  }
  .chart-sub {
    font-size: 12px;
    color: var(--gray-500);
    margin-bottom: 16px;
  }
  .chart-note {
    font-size: 12px;
    color: var(--amber-500);
    margin-top: 12px;
    padding: 8px 12px;
    background: var(--amber-100);
    border-radius: 6px;
    font-weight: 500;
  }

  /* ======================================
     PROCESS FLOW
  ====================================== */
  .process-flow {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  .process-step {
    display: grid;
    grid-template-columns: 60px 1fr;
    gap: 0 20px;
    position: relative;
  }
  .process-step:not(:last-child)::before {
    content: '';
    position: absolute;
    left: 29px;
    top: 60px;
    bottom: 0;
    width: 2px;
    background: linear-gradient(180deg, var(--green-300), var(--green-100));
    z-index: 0;
  }
  .step-num {
    width: 60px; height: 60px;
    border-radius: 50%;
    background: var(--green-600);
    color: white;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px;
    font-weight: 800;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    box-shadow: 0 4px 12px rgba(34,146,106,0.35);
  }
  .step-content {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.06);
    padding: 20px;
    margin-bottom: 16px;
  }
  .step-content h4 {
    font-size: 16px;
    font-weight: 700;
    color: var(--green-800);
    margin-bottom: 12px;
  }
  .step-meta {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
  }
  .step-meta-item {
    background: var(--gray-50);
    border-radius: 8px;
    padding: 10px 12px;
  }
  .step-meta-item .sml {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 4px;
  }
  .step-meta-item .txt {
    font-size: 13px;
    color: var(--gray-700);
    line-height: 1.5;
  }
  .meta-expect .sml { color: var(--green-700); }
  .meta-risk .sml { color: var(--red-500); }
  .meta-control .sml { color: var(--blue-600); }
  .meta-pi .sml { color: var(--amber-500); }
  @media (max-width: 768px) {
    .step-meta { grid-template-columns: 1fr; }
    .process-step { grid-template-columns: 1fr; }
    .process-step .step-num { margin-bottom: 12px; }
    .process-step::before { display: none; }
  }

  /* ======================================
     RISK CARDS
  ====================================== */
  .risk-area {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
    overflow: hidden;
  }
  .risk-area-header {
    padding: 14px 20px;
    font-weight: 700;
    font-size: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .risk-area-header.issues { background: var(--green-800); color: white; }
  .risk-area-header.challenges { background: var(--blue-600); color: white; }
  .risk-area-header.risks { background: #7c3aed; color: white; }
  .risk-list {
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .risk-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px;
    color: var(--gray-700);
    padding: 10px 12px;
    background: var(--gray-50);
    border-radius: 8px;
  }
  .risk-dot {
    width: 8px; height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 6px;
  }
  .dot-green { background: var(--green-500); }
  .dot-blue { background: var(--blue-500); }
  .dot-red { background: var(--red-500); }
  .dot-purple { background: #7c3aed; }

  /* ======================================
     KPI TABLE & BADGES
  ====================================== */
  .kpi-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
  }
  .kpi-table th {
    background: var(--green-800);
    color: white;
    padding: 10px 14px;
    text-align: left;
    font-size: 13px;
    font-weight: 600;
  }
  .kpi-table td {
    padding: 10px 14px;
    border-bottom: 1px solid var(--gray-100);
    vertical-align: middle;
  }
  .kpi-table tr:hover td { background: var(--gray-50); }
  .badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
  }
  .badge-pass { background: #d1fae5; color: #065f46; }
  .badge-warn { background: var(--amber-100); color: #92400e; }
  .badge-fail { background: var(--red-100); color: #991b1b; }
  .badge-na { background: var(--gray-100); color: var(--gray-500); }

  /* ======================================
     STORYTELLING / ANALYSIS
  ====================================== */
  .story-card {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
    padding: 22px;
    border-left: 5px solid var(--green-500);
    transition: border-color 0.2s;
  }
  .story-card.warn { border-left-color: var(--amber-500); }
  .story-card.issue { border-left-color: var(--red-500); }
  .story-card.info { border-left-color: var(--blue-500); }
  .story-card h4 {
    font-size: 15px;
    font-weight: 700;
    color: var(--green-800);
    margin-bottom: 8px;
  }
  .story-card.warn h4 { color: var(--amber-500); }
  .story-card.issue h4 { color: var(--red-500); }
  .story-card.info h4 { color: var(--blue-600); }
  .story-card p {
    font-size: 14px;
    color: var(--gray-700);
    line-height: 1.7;
  }

  /* ======================================
     CQI / IMPROVEMENT
  ====================================== */
  .cqi-card {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
    overflow: hidden;
  }
  .cqi-header {
    background: linear-gradient(135deg, var(--green-700), var(--green-600));
    color: white;
    padding: 16px 20px;
  }
  .cqi-header h4 { font-size: 15px; font-weight: 700; margin-bottom: 4px; }
  .cqi-header p { font-size: 13px; opacity: 0.85; }
  .cqi-body { padding: 20px; }
  .cqi-result {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 12px;
  }
  .cqi-year {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
  }
  .cqi-bar-wrap {
    width: 32px;
    height: 80px;
    background: var(--gray-100);
    border-radius: 4px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
  }
  .cqi-bar {
    width: 100%;
    background: linear-gradient(180deg, var(--green-400), var(--green-600));
    border-radius: 4px 4px 0 0;
    transition: height 0.6s ease;
  }
  .cqi-yr-label { font-size: 11px; color: var(--gray-500); }
  .cqi-yr-val { font-size: 13px; font-weight: 700; color: var(--green-700); }

  /* ======================================
     REVIEW / LEARNING
  ====================================== */
  .review-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 20px;
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
  }
  .review-icon {
    width: 40px; height: 40px;
    border-radius: 10px;
    background: var(--green-100);
    display: flex; align-items: center; justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
  }
  .review-item h5 {
    font-size: 14px;
    font-weight: 700;
    color: var(--green-800);
    margin-bottom: 4px;
  }
  .review-item p { font-size: 13px; color: var(--gray-600); line-height: 1.6; }

  /* ======================================
     ROADMAP
  ====================================== */
  .roadmap-item {
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
    border: 1px solid rgba(0,0,0,0.05);
    padding: 18px 20px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    border-left: 4px solid var(--green-500);
  }
  .roadmap-icon {
    font-size: 22px;
    flex-shrink: 0;
    margin-top: 2px;
  }
  .roadmap-item h5 { font-size: 15px; font-weight: 700; color: var(--green-800); margin-bottom: 4px; }
  .roadmap-item p { font-size: 13px; color: var(--gray-600); line-height: 1.6; }
  .roadmap-tag {
    display: inline-block;
    background: var(--green-100);
    color: var(--green-700);
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
    margin-top: 6px;
  }

  /* ======================================
     EXECUTIVE SUMMARY
  ====================================== */
  .exec-card {
    background: linear-gradient(135deg, var(--green-900), #1a3a5c);
    border-radius: var(--radius);
    padding: 32px;
    color: white;
  }
  .exec-card h3 {
    font-size: 20px;
    font-weight: 800;
    color: var(--green-300);
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .key-message {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 14px 16px;
    background: rgba(255,255,255,0.07);
    border-radius: 8px;
    border-left: 3px solid var(--green-400);
    margin-bottom: 12px;
  }
  .key-message .num {
    width: 28px; height: 28px;
    border-radius: 50%;
    background: var(--green-600);
    display: flex; align-items: center; justify-content: center;
    font-size: 13px; font-weight: 800;
    flex-shrink: 0;
  }
  .key-message p { font-size: 14px; color: rgba(255,255,255,0.9); line-height: 1.6; }

  /* ======================================
     FOOTER
  ====================================== */
  .footer {
    background: var(--green-900);
    color: rgba(255,255,255,0.5);
    text-align: center;
    padding: 24px;
    font-size: 13px;
  }
  .footer strong { color: var(--green-300); }
</style>
</head>
<body>

<!-- ======================================
     TOP NAV BAR
====================================== -->
<div class="topbar no-print">
  <span class="topbar-brand">🦷 Service Profile ทันตกรรม | รพ.ป่าพะยอม 2569</span>
  <button class="btn-print" onclick="window.print()">🖨️ พิมพ์ / Export PDF</button>
</div>

<!-- ======================================
     HERO SECTION
====================================== -->
<section class="hero section">
  <div class="container">
    <div class="hero-badge">🦷 HA Re-Accreditation&nbsp;&nbsp;·&nbsp;&nbsp;Service Profile 2569</div>
    <h1>Service Profile<br>กลุ่มงานทันตกรรม</h1>
    <h2>โรงพยาบาลป่าพะยอม&nbsp;&nbsp;อำเภอป่าพะยอม&nbsp;&nbsp;จังหวัดพัทลุง</h2>
    <p class="hero-date">📅 ปรับปรุงล่าสุด 31 มีนาคม 2569</p>
    <div class="hero-purpose">
      "ผู้รับบริการได้รับบริการที่เหมาะสม ปลอดภัย สามารถดูแลสุขภาพช่องปากของตนเองได้ และมีความพึงพอใจในบริการ"
    </div>
    <div class="hero-message">
      <strong>Executive Key Message:</strong> กลุ่มงานทันตกรรมมุ่งเพิ่มการเข้าถึงบริการ ควบคุมความเสี่ยงทางคลินิก ลดโรคฟันผุในเด็ก และพัฒนาระบบบริการเชิงรุกในชุมชน
    </div>
    <div class="hero-kpi-row">
      <div class="hero-kpi">
        <span class="val">34,333</span>
        <span class="lbl">งานบริการสูงสุด (ปี 2567)</span>
      </div>
      <div class="hero-kpi">
        <span class="val">0%</span>
        <span class="lbl">ภาวะแทรกซ้อน (2567–2569)</span>
      </div>
      <div class="hero-kpi">
        <span class="val">1.59%</span>
        <span class="lbl">ฟันผุเด็ก 18 เดือน (ต่ำสุด ปี 2568)</span>
      </div>
      <div class="hero-kpi">
        <span class="val">5 คน</span>
        <span class="lbl">ทันตแพทย์ (รวมเฉพาะทาง 2 สาขา)</span>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 1: SERVICE IDENTITY / CONTEXT
====================================== -->
<section class="section section-alt">
  <div class="container">
    <div class="section-title"><span class="icon">📋</span>บริบทและขอบเขตการบริการ</div>
    <div class="divider"></div>
    <div class="grid-3">
      <div class="identity-card">
        <h4>🎯 หน้าที่และเป้าหมาย</h4>
        <ul>
          <li>ให้บริการส่งเสริมป้องกัน รักษาและฟื้นฟูทันตสุขภาพตามมาตรฐานวิชาชีพ</li>
          <li>ผู้รับบริการได้รับบริการที่เหมาะสมและปลอดภัย</li>
          <li>สามารถดูแลสุขภาพช่องปากตนเองได้</li>
          <li>มีความพึงพอใจในบริการ</li>
        </ul>
      </div>
      <div class="identity-card blue">
        <h4>🔭 Scope of Service</h4>
        <ul>
          <li>OPD ในเวลาราชการ 10–30 คน/วัน นัดหมาย 10–15 คน/วัน</li>
          <li>ออกหน่วย รพ.สต.บ่อทราย (อ. พ.) รพ.สต.ทุ่งชุมพล (พ.) รพ.สต.ปากเหมือง (พฤ.)</li>
          <li>โรงเรียน ศูนย์เด็กเล็ก คลินิก ANC/WCC/NCD</li>
          <li>เฉพาะทางปริทันตวิทยาและทันตกรรมประดิษฐ์</li>
          <li>ทันตกรรมเคลื่อนที่ในชุมชน</li>
        </ul>
      </div>
      <div class="identity-card amber">
        <h4>👥 กลุ่มผู้รับบริการหลัก</h4>
        <ul>
          <li>วัยมัธยมปลาย–วัยทำงาน (15–59 ปี) มากที่สุด</li>
          <li>ผู้สูงอายุ 60 ปีขึ้นไป</li>
          <li>นักเรียนประถม 6–12 ปี</li>
          <li>เด็กก่อนวัยเรียนและเด็ก 0–2 ปี</li>
          <li>เด็กมัธยมต้น 13–14 ปี</li>
          <li>ส่วนใหญ่ใช้สิทธิประกันสุขภาพถ้วนหน้า (UCS)</li>
        </ul>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 2: SERVICE CAPACITY
====================================== -->
<section class="section">
  <div class="container">
    <div class="section-title"><span class="icon">⚡</span>ศักยภาพการให้บริการ</div>
    <div class="divider"></div>
    <div class="grid-4" style="margin-bottom:24px;">
      <div class="cap-card">
        <span class="cap-icon">🦷</span>
        <span class="cap-num">1</span>
        <div class="cap-label">ทันตแพทย์เฉพาะทาง<br>ปริทันตวิทยา</div>
      </div>
      <div class="cap-card">
        <span class="cap-icon">🦴</span>
        <span class="cap-num">1</span>
        <div class="cap-label">ทันตแพทย์เฉพาะทาง<br>ทันตกรรมประดิษฐ์</div>
      </div>
      <div class="cap-card">
        <span class="cap-icon">👨‍⚕️</span>
        <span class="cap-num">3</span>
        <div class="cap-label">ทันตแพทย์ทั่วไป</div>
        <div class="cap-note">⚠️ ลาศึกษาต่อ 1 คน (ก.ค.67)</div>
      </div>
      <div class="cap-card">
        <span class="cap-icon">🩺</span>
        <span class="cap-num">3</span>
        <div class="cap-label">เจ้าพนักงานทันตสาธารณสุข<br>/ทันตาภิบาล</div>
      </div>
    </div>
    <div class="grid-4">
      <div class="cap-card">
        <span class="cap-icon">🙋</span>
        <span class="cap-num">4</span>
        <div class="cap-label">ผู้ช่วยทันตแพทย์<br>(ข้าราชการ + พกส. + ลูกจ้าง)</div>
      </div>
      <div class="cap-card">
        <span class="cap-icon">🪑</span>
        <span class="cap-num">4</span>
        <div class="cap-label">ยูนิตทันตกรรม</div>
      </div>
      <div class="cap-card">
        <span class="cap-icon">📊</span>
        <span class="cap-num">10–15</span>
        <div class="cap-label">ผู้รับบริการ / ยูนิต / วัน</div>
      </div>
      <div class="cap-card">
        <span class="cap-icon">🔬</span>
        <span class="cap-num">3</span>
        <div class="cap-label">รพ.สต. ที่ออกบริการ<br>ทุกสัปดาห์</div>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 3: SERVICE VOLUME DASHBOARD
====================================== -->
<section class="section section-alt">
  <div class="container">
    <div class="section-title"><span class="icon">📈</span>ปริมาณงานบริการ ปี 2565–2569</div>
    <div class="divider"></div>
    <div class="grid-2" style="gap:24px;">
      <div class="chart-panel">
        <div class="chart-title">งานบริการทั้งหมด (งาน)</div>
        <div class="chart-sub">แนวโน้ม 5 ปีงบประมาณ</div>
        <canvas id="chartVolume" height="200"></canvas>
        <div class="chart-note">⚠️ ปี 2569 เป็นข้อมูลครึ่งปี (ต.ค.69–มี.ค.70) จึงไม่ควรเทียบตรงกับปีเต็ม</div>
      </div>
      <div class="chart-panel">
        <div class="chart-title">การส่งต่อผู้ป่วย (ราย)</div>
        <div class="chart-sub">แนวโน้มการส่งต่อเพื่อรักษาต่อเนื่อง</div>
        <canvas id="chartReferral" height="200"></canvas>
        <div class="chart-note">📌 งานส่งต่อสะท้อนภาระงานและการเข้าถึงบริการทันตเฉพาะทางที่เพิ่มขึ้น</div>
      </div>
    </div>
    <!-- Volume by age group table -->
    <div class="card" style="margin-top:24px;">
      <div class="chart-title" style="margin-bottom:16px;">จำนวนผู้รับบริการแยกกลุ่มอายุ (HDC – เขตอำเภอป่าพะยอม)</div>
      <div style="overflow-x:auto;">
        <table class="kpi-table">
          <thead>
            <tr>
              <th>ปีงบประมาณ</th>
              <th>0–2 ปี</th>
              <th>3–5 ปี</th>
              <th>6–12 ปี</th>
              <th>13–14 ปี</th>
              <th>15–59 ปี</th>
              <th>60+ ปี</th>
              <th>รวม</th>
            </tr>
          </thead>
          <tbody>
            <tr><td>2565</td><td>712</td><td>735</td><td>1,836</td><td>32</td><td>1,720</td><td>1,098</td><td><strong>6,133</strong></td></tr>
            <tr><td>2566</td><td>624</td><td>705</td><td>2,101</td><td>537</td><td>2,741</td><td>2,478</td><td><strong>9,186</strong></td></tr>
            <tr><td>2567</td><td>584</td><td>672</td><td>2,051</td><td>288</td><td>2,860</td><td>1,918</td><td><strong>8,373</strong></td></tr>
            <tr><td>2568</td><td>498</td><td>596</td><td>1,862</td><td>366</td><td>3,959</td><td>2,466</td><td><strong>8,747</strong></td></tr>
            <tr><td>2569 (ครึ่งปี)</td><td>274</td><td>424</td><td>655</td><td>434</td><td>1,961</td><td>1,775</td><td><strong>5,523</strong></td></tr>
          </tbody>
        </table>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 4: KEY PROCESS FLOW
====================================== -->
<section class="section">
  <div class="container">
    <div class="section-title"><span class="icon">🔄</span>กระบวนการทำงานสำคัญ (Key Process)</div>
    <div class="divider"></div>
    <div class="process-flow">

      <!-- Step 1 -->
      <div class="process-step">
        <div class="step-num">1</div>
        <div class="step-content">
          <h4>เตรียมความพร้อมของอุปกรณ์/วัสดุ</h4>
          <div class="step-meta">
            <div class="step-meta-item meta-expect">
              <div class="sml">สิ่งที่คาดหวัง</div>
              <div class="txt">สถานที่และอุปกรณ์พร้อมให้บริการ มีความสะดวกรวดเร็ว ผู้รับบริการปลอดภัย</div>
            </div>
            <div class="step-meta-item meta-risk">
              <div class="sml">ความเสี่ยง</div>
              <div class="txt">เครื่องมือ/อุปกรณ์ไม่พร้อมใช้ ชำรุดกะทันหัน</div>
            </div>
            <div class="step-meta-item meta-control">
              <div class="sml">การควบคุม</div>
              <div class="txt">ตรวจเช็คอุปกรณ์ก่อนปฏิบัติงาน แจ้งซ่อม ทำแผนจัดซื้อ จัดทำทะเบียนควบคุมวัสดุ</div>
            </div>
          </div>
          <div style="margin-top:10px;"><span class="badge badge-na">📊 ตัวชี้วัด: จำนวนอุบัติการณ์ความไม่พร้อมใช้ของอุปกรณ์/วัสดุ</span></div>
        </div>
      </div>

      <!-- Step 2 -->
      <div class="process-step">
        <div class="step-num">2</div>
        <div class="step-content">
          <h4>เตรียมผู้รับบริการ (การต้อนรับ ซักประวัติ คัดกรอง)</h4>
          <div class="step-meta">
            <div class="step-meta-item meta-expect">
              <div class="sml">สิ่งที่คาดหวัง</div>
              <div class="txt">ทราบปัญหาเร่งด่วนและประวัติโรคประจำตัว ลดการเกิดภาวะแทรกซ้อนและฉุกเฉิน</div>
            </div>
            <div class="step-meta-item meta-risk">
              <div class="sml">ความเสี่ยง</div>
              <div class="txt">ซักประวัติ/บันทึกไม่ครบถ้วน แจ้งข้อมูลจำเป็นแก่ผู้รับบริการไม่ครบ</div>
            </div>
            <div class="step-meta-item meta-control">
              <div class="sml">การควบคุม</div>
              <div class="txt">ทันตแพทย์ซักประวัติสำคัญและให้ข้อมูลก่อนให้บริการทุกครั้ง ระบุตัวผู้ป่วยกับบัตรและ mit-net</div>
            </div>
          </div>
          <div style="margin-top:10px;"><span class="badge badge-na">📊 ตัวชี้วัด: ร้อยละความพึงพอใจ, จำนวนอุบัติการณ์ภาวะฉุกเฉิน</span></div>
        </div>
      </div>

      <!-- Step 3 -->
      <div class="process-step">
        <div class="step-num">3</div>
        <div class="step-content">
          <h4>วินิจฉัย วางแผนการรักษา และให้บริการทางทันตกรรม</h4>
          <div class="step-meta">
            <div class="step-meta-item meta-expect">
              <div class="sml">สิ่งที่คาดหวัง</div>
              <div class="txt">วินิจฉัยถูกต้อง ผู้รับบริการมีส่วนร่วมตัดสินใจ หาย/ทุเลาโดยไม่มีภาวะแทรกซ้อน</div>
            </div>
            <div class="step-meta-item meta-risk">
              <div class="sml">ความเสี่ยง</div>
              <div class="txt">วินิจฉัยผิด ให้การรักษาไม่เหมาะสม ผิดซี่/ตำแหน่ง ไม่ครบถ้วน</div>
            </div>
            <div class="step-meta-item meta-control">
              <div class="sml">การควบคุม</div>
              <div class="txt">วางแผนการรักษาครอบคลุม แจ้งผู้รับบริการทุกครั้ง ทบทวนองค์ความรู้วิชาการ บันทึกใน mit-net</div>
            </div>
          </div>
          <div style="margin-top:10px;"><span class="badge badge-na">📊 ตัวชี้วัด: อุบัติการณ์รักษาผิดซี่/ตำแหน่ง, ภาวะแทรกซ้อน, บูรณะซ้ำ, ความสมบูรณ์เวชระเบียน</span></div>
        </div>
      </div>

      <!-- Step 4 -->
      <div class="process-step">
        <div class="step-num">4</div>
        <div class="step-content">
          <h4>การดูแลต่อเนื่อง (Follow-up / การนัดหมาย)</h4>
          <div class="step-meta">
            <div class="step-meta-item meta-expect">
              <div class="sml">สิ่งที่คาดหวัง</div>
              <div class="txt">ผู้รับบริการได้รับการรักษาอย่างต่อเนื่องตามความจำเป็น</div>
            </div>
            <div class="step-meta-item meta-risk">
              <div class="sml">ความเสี่ยง</div>
              <div class="txt">ผู้รับบริการไม่ได้รับบริการที่เหมาะสมอย่างต่อเนื่อง ออกใบนัดผิดพลาด</div>
            </div>
            <div class="step-meta-item meta-control">
              <div class="sml">การควบคุม</div>
              <div class="txt">ทบทวนแนวการรักษาทุกครั้ง บันทึกนัดใน Google Drive ใบสื่อสาร และ mit-net ให้ตรงกัน</div>
            </div>
          </div>
          <div style="margin-top:10px;"><span class="badge badge-na">📊 ตัวชี้วัด: ร้อยละผู้รับบริการไม่ได้รับบริการตามนัดจากความผิดพลาดของระบบ</span></div>
        </div>
      </div>

      <!-- Step 5 -->
      <div class="process-step">
        <div class="step-num">5</div>
        <div class="step-content">
          <h4>การจำหน่ายผู้ป่วย (Discharge)</h4>
          <div class="step-meta">
            <div class="step-meta-item meta-expect">
              <div class="sml">สิ่งที่คาดหวัง</div>
              <div class="txt">ผู้รับบริการได้รับคำแนะนำหลังการรักษาที่เหมาะสมและดูแลตนเองได้ถูกต้อง</div>
            </div>
            <div class="step-meta-item meta-risk">
              <div class="sml">ความเสี่ยง</div>
              <div class="txt">ปฏิบัติตนไม่ถูกต้องจากได้รับคำแนะนำไม่เหมาะสม เกิดภาวะแทรกซ้อนหลังการรักษา</div>
            </div>
            <div class="step-meta-item meta-control">
              <div class="sml">การควบคุม</div>
              <div class="txt">ทั้งทันตแพทย์ผู้ให้การรักษาและเจ้าหน้าที่จำหน่ายผู้รับบริการเป็นผู้ให้คำแนะนำ ทบทวนองค์ความรู้</div>
            </div>
          </div>
          <div style="margin-top:10px;"><span class="badge badge-na">📊 ตัวชี้วัด: อุบัติการณ์ภาวะแทรกซ้อน, ร้อยละการบูรณะฟันซ้ำภายใน 6 เดือน</span></div>
        </div>
      </div>

    </div><!-- end process-flow -->
  </div>
</section>

<!-- ======================================
     SECTION 5: QUALITY ISSUES & RISKS
====================================== -->
<section class="section section-alt">
  <div class="container">
    <div class="section-title"><span class="icon">⚠️</span>ประเด็นคุณภาพ ความท้าทาย และความเสี่ยง</div>
    <div class="divider"></div>
    <div class="grid-3">
      <!-- Quality Issues -->
      <div class="risk-area">
        <div class="risk-area-header issues">
          <span>✅</span> ประเด็นคุณภาพสำคัญ
        </div>
        <div class="risk-list">
          <div class="risk-item"><div class="risk-dot dot-green"></div>ให้บริการตามมาตรฐานวิชาชีพ ตาม Job description</div>
          <div class="risk-item"><div class="risk-dot dot-green"></div>ประสิทธิภาพและประสิทธิผลการปฏิบัติงาน</div>
          <div class="risk-item"><div class="risk-dot dot-green"></div>ความปลอดภัยผู้รับบริการและเจ้าหน้าที่</div>
          <div class="risk-item"><div class="risk-dot dot-green"></div>การดูแลสุขภาพช่องปากอย่างเหมาะสมตามกลุ่มอายุ</div>
          <div class="risk-item"><div class="risk-dot dot-green"></div>ความพึงพอใจของผู้รับบริการ</div>
        </div>
      </div>
      <!-- Challenges -->
      <div class="risk-area">
        <div class="risk-area-header challenges">
          <span>🎯</span> ความท้าทายสำคัญ
        </div>
        <div class="risk-list">
          <div class="risk-item"><div class="risk-dot dot-blue"></div>เพิ่มการเข้าถึงบริการทันตกรรม / ขยายศักยภาพให้บริการ</div>
          <div class="risk-item"><div class="risk-dot dot-blue"></div>ลดโรคฟันน้ำนมผุและฟันแท้ผุในเด็ก</div>
          <div class="risk-item"><div class="risk-dot dot-blue"></div>งานส่งเสริมป้องกันทางทันตกรรมในผู้สูงอายุ</div>
          <div class="risk-item"><div class="risk-dot dot-blue"></div>การจัดการระบบนัดผู้ป่วยให้มีประสิทธิภาพ</div>
          <div class="risk-item"><div class="risk-dot dot-blue"></div>ความสมบูรณ์ของเวชระเบียนและการบันทึกข้อมูล</div>
        </div>
      </div>
      <!-- Risks -->
      <div class="risk-area">
        <div class="risk-area-header risks">
          <span>🔴</span> ความเสี่ยงสำคัญ
        </div>
        <div class="risk-list">
          <div class="risk-item"><div class="risk-dot dot-red"></div>ภาวะแทรกซ้อนหลังการรักษา (bleeding, infection)</div>
          <div class="risk-item"><div class="risk-dot dot-red"></div>การรักษาผิดคน ผิดข้าง ผิดตำแหน่ง</div>
          <div class="risk-item"><div class="risk-dot dot-red"></div>การซักประวัติไม่ครบถ้วน</div>
          <div class="risk-item"><div class="risk-dot dot-red"></div>ระบบนัดผิดพลาด</div>
          <div class="risk-item"><div class="risk-dot dot-red"></div>บุคลากรบาดเจ็บจากการปฏิบัติงาน (Occupational hazard)</div>
        </div>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 6: KPI DASHBOARD
====================================== -->
<section class="section">
  <div class="container">
    <div class="section-title"><span class="icon">🏆</span>ตัวชี้วัดผลการดำเนินงาน</div>
    <div class="divider"></div>
    <p class="section-subtitle">เปรียบเทียบเป้าหมายกับผลลัพธ์จริง | 🟢 ผ่านเป้า &nbsp; 🟡 ใกล้เป้า/ต้องติดตาม &nbsp; 🔴 ไม่ผ่านเป้า &nbsp; ⬜ ไม่มีข้อมูล</p>

    <div style="overflow-x:auto;">
      <table class="kpi-table">
        <thead>
          <tr>
            <th style="min-width:280px;">ตัวชี้วัด</th>
            <th>เป้าหมาย</th>
            <th>ปี 2565</th>
            <th>ปี 2566</th>
            <th>ปี 2567</th>
            <th>ปี 2568</th>
            <th>ปี 2569 (ครึ่งปี)</th>
            <th>สถานะล่าสุด</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td><strong>อุบัติการณ์ภาวะฉุกเฉินในคลินิก</strong></td>
            <td>0 ราย</td>
            <td>0</td>
            <td>0</td>
            <td>0</td>
            <td>1<br><small style="color:var(--gray-500)">ญาติผู้ป่วยเป็นลม</small></td>
            <td>0</td>
            <td><span class="badge badge-pass">🟢 ผ่าน</span></td>
          </tr>
          <tr>
            <td><strong>ภาวะแทรกซ้อนจากการรักษา</strong></td>
            <td>≤ 0.5%</td>
            <td>0.08%</td>
            <td>0.05%</td>
            <td>0%</td>
            <td>0%</td>
            <td>0%</td>
            <td><span class="badge badge-pass">🟢 ผ่าน</span></td>
          </tr>
          <tr>
            <td><strong>อัตราบูรณะฟันซ้ำภายใน 6 เดือน</strong></td>
            <td>≤ 0.5%</td>
            <td>0.11%</td>
            <td>0%</td>
            <td>0%</td>
            <td>0%</td>
            <td>0%</td>
            <td><span class="badge badge-pass">🟢 ผ่าน</span></td>
          </tr>
          <tr>
            <td><strong>ความพึงพอใจผู้รับบริการ</strong></td>
            <td>≥ 90%</td>
            <td>89.13%</td>
            <td>94.42%</td>
            <td>94.68%</td>
            <td>89.41%</td>
            <td>ไม่มีข้อมูลในเอกสาร</td>
            <td><span class="badge badge-warn">🟡 ต้องติดตาม</span></td>
          </tr>
          <tr>
            <td><strong>ความสมบูรณ์ของเวชระเบียน</strong></td>
            <td>≥ 95%</td>
            <td>97.31%</td>
            <td>92.00%</td>
            <td>95.74%</td>
            <td>91.82%</td>
            <td>ไม่มีข้อมูลในเอกสาร</td>
            <td><span class="badge badge-warn">🟡 ต้องติดตาม</span></td>
          </tr>
          <tr>
            <td><strong>โรคฟันผุเด็ก 18 เดือน</strong></td>
            <td>≤ 10%</td>
            <td>5.26%</td>
            <td>3.92%</td>
            <td>3.77%</td>
            <td>1.59%</td>
            <td>2.70%</td>
            <td><span class="badge badge-pass">🟢 ผ่าน</span></td>
          </tr>
          <tr>
            <td><strong>โรคฟันผุเด็ก 3 ปี</strong></td>
            <td>≤ 50%</td>
            <td>32.06%</td>
            <td>38.78%</td>
            <td>43.59%</td>
            <td>37.35%</td>
            <td>35.48%</td>
            <td><span class="badge badge-pass">🟢 ผ่าน</span></td>
          </tr>
          <tr>
            <td><strong>โรคฟันแท้ผุเด็ก 6 ปี</strong></td>
            <td>≤ 20%</td>
            <td>11.49%</td>
            <td>3.13%</td>
            <td>3.85%</td>
            <td>5.17%</td>
            <td>ไม่มีข้อมูลในเอกสาร</td>
            <td><span class="badge badge-pass">🟢 ผ่าน</span></td>
          </tr>
          <tr>
            <td><strong>ความครอบคลุมการให้บริการทันตกรรม (CUP)</strong></td>
            <td>≥ 50%</td>
            <td>21.81%</td>
            <td>32.62%</td>
            <td>30.50%</td>
            <td>33.05%</td>
            <td>21.06%</td>
            <td><span class="badge badge-fail">🔴 ไม่ผ่าน</span></td>
          </tr>
        </tbody>
      </table>
    </div>

    <!-- KPI Charts Row -->
    <div class="grid-2" style="margin-top:28px; gap:24px;">
      <div class="chart-panel">
        <div class="chart-title">ฟันผุในเด็ก 18 เดือน และ 3 ปี (%)</div>
        <div class="chart-sub">เปรียบเทียบกับเป้าหมาย (10% และ 50%)</div>
        <canvas id="chartCaries" height="200"></canvas>
      </div>
      <div class="chart-panel">
        <div class="chart-title">ความครอบคลุมบริการทันตกรรม (%)</div>
        <div class="chart-sub">เทียบเป้าหมายจังหวัด 50%</div>
        <canvas id="chartCoverage" height="200"></canvas>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 7: DATA STORYTELLING
====================================== -->
<section class="section section-alt">
  <div class="container">
    <div class="section-title"><span class="icon">💬</span>การวิเคราะห์และตีความผลลัพธ์</div>
    <div class="divider"></div>
    <div class="grid-2" style="gap:16px;">
      <div class="story-card">
        <h4>✅ ความปลอดภัยทางคลินิกอยู่ในระดับดีมาก</h4>
        <p>ภาวะแทรกซ้อนและการบูรณะฟันซ้ำอยู่ที่ร้อยละ 0 ต่อเนื่องตั้งแต่ปี 2567–ครึ่งแรกปี 2569 สะท้อนการควบคุมคุณภาพทางคลินิกที่เข้มแข็ง</p>
      </div>
      <div class="story-card">
        <h4>✅ ผลลัพธ์เด็ก 18 เดือนดีขึ้นอย่างชัดเจน</h4>
        <p>อัตราฟันผุเด็ก 18 เดือนลดลงต่อเนื่องจาก 10.71% (2564) เหลือเพียง 1.59% (2568) สะท้อนผลของ WCC, fluoride varnish, ANC และการติดตามต่อเนื่องทุก 3 เดือน</p>
      </div>
      <div class="story-card info">
        <h4>ℹ️ กรณีภาวะฉุกเฉินปี 2568</h4>
        <p>มีญาติผู้ป่วยเด็กเป็นลมหน้าห้องทันตกรรมเนื่องจากกลัวการทำฟัน 1 ราย ได้ส่งต่อสังเกตอาการที่ห้องฉุกเฉินและกลับบ้านได้อย่างปลอดภัย ไม่ใช่อุบัติการณ์ภายในคลินิก</p>
      </div>
      <div class="story-card warn">
        <h4>⚠️ ความพึงพอใจปี 2568 ต่ำกว่าเป้าเล็กน้อย</h4>
        <p>ผลปี 2568 อยู่ที่ 89.41% ต่ำกว่าเป้า 90% เล็กน้อย ปัจจัยสำคัญคือคะแนนสิ่งอำนวยความสะดวกและระบบคิว ซึ่งได้มีการปรับระบบคิวเป็นตามลำดับเวลาแล้ว</p>
      </div>
      <div class="story-card warn">
        <h4>⚠️ ความสมบูรณ์เวชระเบียนปี 2568 ไม่ผ่านเป้า</h4>
        <p>ปี 2568 อยู่ที่ 91.82% ต่ำกว่าเป้า 95% โดยส่วนที่ไม่สมบูรณ์คือ PMH 2 บันทึก และข้อมูลส่งเสริมสุขภาพช่องปากอีก 18 บันทึก ต้องเน้นการบันทึกในสองส่วนนี้</p>
      </div>
      <div class="story-card issue">
        <h4>🔴 ความครอบคลุมบริการเป็นช่องว่างสำคัญ</h4>
        <p>ตั้งแต่เริ่มดำเนินการจนถึงปี 2568 ความครอบคลุมอยู่ที่ 30–33% ยังไม่เคยผ่านเป้าหมายจังหวัด 50% ต้องเพิ่มบริการเชิงรุก รพ.สต. และออกหน่วยชุมชนอย่างต่อเนื่อง</p>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 8: CQI / IMPROVEMENT PROJECTS
====================================== -->
<section class="section">
  <div class="container">
    <div class="section-title"><span class="icon">🔬</span>โครงการพัฒนาคุณภาพ (CQI)</div>
    <div class="divider"></div>
    <div class="grid-2" style="gap:24px; margin-bottom:24px;">

      <!-- CQI 1: Elderly -->
      <div class="cqi-card">
        <div class="cqi-header">
          <h4>การพัฒนาระบบบริการสุขภาพช่องปากในผู้สูงอายุ</h4>
          <p>เครือข่ายบริการสุขภาพ รพ.ป่าพะยอม จ.พัทลุง</p>
        </div>
        <div class="cqi-body">
          <p style="font-size:13px;color:var(--gray-600);margin-bottom:14px;">ผู้สูงอายุส่วนใหญ่มีปัญหาสุขภาพช่องปาก บางส่วนพึ่งพาบุคคลอื่นในการเดินทาง ทำให้เข้าถึงบริการได้ยาก มีโรคประจำตัวที่ทำให้โรคช่องปากลุกลามเร็ว</p>
          <div style="font-size:13px;font-weight:700;color:var(--gray-700);margin-bottom:8px;">ร้อยละผู้สูงอายุได้รับการตรวจสุขภาพช่องปาก</div>
          <div class="cqi-result">
            <div class="cqi-year">
              <div class="cqi-bar-wrap"><div class="cqi-bar" style="height:35%"></div></div>
              <div class="cqi-yr-label">2565</div>
              <div class="cqi-yr-val">19.36%</div>
            </div>
            <div class="cqi-year">
              <div class="cqi-bar-wrap"><div class="cqi-bar" style="height:80%"></div></div>
              <div class="cqi-yr-label">2566</div>
              <div class="cqi-yr-val">44.21%</div>
            </div>
            <div class="cqi-year">
              <div class="cqi-bar-wrap"><div class="cqi-bar" style="height:56%"></div></div>
              <div class="cqi-yr-label">2567</div>
              <div class="cqi-yr-val">31.02%</div>
            </div>
            <div class="cqi-year">
              <div class="cqi-bar-wrap"><div class="cqi-bar" style="height:63%"></div></div>
              <div class="cqi-yr-label">2568</div>
              <div class="cqi-yr-val">34.56%</div>
            </div>
          </div>
        </div>
      </div>

      <!-- CQI 2: Basic Dental -->
      <div class="cqi-card">
        <div class="cqi-header" style="background:linear-gradient(135deg, var(--blue-600), var(--blue-500));">
          <h4>การพัฒนาระบบให้บริการทันตกรรมพื้นฐาน</h4>
          <p>เครือข่ายหน่วยบริการสุขภาพ รพ.ป่าพะยอม</p>
        </div>
        <div class="cqi-body">
          <p style="font-size:13px;color:var(--gray-600);margin-bottom:14px;">เพิ่มทันตแพทย์ เพิ่มจำนวน รพ.สต. จาก 3 เป็น 6 แห่ง เพิ่มวันออกหน่วยจาก 1 เป็น 5 วัน/สัปดาห์ ใช้รถทันตกรรมเคลื่อนที่ และเพิ่มงานขูดหินปูน/อุดฟัน</p>
          <div style="font-size:13px;font-weight:700;color:var(--gray-700);margin-bottom:8px;">ร้อยละงานพื้นฐานต่องานบริการทั้งหมด (เป้า &gt; 25%)</div>
          <div class="cqi-result">
            <div class="cqi-year">
              <div class="cqi-bar-wrap"><div class="cqi-bar" style="height:43%;background:linear-gradient(180deg,#7ec8f0,var(--blue-600))"></div></div>
              <div class="cqi-yr-label">2565</div>
              <div class="cqi-yr-val" style="color:var(--blue-600)">23.33%</div>
            </div>
            <div class="cqi-year">
              <div class="cqi-bar-wrap"><div class="cqi-bar" style="height:50%;background:linear-gradient(180deg,#7ec8f0,var(--blue-600))"></div></div>
              <div class="cqi-yr-label">2566</div>
              <div class="cqi-yr-val" style="color:var(--blue-600)">27.32%</div>
            </div>
            <div class="cqi-year">
              <div class="cqi-bar-wrap"><div class="cqi-bar" style="height:49%;background:linear-gradient(180deg,#7ec8f0,var(--blue-600))"></div></div>
              <div class="cqi-yr-label">2567</div>
              <div class="cqi-yr-val" style="color:var(--blue-600)">26.94%</div>
            </div>
            <div class="cqi-year">
              <div class="cqi-bar-wrap"><div class="cqi-bar" style="height:49%;background:linear-gradient(180deg,#7ec8f0,var(--blue-600))"></div></div>
              <div class="cqi-yr-label">2568</div>
              <div class="cqi-yr-val" style="color:var(--blue-600)">26.78%</div>
            </div>
          </div>
        </div>
      </div>
    </div>

    <!-- CQI 3: Research -->
    <div class="card" style="border-left:5px solid #7c3aed;">
      <div style="display:flex;align-items:flex-start;gap:16px;">
        <span style="font-size:28px;">🔍</span>
        <div>
          <div style="font-size:14px;font-weight:700;color:#7c3aed;margin-bottom:6px;">งานวิจัยที่อยู่ระหว่างดำเนินการ</div>
          <div style="font-size:15px;font-weight:700;color:var(--gray-800);margin-bottom:8px;">"ปัจจัยที่มีอิทธิพลต่อการตัดสินใจของผู้สูงอายุที่มารับบริการทำฟันเทียม โรงพยาบาลป่าพะยอม จังหวัดพัทลุง"</div>
          <p style="font-size:13px;color:var(--gray-600);">เก็บข้อมูลโดยใช้แบบสอบถามและแบบสัมภาษณ์ ปัจจุบันอยู่ระหว่างกระบวนการวิเคราะห์ข้อมูล เพื่อพัฒนารูปแบบการให้บริการทำฟันเทียมในผู้สูงอายุและวางแผนสนับสนุนด้านสุขภาพผู้สูงอายุ</p>
          <span style="display:inline-block;background:#ede9fe;color:#7c3aed;padding:3px 10px;border-radius:4px;font-size:12px;font-weight:700;margin-top:8px;">อยู่ระหว่างดำเนินการ</span>
        </div>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 9: REVIEW & LEARNING
====================================== -->
<section class="section section-alt">
  <div class="container">
    <div class="section-title"><span class="icon">📚</span>สรุปกิจกรรมทบทวนและการเรียนรู้</div>
    <div class="divider"></div>
    <div style="display:flex; flex-direction:column; gap:14px;">
      <div class="review-item">
        <div class="review-icon">💬</div>
        <div>
          <h5>ทบทวนความคิดเห็นและข้อร้องเรียน – ระบบคิว</h5>
          <p>ผู้รับบริการร้องเรียนว่าไม่ได้รับบริการตามลำดับเวลาที่มา เนื่องจากแยกคิวตามประเภทงาน → <strong>ปรับเป็นแจกคิวตามลำดับเวลา</strong> ไม่แบ่งประเภทงาน ลดข้อร้องเรียนและเพิ่มความพึงพอใจ</p>
        </div>
      </div>
      <div class="review-item">
        <div class="review-icon">📅</div>
        <div>
          <h5>ทบทวนระบบนัด เลื่อนนัด และการยืนยันก่อนวันนัด</h5>
          <p>ทบทวนระบบนัดและปรับกระบวนการโทรยืนยันก่อนถึงวันนัดเพื่อลดการ No-show และความผิดพลาดของระบบนัด</p>
        </div>
      </div>
      <div class="review-item">
        <div class="review-icon">👴</div>
        <div>
          <h5>ทบทวนตัวชี้วัดความครอบคลุมบริการผู้สูงอายุ</h5>
          <p>วิเคราะห์สาเหตุความครอบคลุมที่ลดลงในปี 2567 (ทันตบุคลากรลดลง, ปัญหาการส่งข้อมูลไป HDC) → <strong>เพิ่มการออกบริการในรพ.สต. และเยี่ยมบ้านผู้สูงอายุติดบ้านติดเตียง</strong></p>
        </div>
      </div>
      <div class="review-item">
        <div class="review-icon">📝</div>
        <div>
          <h5>ทบทวนความสมบูรณ์ของเวชระเบียน</h5>
          <p>ปี 2568 พบไม่สมบูรณ์ในส่วน PMH และข้อมูลส่งเสริมสุขภาพช่องปาก → <strong>เน้นให้บันทึกข้อมูลทั้งสองส่วนให้ครบถ้วนทุกราย</strong> โดยทบทวนในที่ประชุมกลุ่มงาน</p>
        </div>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 10: STRATEGIC ROADMAP 2569
====================================== -->
<section class="section">
  <div class="container">
    <div class="section-title"><span class="icon">🗺️</span>แผนพัฒนาเชิงกลยุทธ์ ปีงบประมาณ 2569</div>
    <div class="divider"></div>
    <div style="display:flex; flex-direction:column; gap:12px;">
      <div class="roadmap-item">
        <span class="roadmap-icon">🏥</span>
        <div>
          <h5>เพิ่มการเข้าถึงบริการทันตกรรม</h5>
          <p>ขยายการออกหน่วยบริการในรพ.สต. และชุมชน เพิ่มวันให้บริการ ใช้รถทันตกรรมเคลื่อนที่ เพื่อเพิ่มความครอบคลุมเข้าใกล้เป้าหมายจังหวัด 50%</p>
          <span class="roadmap-tag">Priority 1</span>
        </div>
      </div>
      <div class="roadmap-item" style="border-left-color:var(--blue-500);">
        <span class="roadmap-icon">👶</span>
        <div>
          <h5>พัฒนางานส่งเสริมป้องกันในเด็กก่อนวัยเรียน</h5>
          <p>เสริมสร้างงาน WCC, ANC, fluoride varnish และ ECC screening ให้ครอบคลุมกลุ่มเป้าหมายมากขึ้น ขยายจำนวนเด็กที่ได้รับการตรวจ 18 เดือน</p>
          <span class="roadmap-tag" style="background:var(--blue-50);color:var(--blue-600);">Preventive</span>
        </div>
      </div>
      <div class="roadmap-item" style="border-left-color:var(--blue-500);">
        <span class="roadmap-icon">🎒</span>
        <div>
          <h5>พัฒนางานส่งเสริมป้องกันในเด็กประถมศึกษา</h5>
          <p>เพิ่มความครอบคลุมการตรวจสุขภาพช่องปากในเด็กอายุ 6, 9, 12 ปี เพิ่มงานเคลือบหลุมร่องฟัน และทันตสุขศึกษาในโรงเรียน</p>
          <span class="roadmap-tag" style="background:var(--blue-50);color:var(--blue-600);">Preventive</span>
        </div>
      </div>
      <div class="roadmap-item" style="border-left-color:#d97706;">
        <span class="roadmap-icon">👴</span>
        <div>
          <h5>พัฒนางานส่งเสริมป้องกันในผู้สูงอายุ</h5>
          <p>เพิ่มการตรวจสุขภาพช่องปากในคลินิก NCD 2 รอบ/ปี ออกเยี่ยมบ้านผู้สูงอายุติดบ้านติดเตียง แก้ปัญหาการส่งข้อมูลไป HDC ให้สมบูรณ์</p>
          <span class="roadmap-tag" style="background:var(--amber-100);color:var(--amber-500);">Elderly Care</span>
        </div>
      </div>
      <div class="grid-3" style="gap:12px; margin-top:4px;">
        <div class="roadmap-item" style="border-left-color:var(--red-500);">
          <span class="roadmap-icon">🛡️</span>
          <div>
            <h5>Dental Safety Goal</h5>
            <p style="font-size:13px;">ป้องกันภาวะแทรกซ้อน บูรณะซ้ำ ผิดซี่/ตำแหน่ง และฉุกเฉินในคลินิก</p>
            <span class="roadmap-tag" style="background:var(--red-100);color:var(--red-500);">Patient Safety</span>
          </div>
        </div>
        <div class="roadmap-item" style="border-left-color:var(--green-400);">
          <span class="roadmap-icon">♻️</span>
          <div>
            <h5>Green &amp; Clean Hospital</h5>
            <p style="font-size:13px;">พัฒนาสิ่งแวดล้อม ลดของเสีย ความสะอาดและความปลอดภัยในคลินิก</p>
            <span class="roadmap-tag">G&amp;C</span>
          </div>
        </div>
        <div class="roadmap-item" style="border-left-color:var(--blue-500);">
          <span class="roadmap-icon">💻</span>
          <div>
            <h5>Paperless / Digital OPD</h5>
            <p style="font-size:13px;">สนับสนุนระบบ Digital เวชระเบียน Minimal Look และ Paperless ในกลุ่มงาน</p>
            <span class="roadmap-tag" style="background:var(--blue-50);color:var(--blue-600);">Digital</span>
          </div>
        </div>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     SECTION 11: EXECUTIVE SUMMARY
====================================== -->
<section class="section section-alt">
  <div class="container">
    <div class="section-title"><span class="icon">🎖️</span>Executive Summary – 5 Key Messages</div>
    <div class="divider"></div>
    <div class="exec-card">
      <h3>🦷 สรุปผู้บริหาร – กลุ่มงานทันตกรรม รพ.ป่าพะยอม</h3>
      <div class="key-message">
        <div class="num">1</div>
        <p><strong>บริการทันตกรรมมีภาระงานสูงและขยายบริการเชิงรุกต่อเนื่อง</strong> – ปริมาณงานเพิ่มจาก 17,742 งาน (2565) เป็น 34,333 งาน (2567) สะท้อนการเข้าถึงบริการที่ขยายตัวอย่างมีนัยสำคัญ โดยมีการออกหน่วย 3 รพ.สต. ทุกสัปดาห์</p>
      </div>
      <div class="key-message">
        <div class="num">2</div>
        <p><strong>ผลลัพธ์ด้านความปลอดภัยทางคลินิกอยู่ในระดับดีมาก</strong> – ภาวะแทรกซ้อนจากการรักษาและการบูรณะซ้ำภายใน 6 เดือน อยู่ที่ร้อยละ 0 ต่อเนื่องตั้งแต่ปี 2567 ถึงครึ่งแรกปี 2569</p>
      </div>
      <div class="key-message">
        <div class="num">3</div>
        <p><strong>เด็กเล็กมีแนวโน้มฟันผุลดลงจากงานส่งเสริมป้องกันต่อเนื่อง</strong> – อัตราฟันผุเด็ก 18 เดือนลดจาก 10.71% (2564) เหลือ 1.59% (2568) ผลของ WCC, fluoride varnish, ANC และการติดตามสม่ำเสมอ</p>
      </div>
      <div class="key-message">
        <div class="num">4</div>
        <p><strong>จุดพัฒนาสำคัญคือความครอบคลุมบริการ ระบบคิว ความสมบูรณ์เวชระเบียน และสิ่งอำนวยความสะดวก</strong> – ความครอบคลุมยังอยู่ที่ 30–33% ยังห่างเป้าจังหวัด 50% มีแผนเพิ่มบริการเชิงรุกและ รพ.สต.</p>
      </div>
      <div class="key-message">
        <div class="num">5</div>
        <p><strong>กลุ่มงานทันตกรรมมีทิศทางพัฒนาชัดเจน</strong> – เชื่อมโยง HA Patient Safety, Dental Safety Goal, Green &amp; Clean Hospital และบริการเชิงรุกในชุมชน พร้อมงานวิจัยและ CQI ที่ดำเนินการต่อเนื่อง</p>
      </div>
    </div>
  </div>
</section>

<!-- ======================================
     FOOTER
====================================== -->
<footer class="footer">
  <strong>Service Profile กลุ่มงานทันตกรรม โรงพยาบาลป่าพะยอม</strong> &nbsp;|&nbsp; อำเภอป่าพะยอม จังหวัดพัทลุง &nbsp;|&nbsp; ปรับปรุงล่าสุด 31 มีนาคม 2569<br>
  <span style="font-size:12px;margin-top:4px;display:block;">เอกสารนี้จัดทำเพื่อสื่อสารงานคุณภาพต่อ สรพ. และทีมเยี่ยมสำรวจ HA Re-Accreditation</span>
</footer>

<!-- ======================================
     CHARTS JAVASCRIPT
====================================== -->
<script>
  const years = ['2565','2566','2567','2568','2569*'];
  const greenPalette = ['rgba(34,146,106,0.85)','rgba(34,146,106,0.85)','rgba(34,146,106,0.85)','rgba(34,146,106,0.85)','rgba(200,200,200,0.7)'];

  // Chart defaults
  Chart.defaults.font.family = "'Sarabun', 'Noto Sans Thai', sans-serif";
  Chart.defaults.font.size = 12;

  /* ---- Volume Chart ---- */
  new Chart(document.getElementById('chartVolume'), {
    type: 'bar',
    data: {
      labels: years,
      datasets: [{
        label: 'งานบริการทั้งหมด',
        data: [17742, 31645, 34333, 32738, 16415],
        backgroundColor: greenPalette,
        borderRadius: 6,
        borderSkipped: false,
      }]
    },
    options: {
      responsive: true,
      plugins: {
        legend: { display: false },
        tooltip: {
          callbacks: { label: ctx => ' ' + ctx.raw.toLocaleString() + ' งาน' + (ctx.dataIndex===4?' (ครึ่งปี)':'') }
        }
      },
      scales: {
        y: { beginAtZero: true, ticks: { callback: v => v.toLocaleString() }, grid: { color: 'rgba(0,0,0,0.05)' } },
        x: { grid: { display: false } }
      }
    }
  });

  /* ---- Referral Chart ---- */
  new Chart(document.getElementById('chartReferral'), {
    type: 'line',
    data: {
      labels: years,
      datasets: [{
        label: 'ส่งต่อผู้ป่วย (ราย)',
        data: [35, 69, 78, 81, 43],
        borderColor: '#2388c8',
        backgroundColor: 'rgba(35,136,200,0.1)',
        borderWidth: 3,
        pointRadius: 6,
        pointBackgroundColor: '#2388c8',
        fill: true,
        tension: 0.3,
      }]
    },
    options: {
      responsive: true,
      plugins: {
        legend: { display: false },
        tooltip: {
          callbacks: { label: ctx => ' ส่งต่อ ' + ctx.raw + ' ราย' + (ctx.dataIndex===4?' (ครึ่งปี)':'') }
        }
      },
      scales: {
        y: { beginAtZero: true, grid: { color: 'rgba(0,0,0,0.05)' } },
        x: { grid: { display: false } }
      }
    }
  });

  /* ---- Caries Chart ---- */
  new Chart(document.getElementById('chartCaries'), {
    type: 'line',
    data: {
      labels: years,
      datasets: [
        {
          label: 'ฟันผุเด็ก 18 เดือน (%)',
          data: [5.26, 3.92, 3.77, 1.59, 2.70],
          borderColor: '#22926a',
          backgroundColor: 'rgba(34,146,106,0.08)',
          borderWidth: 3,
          pointRadius: 5,
          pointBackgroundColor: '#22926a',
          fill: true,
          tension: 0.3,
        },
        {
          label: 'เป้า 18 เดือน (10%)',
          data: [10, 10, 10, 10, 10],
          borderColor: '#dc2626',
          borderDash: [6, 4],
          borderWidth: 2,
          pointRadius: 0,
          fill: false,
        },
        {
          label: 'ฟันผุเด็ก 3 ปี (%)',
          data: [32.06, 38.78, 43.59, 37.35, 35.48],
          borderColor: '#d97706',
          backgroundColor: 'rgba(217,119,6,0.05)',
          borderWidth: 3,
          pointRadius: 5,
          pointBackgroundColor: '#d97706',
          fill: true,
          tension: 0.3,
        },
        {
          label: 'เป้า 3 ปี (50%)',
          data: [50, 50, 50, 50, 50],
          borderColor: '#dc2626',
          borderDash: [6, 4],
          borderWidth: 1.5,
          pointRadius: 0,
          fill: false,
        }
      ]
    },
    options: {
      responsive: true,
      plugins: {
        legend: { position: 'bottom', labels: { boxWidth: 12, font: { size: 11 } } }
      },
      scales: {
        y: { beginAtZero: true, max: 60, grid: { color: 'rgba(0,0,0,0.05)' }, ticks: { callback: v => v + '%' } },
        x: { grid: { display: false } }
      }
    }
  });

  /* ---- Coverage Chart ---- */
  new Chart(document.getElementById('chartCoverage'), {
    type: 'bar',
    data: {
      labels: years,
      datasets: [
        {
          label: 'ความครอบคลุม (%)',
          data: [21.81, 32.62, 30.50, 33.05, 21.06],
          backgroundColor: greenPalette,
          borderRadius: 6,
          borderSkipped: false,
          order: 2
        },
        {
          label: 'เป้าหมาย 50%',
          data: [50, 50, 50, 50, 50],
          type: 'line',
          borderColor: '#dc2626',
          borderDash: [6, 4],
          borderWidth: 2.5,
          pointRadius: 0,
          fill: false,
          order: 1
        }
      ]
    },
    options: {
      responsive: true,
      plugins: {
        legend: { position: 'bottom', labels: { boxWidth: 12, font: { size: 11 } } },
        tooltip: {
          callbacks: { label: ctx => ' ' + ctx.raw + '%' + (ctx.dataIndex===4 && ctx.datasetIndex===0?' (ครึ่งปี)':'') }
        }
      },
      scales: {
        y: { beginAtZero: true, max: 60, ticks: { callback: v => v + '%' }, grid: { color: 'rgba(0,0,0,0.05)' } },
        x: { grid: { display: false } }
      }
    }
  });
</script>
</body>
</html>

Youez - 2016 - github.com/yon3zu
LinuXploit