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/service_profile_nutrition.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 กลุ่มงานโภชนศาสตร์ โรงพยาบาลป่าพะยอม</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Prompt:wght@300;400;500;600;700&family=Sarabun:wght@300;400;500;600;700&display=swap" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/chart.umd.min.js"></script>
<style>
:root {
  --primary: #0e6b55;
  --primary-light: #17a87d;
  --primary-pale: #e8f7f3;
  --secondary: #1d7fa6;
  --secondary-light: #3fb0d8;
  --secondary-pale: #e6f4fa;
  --accent: #f39c12;
  --accent-pale: #fef9ee;
  --danger: #e74c3c;
  --danger-pale: #fdf0ef;
  --warning: #e67e22;
  --success: #27ae60;
  --text-dark: #1a2a2a;
  --text-mid: #3a5050;
  --text-light: #6b8080;
  --bg: #f5f8f7;
  --white: #ffffff;
  --border: #d0e8e0;
  --shadow: 0 2px 12px rgba(14,107,85,0.10);
  --shadow-lg: 0 6px 28px rgba(14,107,85,0.13);
  --radius: 12px;
  --radius-sm: 7px;
  --nav-w: 220px;
}

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

body {
  font-family: 'Sarabun', sans-serif;
  background: var(--bg);
  color: var(--text-dark);
  line-height: 1.65;
  font-size: 15px;
}

/* ===== SIDEBAR NAV ===== */
#sidebar {
  position: fixed;
  left: 0; top: 0;
  width: var(--nav-w);
  height: 100vh;
  background: var(--primary);
  color: white;
  display: flex;
  flex-direction: column;
  z-index: 100;
  overflow-y: auto;
}

.sidebar-header {
  padding: 24px 18px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.15);
}

.sidebar-logo {
  font-family: 'Prompt', sans-serif;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.4;
  color: #b8f0dd;
  letter-spacing: 0.3px;
}

.sidebar-sub {
  font-size: 11px;
  color: rgba(255,255,255,0.6);
  margin-top: 4px;
}

.sidebar-icon-area {
  padding: 14px 18px;
  font-size: 28px;
  text-align: center;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}

nav a {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 18px;
  color: rgba(255,255,255,0.78);
  text-decoration: none;
  font-size: 13px;
  font-weight: 400;
  transition: all 0.2s;
  border-left: 3px solid transparent;
}

nav a:hover, nav a.active {
  background: rgba(255,255,255,0.12);
  color: white;
  border-left-color: #7ef0c0;
}

nav a .nav-icon { font-size: 15px; min-width: 20px; text-align: center; }
nav a .nav-num { 
  margin-left: auto; 
  font-size: 10px; 
  background: rgba(255,255,255,0.2); 
  border-radius: 10px; 
  padding: 1px 6px;
}

.nav-section-title {
  padding: 12px 18px 4px;
  font-size: 10px;
  color: rgba(255,255,255,0.45);
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 600;
}

.sidebar-footer {
  margin-top: auto;
  padding: 14px 18px;
  font-size: 11px;
  color: rgba(255,255,255,0.4);
  border-top: 1px solid rgba(255,255,255,0.1);
}

/* ===== MAIN CONTENT ===== */
#main {
  margin-left: var(--nav-w);
  min-height: 100vh;
}

/* ===== TOP BAR ===== */
.topbar {
  position: sticky;
  top: 0;
  background: var(--white);
  border-bottom: 2px solid var(--border);
  padding: 12px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 50;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
}

.topbar-title {
  font-family: 'Prompt', sans-serif;
  font-weight: 600;
  font-size: 16px;
  color: var(--primary);
}

.topbar-right { display: flex; gap: 10px; align-items: center; }

.btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border-radius: 8px;
  font-family: 'Sarabun', sans-serif;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  border: none;
  transition: all 0.2s;
}

.btn-primary { background: var(--primary); color: white; }
.btn-primary:hover { background: #0a5542; }
.btn-secondary { background: var(--secondary); color: white; }
.btn-secondary:hover { background: #166b8d; }
.btn-outline { background: white; color: var(--primary); border: 1.5px solid var(--primary); }
.btn-outline:hover { background: var(--primary-pale); }

.tag {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
}
.tag-green { background: #d4f5e8; color: #0e6b55; }
.tag-blue { background: #d8eef7; color: #1d7fa6; }
.tag-orange { background: #fdecd2; color: #c0651a; }
.tag-red { background: #fde3e0; color: #c0392b; }
.tag-gray { background: #e8ecec; color: #4a6060; }

/* ===== SECTIONS ===== */
.section {
  padding: 36px 32px;
  scroll-margin-top: 70px;
  border-bottom: 1px solid #e0eeea;
}

.section:last-child { border-bottom: none; }

.section-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
}

.section-num {
  width: 36px;
  height: 36px;
  background: var(--primary);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Prompt', sans-serif;
  font-weight: 700;
  font-size: 14px;
  flex-shrink: 0;
}

.section-title {
  font-family: 'Prompt', sans-serif;
  font-weight: 600;
  font-size: 19px;
  color: var(--primary);
}

.section-subtitle {
  font-size: 13px;
  color: var(--text-light);
  margin-top: 2px;
}

/* ===== HERO SECTION ===== */
.hero {
  background: linear-gradient(135deg, var(--primary) 0%, #0a7d62 50%, var(--secondary) 100%);
  color: white;
  padding: 40px 32px;
  position: relative;
  overflow: hidden;
}

.hero::before {
  content: '';
  position: absolute;
  top: -60px; right: -60px;
  width: 240px; height: 240px;
  border-radius: 50%;
  background: rgba(255,255,255,0.07);
}

.hero::after {
  content: '';
  position: absolute;
  bottom: -40px; left: 20%;
  width: 160px; height: 160px;
  border-radius: 50%;
  background: rgba(255,255,255,0.05);
}

.hero-badge {
  display: inline-block;
  background: rgba(255,255,255,0.2);
  border: 1px solid rgba(255,255,255,0.35);
  color: white;
  padding: 4px 14px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  margin-bottom: 14px;
}

.hero-title {
  font-family: 'Prompt', sans-serif;
  font-weight: 700;
  font-size: 26px;
  line-height: 1.3;
  margin-bottom: 6px;
}

.hero-sub {
  font-size: 15px;
  opacity: 0.85;
  margin-bottom: 24px;
}

.hero-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 24px;
}

.hero-stat {
  background: rgba(255,255,255,0.14);
  border: 1px solid rgba(255,255,255,0.22);
  border-radius: 10px;
  padding: 14px 16px;
  text-align: center;
}

.hero-stat-num {
  font-family: 'Prompt', sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 1;
  color: #b8f0dd;
}

.hero-stat-label {
  font-size: 12px;
  opacity: 0.8;
  margin-top: 4px;
}

/* ===== CARDS ===== */
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.grid-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; }
.grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }

.card {
  background: var(--white);
  border-radius: var(--radius);
  padding: 20px;
  box-shadow: var(--shadow);
  border: 1px solid var(--border);
}

.card-title {
  font-family: 'Prompt', sans-serif;
  font-weight: 600;
  font-size: 14px;
  color: var(--primary);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.card-title .icon { font-size: 16px; }

/* ===== KPI TILES ===== */
.kpi-tile {
  background: var(--white);
  border-radius: var(--radius);
  padding: 18px 16px;
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
  text-align: center;
  position: relative;
  overflow: hidden;
}

.kpi-tile::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: var(--primary);
}

.kpi-tile.good::before { background: var(--success); }
.kpi-tile.warn::before { background: var(--warning); }
.kpi-tile.bad::before { background: var(--danger); }

.kpi-label { font-size: 12px; color: var(--text-light); margin-bottom: 6px; line-height: 1.3; }
.kpi-value { font-family: 'Prompt', sans-serif; font-weight: 700; font-size: 28px; line-height: 1; }
.kpi-value.green { color: var(--success); }
.kpi-value.orange { color: var(--warning); }
.kpi-value.blue { color: var(--secondary); }
.kpi-target { font-size: 11px; color: var(--text-light); margin-top: 4px; }
.kpi-trend { font-size: 11px; margin-top: 6px; }
.kpi-trend.up { color: var(--success); }
.kpi-trend.warn { color: var(--warning); }

/* ===== PROCESS FLOW ===== */
.process-flow {
  display: flex;
  align-items: stretch;
  gap: 0;
  overflow-x: auto;
  padding-bottom: 8px;
}

.process-step {
  flex: 1;
  min-width: 100px;
  background: var(--white);
  border: 1.5px solid var(--border);
  border-radius: var(--radius-sm);
  padding: 12px 10px;
  text-align: center;
  position: relative;
  font-size: 12px;
  font-weight: 500;
  color: var(--text-dark);
  line-height: 1.3;
}

.process-step .step-icon { font-size: 18px; display: block; margin-bottom: 5px; }

.process-step::after {
  content: '→';
  position: absolute;
  right: -14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  color: var(--primary);
  z-index: 1;
}

.process-step:last-child::after { display: none; }

.process-flow-wrap {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.ps {
  background: var(--primary-pale);
  border: 1.5px solid var(--primary-light);
  border-radius: 8px;
  padding: 8px 13px;
  font-size: 12.5px;
  font-weight: 500;
  color: var(--primary);
  text-align: center;
  line-height: 1.3;
  position: relative;
}

.ps-arrow {
  color: var(--primary);
  font-size: 18px;
  line-height: 1;
}

.ps2 {
  background: var(--secondary-pale);
  border: 1.5px solid var(--secondary-light);
  border-radius: 8px;
  padding: 8px 13px;
  font-size: 12.5px;
  font-weight: 500;
  color: var(--secondary);
  text-align: center;
  line-height: 1.3;
}

/* ===== RISK CARDS ===== */
.risk-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }

.risk-card {
  border-radius: 10px;
  padding: 16px;
  border-left: 5px solid;
  background: var(--white);
  box-shadow: var(--shadow);
}

.risk-card.high { border-color: var(--danger); }
.risk-card.medium { border-color: var(--warning); }
.risk-card.low { border-color: var(--success); }

.risk-level {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 4px;
}

.risk-card.high .risk-level { color: var(--danger); }
.risk-card.medium .risk-level { color: var(--warning); }
.risk-card.low .risk-level { color: var(--success); }

.risk-name { font-size: 13px; font-weight: 600; color: var(--text-dark); margin-bottom: 6px; }
.risk-control { font-size: 11.5px; color: var(--text-light); line-height: 1.5; }
.risk-control span { display: block; }

/* ===== TIMELINE ===== */
.timeline { position: relative; padding-left: 24px; }
.timeline::before {
  content: '';
  position: absolute;
  left: 8px; top: 6px; bottom: 6px;
  width: 2px;
  background: var(--primary-light);
  border-radius: 2px;
}

.tl-item {
  position: relative;
  margin-bottom: 18px;
  padding-left: 16px;
}

.tl-item::before {
  content: '';
  position: absolute;
  left: -16px; top: 6px;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: var(--primary);
  border: 2px solid var(--primary-pale);
}

.tl-title { font-size: 13px; font-weight: 600; color: var(--primary); }
.tl-desc { font-size: 12.5px; color: var(--text-mid); margin-top: 2px; }

/* ===== INSIGHT BOX ===== */
.insight-box {
  border-radius: var(--radius);
  padding: 18px 20px;
  margin-bottom: 14px;
}

.insight-box.strength {
  background: #e8f7f0;
  border: 1.5px solid #a8e6c8;
}

.insight-box.opp {
  background: #fef8ee;
  border: 1.5px solid #f5cc85;
}

.insight-box.alert {
  background: #fdf0ef;
  border: 1.5px solid #f3a99e;
}

.insight-title {
  font-family: 'Prompt', sans-serif;
  font-weight: 600;
  font-size: 14px;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.insight-box.strength .insight-title { color: #0e6b55; }
.insight-box.opp .insight-title { color: #b35a00; }
.insight-box.alert .insight-title { color: #c0392b; }

.insight-list { list-style: none; }
.insight-list li {
  font-size: 13px;
  padding: 3px 0;
  color: var(--text-dark);
  display: flex;
  align-items: flex-start;
  gap: 6px;
}

.insight-list li::before { content: '•'; font-weight: 700; margin-top: 1px; }

.insight-box.strength .insight-list li::before { color: var(--success); }
.insight-box.opp .insight-list li::before { color: var(--accent); }
.insight-box.alert .insight-list li::before { color: var(--danger); }

/* ===== PDSA CARDS ===== */
.pdsa-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }

.pdsa-card {
  border-radius: 10px;
  overflow: hidden;
  box-shadow: var(--shadow);
}

.pdsa-header {
  padding: 12px 16px;
  color: white;
  font-family: 'Prompt', sans-serif;
  font-weight: 700;
  font-size: 15px;
}

.pdsa-card:nth-child(1) .pdsa-header { background: #1a7a5e; }
.pdsa-card:nth-child(2) .pdsa-header { background: #1d7fa6; }
.pdsa-card:nth-child(3) .pdsa-header { background: #c0651a; }
.pdsa-card:nth-child(4) .pdsa-header { background: #7b5ea7; }

.pdsa-body {
  background: white;
  padding: 14px 16px;
  border: 1px solid var(--border);
  border-top: none;
  border-radius: 0 0 10px 10px;
}

.pdsa-item { font-size: 12.5px; color: var(--text-mid); padding: 3px 0; }
.pdsa-item::before { content: '▸ '; color: var(--primary-light); }

/* ===== HA READINESS ===== */
.ha-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }

.ha-item {
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--white);
  border-radius: 10px;
  padding: 14px 18px;
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
}

.ha-icon {
  width: 44px; height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
}

.ha-icon.done { background: #e4f9ef; }
.ha-icon.partial { background: #fef4e4; }
.ha-icon.plan { background: #e6f4fa; }

.ha-name { font-size: 13px; font-weight: 600; color: var(--text-dark); }
.ha-desc { font-size: 11.5px; color: var(--text-light); margin-top: 2px; }

.status-dot {
  width: 10px; height: 10px;
  border-radius: 50%;
  margin-left: auto;
  flex-shrink: 0;
}

.status-dot.done { background: var(--success); }
.status-dot.partial { background: var(--accent); }
.status-dot.plan { background: var(--secondary); }

/* ===== TABLE ===== */
.data-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.data-table th {
  background: var(--primary);
  color: white;
  padding: 10px 14px;
  text-align: left;
  font-weight: 600;
  font-size: 12.5px;
}

.data-table th:first-child { border-radius: 8px 0 0 0; }
.data-table th:last-child { border-radius: 0 8px 0 0; }

.data-table td {
  padding: 9px 14px;
  border-bottom: 1px solid #e8f0ed;
}

.data-table tr:last-child td { border-bottom: none; }
.data-table tr:nth-child(even) td { background: #f7fbf9; }

.cell-zero { color: var(--success); font-weight: 700; }
.cell-warn { color: var(--warning); font-weight: 700; }
.cell-good { color: var(--success); font-weight: 700; }
.cell-pct { color: var(--secondary); font-weight: 700; }

/* ===== SCOPE CARDS ===== */
.scope-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }

.scope-card {
  background: var(--white);
  border-radius: 10px;
  padding: 16px 12px;
  text-align: center;
  border: 1.5px solid var(--border);
  box-shadow: var(--shadow);
  transition: all 0.2s;
}

.scope-card:hover {
  border-color: var(--primary-light);
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}

.scope-icon { font-size: 26px; margin-bottom: 8px; }
.scope-name { font-size: 13px; font-weight: 600; color: var(--primary); }
.scope-desc { font-size: 11px; color: var(--text-light); margin-top: 4px; line-height: 1.4; }

/* ===== CUSTOMER ===== */
.cust-split { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.cust-box {
  background: var(--white);
  border-radius: var(--radius);
  border: 1px solid var(--border);
  overflow: hidden;
  box-shadow: var(--shadow);
}

.cust-head {
  padding: 12px 18px;
  font-family: 'Prompt', sans-serif;
  font-weight: 600;
  font-size: 14px;
  color: white;
}

.cust-head.ext { background: var(--primary); }
.cust-head.int { background: var(--secondary); }

.cust-body { padding: 14px 18px; }

.cust-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 0;
  border-bottom: 1px solid #f0f5f3;
  font-size: 13px;
}

.cust-item:last-child { border-bottom: none; }

.cust-avatar {
  width: 28px; height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  background: var(--primary-pale);
  flex-shrink: 0;
}

.need-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.need-tag {
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  background: var(--primary-pale);
  color: var(--primary);
  border: 1px solid #b0dfd0;
}

/* ===== CHART WRAPPER ===== */
.chart-wrapper {
  position: relative;
  height: 220px;
}

/* ===== QUALITY SYSTEM ===== */
.qs-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.qs-item {
  background: var(--primary-pale);
  border-radius: 9px;
  padding: 14px 16px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.qs-num {
  width: 28px; height: 28px;
  background: var(--primary);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  flex-shrink: 0;
}
.qs-text { font-size: 13px; color: var(--text-dark); line-height: 1.5; }

/* ===== FUTURE PLAN ===== */
.fp-card {
  background: var(--white);
  border-radius: 10px;
  padding: 18px;
  border: 1px solid var(--border);
  border-top: 4px solid var(--primary-light);
  box-shadow: var(--shadow);
}

.fp-icon { font-size: 24px; margin-bottom: 8px; }
.fp-title { font-family: 'Prompt', sans-serif; font-weight: 600; font-size: 14px; color: var(--primary); margin-bottom: 6px; }
.fp-desc { font-size: 12.5px; color: var(--text-mid); line-height: 1.5; }

/* ===== DIVIDER ===== */
.divider {
  height: 1px;
  background: linear-gradient(to right, var(--primary-pale), var(--border), var(--primary-pale));
  margin: 20px 0;
}

/* ===== PRINT ===== */
@media print {
  #sidebar, .topbar { display: none !important; }
  #main { margin-left: 0 !important; }
  .section { page-break-inside: avoid; padding: 20px; }
  .hero { color: black; background: #e8f7f3 !important; }
  .hero * { color: black !important; }
  @page { size: A4; margin: 15mm; }
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  :root { --nav-w: 0px; }
  #sidebar { display: none; }
  #main { margin-left: 0; }
  .hero-stats { grid-template-columns: repeat(2, 1fr); }
  .grid-4, .pdsa-grid, .scope-grid { grid-template-columns: 1fr 1fr; }
  .risk-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 700px) {
  .grid-2, .grid-3, .cust-split, .ha-grid, .qs-grid { grid-template-columns: 1fr; }
  .hero-stats { grid-template-columns: 1fr 1fr; }
  .section { padding: 22px 16px; }
}

/* ===== ANIMATIONS ===== */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

.anim { animation: fadeInUp 0.4s ease both; }
.anim-d1 { animation-delay: 0.1s; }
.anim-d2 { animation-delay: 0.2s; }
.anim-d3 { animation-delay: 0.3s; }
</style>
</head>
<body>

<!-- SIDEBAR -->
<aside id="sidebar">
  <div class="sidebar-header">
    <div class="sidebar-logo">กลุ่มงานโภชนศาสตร์<br>โรงพยาบาลป่าพะยอม</div>
    <div class="sidebar-sub">Service Profile HA / สรพ.</div>
  </div>
  <div class="sidebar-icon-area">🍽️</div>
  
  <div class="nav-section-title">เนื้อหา</div>
  <nav>
    <a href="#s1" class="active"><span class="nav-icon">📋</span> Executive Summary <span class="nav-num">1</span></a>
    <a href="#s2"><span class="nav-icon">🏥</span> Service Profile <span class="nav-num">2</span></a>
    <a href="#s3"><span class="nav-icon">👥</span> Customer & Need <span class="nav-num">3</span></a>
    <a href="#s4"><span class="nav-icon">🔄</span> Process Map <span class="nav-num">4</span></a>
    <a href="#s5"><span class="nav-icon">⚠️</span> Risk & Safety <span class="nav-num">5</span></a>
    <a href="#s6"><span class="nav-icon">📊</span> KPI Dashboard <span class="nav-num">6</span></a>
    <a href="#s7"><span class="nav-icon">💡</span> Quality Insight <span class="nav-num">7</span></a>
    <a href="#s8"><span class="nav-icon">🔁</span> CQI / PDSA <span class="nav-num">8</span></a>
    <a href="#s9"><span class="nav-icon">🚀</span> แผนพัฒนา <span class="nav-num">9</span></a>
    <a href="#s10"><span class="nav-icon">✅</span> HA Readiness <span class="nav-num">10</span></a>
  </nav>
  
  <div class="sidebar-footer">
    จัดทำ ปี 2568 | โรงพยาบาลป่าพะยอม
  </div>
</aside>

<!-- MAIN -->
<div id="main">

  <!-- TOP BAR -->
  <div class="topbar">
    <div class="topbar-title">🍽️ Service Profile — กลุ่มงานโภชนศาสตร์</div>
    <div class="topbar-right">
      <span class="tag tag-green">HA Version 2568</span>
      <button class="btn btn-outline" onclick="window.print()">🖨️ Print / Export PDF</button>
    </div>
  </div>

  <!-- HERO -->
  <div class="hero">
    <div class="hero-badge">Service Profile — HA / สรพ. ฉบับปี 2568</div>
    <div class="hero-title">กลุ่มงานโภชนศาสตร์<br>โรงพยาบาลป่าพะยอม</div>
    <div class="hero-sub">ผลิตและบริการอาหารที่สะอาด ปลอดภัย ถูกต้องตามหลักโภชนาการ สนับสนุนการรักษา ป้องกันทุพโภชนาการ</div>
    <div style="display:flex; gap:10px; flex-wrap:wrap;">
      <span class="tag" style="background:rgba(255,255,255,0.2);color:white;border:1px solid rgba(255,255,255,0.3);">📍 อ.ป่าพะยอม จ.พัทลุง</span>
      <span class="tag" style="background:rgba(255,255,255,0.2);color:white;border:1px solid rgba(255,255,255,0.3);">🛏 โรงพยาบาลชุมชน 45 เตียง</span>
      <span class="tag" style="background:rgba(255,255,255,0.2);color:white;border:1px solid rgba(255,255,255,0.3);">🏅 ผ่านสุขาภิบาลอาหารระดับดี ปี 2568</span>
    </div>
    <div class="hero-stats">
      <div class="hero-stat">
        <div class="hero-stat-num">0</div>
        <div class="hero-stat-label">ข้อร้องเรียนจากอาหาร<br>(ทุกปี)</div>
      </div>
      <div class="hero-stat">
        <div class="hero-stat-num">100%</div>
        <div class="hero-stat-label">ผ่านสุขาภิบาลอาหาร<br>ทุกปี</div>
      </div>
      <div class="hero-stat">
        <div class="hero-stat-num">0</div>
        <div class="hero-stat-label">สารปนเปื้อน /<br>จัดอาหารผิดคน</div>
      </div>
      <div class="hero-stat">
        <div class="hero-stat-num">75</div>
        <div class="hero-stat-label">ข้อมาตรฐานสุขาภิบาล<br>ดำเนินการครบ</div>
      </div>
    </div>
  </div>

  <!-- S1: EXECUTIVE SUMMARY -->
  <section class="section" id="s1">
    <div class="section-header">
      <div class="section-num">1</div>
      <div>
        <div class="section-title">Executive Summary</div>
        <div class="section-subtitle">ภาพรวมกลุ่มงานและผลการดำเนินงาน</div>
      </div>
    </div>

    <div class="grid-3" style="margin-bottom:20px;">
      <div class="card">
        <div class="card-title"><span class="icon">🎯</span> Purpose</div>
        <p style="font-size:13px;color:var(--text-mid);line-height:1.6;">ผลิตและบริการอาหารที่ <strong>สะอาด ปลอดภัย</strong> ถูกต้องตามหลักโภชนาการ เหมาะสมกับโรคของผู้ป่วย สนับสนุนการรักษาของแพทย์ ป้องกันภาวะทุพโภชนาการ และให้โภชนศึกษาแก่ผู้ป่วย/ญาติ</p>
      </div>
      <div class="card">
        <div class="card-title"><span class="icon">🌟</span> จุดแข็งหลัก</div>
        <ul style="font-size:12.5px;color:var(--text-mid);list-style:none;line-height:2;">
          <li>✅ ไม่พบสารปนเปื้อนในอาหารทุกปี</li>
          <li>✅ ผ่านสุขาภิบาลอาหาร 100% ทุกปี</li>
          <li>✅ ไม่มีข้อร้องเรียนจากบริการอาหาร</li>
          <li>✅ ไม่พบการจัดอาหารผิดคนผิดโรค</li>
          <li>✅ Coliform ไม่พบปนเปื้อน 100%</li>
        </ul>
      </div>
      <div class="card">
        <div class="card-title"><span class="icon">🔧</span> โอกาสพัฒนา</div>
        <ul style="font-size:12.5px;color:var(--text-mid);list-style:none;line-height:2;">
          <li>⚠️ ใบเบิกอาหารไม่ตรงคำสั่งแพทย์ยังเกิดซ้ำ</li>
          <li>⚠️ ภาชนะสูญหายในอดีต (ปัจจุบัน = 0 แล้ว)</li>
          <li>🔄 ระบบ HospitalOS มีข้อจำกัด</li>
          <li>💡 ต้องการ Digital Diet Slip</li>
          <li>💡 Real-time diet order alert</li>
        </ul>
      </div>
    </div>

    <div style="background:linear-gradient(135deg,var(--primary-pale),var(--secondary-pale));border-radius:12px;padding:18px 22px;border:1px solid var(--border);">
      <div style="font-family:'Prompt',sans-serif;font-weight:600;font-size:14px;color:var(--primary);margin-bottom:10px;">🔗 ห่วงโซ่คุณภาพ (Quality Chain)</div>
      <div style="display:flex;align-items:center;gap:10px;flex-wrap:wrap;">
        <div class="ps" style="padding:8px 14px;">🎯 Purpose</div>
        <div class="ps-arrow">→</div>
        <div class="ps" style="padding:8px 14px;">⚙️ Process</div>
        <div class="ps-arrow">→</div>
        <div class="ps" style="padding:8px 14px;">⚠️ Risk</div>
        <div class="ps-arrow">→</div>
        <div class="ps" style="padding:8px 14px;">📊 KPI</div>
        <div class="ps-arrow">→</div>
        <div class="ps" style="padding:8px 14px;">🔁 CQI</div>
        <div class="ps-arrow">→</div>
        <div class="ps" style="background:var(--primary);color:white;border-color:var(--primary);padding:8px 14px;">🚀 Future Plan</div>
      </div>
    </div>
  </section>

  <!-- S2: SERVICE PROFILE -->
  <section class="section" id="s2">
    <div class="section-header">
      <div class="section-num">2</div>
      <div>
        <div class="section-title">Service Profile Overview</div>
        <div class="section-subtitle">ขอบเขตบริการและประเด็นคุณภาพสำคัญ</div>
      </div>
    </div>

    <div class="section-header" style="margin-bottom:14px;">
      <span style="font-family:'Prompt',sans-serif;font-weight:600;font-size:14px;color:var(--text-dark);">📌 Scope of Service</span>
    </div>
    <div class="scope-grid" style="margin-bottom:24px;">
      <div class="scope-card">
        <div class="scope-icon">🍛</div>
        <div class="scope-name">โภชนบริการ</div>
        <div class="scope-desc">ผลิตและบริการอาหารแก่ผู้ป่วย IPD ครบวงจร</div>
      </div>
      <div class="scope-card">
        <div class="scope-icon">💊</div>
        <div class="scope-name">โภชนบำบัด</div>
        <div class="scope-desc">ประเมินและวางแผนโภชนาการเฉพาะโรค</div>
      </div>
      <div class="scope-card">
        <div class="scope-icon">📚</div>
        <div class="scope-name">โภชนศึกษา</div>
        <div class="scope-desc">ให้ความรู้ผู้ป่วยและญาติเรื่องอาหารเฉพาะโรค</div>
      </div>
      <div class="scope-card">
        <div class="scope-icon">🏘️</div>
        <div class="scope-name">โภชนชุมชน</div>
        <div class="scope-desc">ส่งเสริมโภชนาการในชุมชนและ NCD คลินิก</div>
      </div>
      <div class="scope-card">
        <div class="scope-icon">🔬</div>
        <div class="scope-name">วิจัย/พัฒนาคุณภาพ</div>
        <div class="scope-desc">CQI และพัฒนาระบบงานโภชนศาสตร์</div>
      </div>
    </div>

    <div style="font-family:'Prompt',sans-serif;font-weight:600;font-size:14px;color:var(--text-dark);margin-bottom:14px;">🎖️ Key Quality Issues</div>
    <div class="grid-4">
      <div class="kpi-tile good">
        <div class="kpi-label">อาหารมีคุณภาพ<br>สะอาด ปลอดภัย</div>
        <div class="kpi-value green">✅</div>
        <div class="kpi-target">มาตรฐาน 75 ข้อ</div>
      </div>
      <div class="kpi-tile good">
        <div class="kpi-label">ถูกต้องตามแผนการรักษา<br>และหลักโภชนบำบัด</div>
        <div class="kpi-value blue">🎯</div>
        <div class="kpi-target">ตรวจสอบผ่าน HospitalOS</div>
      </div>
      <div class="kpi-tile good">
        <div class="kpi-label">ผู้ป่วยมีความรู้<br>เรื่องอาหารเฉพาะโรค</div>
        <div class="kpi-value green">📖</div>
        <div class="kpi-target">โภชนศึกษาทุกราย</div>
      </div>
      <div class="kpi-tile good">
        <div class="kpi-label">ความพึงพอใจ<br>ผู้รับบริการ</div>
        <div class="kpi-value blue">😊</div>
        <div class="kpi-target">ร้องเรียน = 0 ทุกปี</div>
      </div>
    </div>
  </section>

  <!-- S3: CUSTOMER & NEED -->
  <section class="section" id="s3">
    <div class="section-header">
      <div class="section-num">3</div>
      <div>
        <div class="section-title">Customer & Need</div>
        <div class="section-subtitle">ผู้รับผลงานและความต้องการหลัก</div>
      </div>
    </div>

    <div class="cust-split" style="margin-bottom:20px;">
      <div class="cust-box">
        <div class="cust-head ext">🌐 ผู้รับผลงานภายนอก (External Customers)</div>
        <div class="cust-body">
          <div class="cust-item"><div class="cust-avatar">🏥</div><div><strong>ผู้ป่วยใน (IPD)</strong><br><span style="font-size:11px;color:var(--text-light);">รับอาหารครบ 3 มื้อ เหมาะสมกับโรค</span></div></div>
          <div class="cust-item"><div class="cust-avatar">🚶</div><div><strong>ผู้ป่วยนอก (OPD)</strong><br><span style="font-size:11px;color:var(--text-light);">รับโภชนศึกษาและคำปรึกษา</span></div></div>
          <div class="cust-item"><div class="cust-avatar">👨‍👩‍👧</div><div><strong>ญาติ/ผู้ดูแล</strong><br><span style="font-size:11px;color:var(--text-light);">รับความรู้เรื่องอาหารเฉพาะโรค</span></div></div>
        </div>
      </div>
      <div class="cust-box">
        <div class="cust-head int">🏢 ผู้รับผลงานภายใน (Internal Customers)</div>
        <div class="cust-body">
          <div class="cust-item"><div class="cust-avatar" style="background:#e6f4fa;">👨‍⚕️</div><div><strong>แพทย์</strong><br><span style="font-size:11px;color:var(--text-light);">ต้องการอาหารตรงคำสั่งรักษา</span></div></div>
          <div class="cust-item"><div class="cust-avatar" style="background:#e6f4fa;">👩‍⚕️</div><div><strong>พยาบาล IPD/OPD</strong><br><span style="font-size:11px;color:var(--text-light);">ประสานงานใบเบิกอาหารและติดตามผล</span></div></div>
          <div class="cust-item"><div class="cust-avatar" style="background:#e6f4fa;">💊</div><div><strong>เภสัชกร / ปฐมภูมิ / เวชฟื้นฟู</strong><br><span style="font-size:11px;color:var(--text-light);">บูรณาการแผนการรักษาแบบสหวิชาชีพ</span></div></div>
          <div class="cust-item"><div class="cust-avatar" style="background:#e6f4fa;">💰</div><div><strong>การเงิน/พัสดุ</strong><br><span style="font-size:11px;color:var(--text-light);">ข้อมูลการเบิกจ่ายวัตถุดิบและงบประมาณ</span></div></div>
        </div>
      </div>
    </div>

    <div class="card">
      <div class="card-title"><span class="icon">💬</span> ความต้องการหลัก (Key Needs)</div>
      <div class="need-tags">
        <span class="need-tag">✅ ถูกคน</span>
        <span class="need-tag">🍽️ ถูกโรค</span>
        <span class="need-tag">⏰ ถูกเวลา</span>
        <span class="need-tag">🧼 สะอาด</span>
        <span class="need-tag">🛡️ ปลอดภัย</span>
        <span class="need-tag">🥦 มีคุณค่าทางโภชนาการ</span>
        <span class="need-tag">📖 มีความรู้ในการดูแลตนเอง</span>
        <span class="need-tag">🎯 ตรงคำสั่งแพทย์</span>
        <span class="need-tag">🌡️ อุณหภูมิเหมาะสม</span>
      </div>
    </div>
  </section>

  <!-- S4: PROCESS MAP -->
  <section class="section" id="s4">
    <div class="section-header">
      <div class="section-num">4</div>
      <div>
        <div class="section-title">Process Map</div>
        <div class="section-subtitle">กระบวนการหลักของกลุ่มงานโภชนศาสตร์</div>
      </div>
    </div>

    <!-- Process 1 -->
    <div class="card" style="margin-bottom:16px;">
      <div class="card-title"><span class="icon">🍽️</span> กระบวนการโภชนบริการ (Food Production & Service)</div>
      <div class="process-flow-wrap">
        <div class="ps">📋<br>วางแผนเมนู</div>
        <div class="ps-arrow">→</div>
        <div class="ps">📄<br>รับใบเบิกอาหาร</div>
        <div class="ps-arrow">→</div>
        <div class="ps">🛒<br>จัดหาวัตถุดิบ</div>
        <div class="ps-arrow">→</div>
        <div class="ps">🥬<br>ล้าง/เตรียม/<br>จัดเก็บ</div>
        <div class="ps-arrow">→</div>
        <div class="ps">🔥<br>ปรุงประกอบ</div>
        <div class="ps-arrow">→</div>
        <div class="ps">🚗<br>จัดและขนส่ง<br>อาหาร</div>
        <div class="ps-arrow">→</div>
        <div class="ps">🍛<br>บริการอาหาร</div>
        <div class="ps-arrow">→</div>
        <div class="ps" style="background:#e8f7f0;border-color:#27ae60;color:#1a6b40;">♻️<br>เก็บภาชนะ/<br>ล้าง/ขยะ</div>
      </div>
    </div>

    <!-- Process 2 -->
    <div class="card">
      <div class="card-title"><span class="icon">🩺</span> กระบวนการโภชนบำบัด (Nutrition Therapy)</div>
      <div class="process-flow-wrap">
        <div class="ps2">🔍<br>คัดกรอง<br>โภชนาการ</div>
        <div class="ps-arrow" style="color:var(--secondary);">→</div>
        <div class="ps2">📊<br>ประเมิน<br>ภาวะโภชนาการ</div>
        <div class="ps-arrow" style="color:var(--secondary);">→</div>
        <div class="ps2">🗂️<br>วางแผน<br>โภชนบำบัด</div>
        <div class="ps-arrow" style="color:var(--secondary);">→</div>
        <div class="ps2">💬<br>ให้ความรู้/<br>คำปรึกษา</div>
        <div class="ps-arrow" style="color:var(--secondary);">→</div>
        <div class="ps2" style="background:var(--secondary);color:white;border-color:var(--secondary);">📈<br>ติดตามผล</div>
      </div>
      <div style="margin-top:12px;font-size:12px;color:var(--text-light);">
        💡 ดำเนินการร่วมกับทีมสหวิชาชีพ | ประเมิน IMC ผู้ป่วยทุกราย | มีอาหารทางสายยาง Blenderized diet
      </div>
    </div>
  </section>

  <!-- S5: RISK -->
  <section class="section" id="s5">
    <div class="section-header">
      <div class="section-num">5</div>
      <div>
        <div class="section-title">Risk & Safety Control</div>
        <div class="section-subtitle">ความเสี่ยงสำคัญและมาตรการควบคุม</div>
      </div>
    </div>

    <div class="risk-grid">
      <div class="risk-card high">
        <div class="risk-level">🔴 ความเสี่ยงสูง</div>
        <div class="risk-name">ใบเบิกอาหารไม่ตรงคำสั่งแพทย์</div>
        <div class="risk-control">
          <span>📌 ตรวจสอบ HospitalOS ก่อนปรุง</span>
          <span>📌 ใช้ Diet Slip ยืนยันทุกมื้อ</span>
          <span>📌 พยาบาลแจ้งเปลี่ยนคำสั่งทันที</span>
        </div>
      </div>
      <div class="risk-card high">
        <div class="risk-level">🔴 ความเสี่ยงสูง</div>
        <div class="risk-name">ให้บริการอาหารผิดคน ผิดโรค</div>
        <div class="risk-control">
          <span>📌 เรียกชื่อผู้ป่วยก่อนเสิร์ฟทุกครั้ง</span>
          <span>📌 ตรวจสอบ Wristband / เตียง</span>
          <span>📌 ป้ายอาหารระบุชื่อ-ประเภทอาหาร</span>
        </div>
      </div>
      <div class="risk-card high">
        <div class="risk-level">🔴 ความเสี่ยงสูง</div>
        <div class="risk-name">สิ่งแปลกปลอม/สารปนเปื้อนในอาหาร</div>
        <div class="risk-control">
          <span>📌 ตรวจแบคทีเรีย Coliform รายเดือน</span>
          <span>📌 ตรวจสารเคมี/ยาฆ่าแมลงรายปี</span>
          <span>📌 อบรมสุขาภิบาลอาหารประจำปี</span>
        </div>
      </div>
      <div class="risk-card medium">
        <div class="risk-level">🟡 ความเสี่ยงปานกลาง</div>
        <div class="risk-name">วัตถุดิบไม่เพียงพอหรือไม่มีคุณภาพ</div>
        <div class="risk-control">
          <span>📌 วางแผนเมนูล่วงหน้า 1 สัปดาห์</span>
          <span>📌 ตรวจรับวัตถุดิบตามมาตรฐาน</span>
          <span>📌 มีรายการอาหารสำรองฉุกเฉิน</span>
        </div>
      </div>
      <div class="risk-card medium">
        <div class="risk-level">🟡 ความเสี่ยงปานกลาง</div>
        <div class="risk-name">ภาชนะไม่สะอาด / ภาชนะสูญหาย</div>
        <div class="risk-control">
          <span>📌 กำหนดวิธีล้างภาชนะตามมาตรฐาน</span>
          <span>📌 ลงทะเบียนภาชนะและตรวจนับ</span>
          <span>📌 ตรวจสอบก่อน-หลังบริการทุกครั้ง</span>
        </div>
      </div>
      <div class="risk-card low">
        <div class="risk-level">🟢 ความเสี่ยงต่ำ (ควบคุมได้)</div>
        <div class="risk-name">อุณหภูมิอาหารไม่เหมาะสม</div>
        <div class="risk-control">
          <span>📌 ตรวจวัดอุณหภูมิก่อนส่งอาหาร</span>
          <span>📌 บันทึกอุณหภูมิทุกมื้อ</span>
          <span>📌 ใช้ภาชนะรักษาอุณหภูมิ</span>
        </div>
      </div>
    </div>
  </section>

  <!-- S6: KPI DASHBOARD -->
  <section class="section" id="s6">
    <div class="section-header">
      <div class="section-num">6</div>
      <div>
        <div class="section-title">KPI Dashboard</div>
        <div class="section-subtitle">ตัวชี้วัดสำคัญ ปี 2566–2569 (ม.ค.–มี.ค.)</div>
      </div>
    </div>

    <!-- KPI TILES -->
    <div style="display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:22px;">
      <div class="kpi-tile good">
        <div class="kpi-label">ข้อร้องเรียนจาก<br>บริการอาหาร</div>
        <div class="kpi-value green">0</div>
        <div class="kpi-target">เป้า: 0 ครั้ง</div>
        <div class="kpi-trend up">✅ ทุกปี</div>
      </div>
      <div class="kpi-tile good">
        <div class="kpi-label">สารปนเปื้อน<br>ในอาหาร</div>
        <div class="kpi-value green">0</div>
        <div class="kpi-target">เป้า: 0 ครั้ง</div>
        <div class="kpi-trend up">✅ ทุกปี</div>
      </div>
      <div class="kpi-tile good">
        <div class="kpi-label">สารกำจัดศัตรูพืช<br>ในอาหาร</div>
        <div class="kpi-value green">0</div>
        <div class="kpi-target">เป้า: 0 ครั้ง</div>
        <div class="kpi-trend up">✅ ทุกปี</div>
      </div>
      <div class="kpi-tile good">
        <div class="kpi-label">จัดอาหารผิดคน<br>ผิดโรค</div>
        <div class="kpi-value green">0</div>
        <div class="kpi-target">เป้า: 0 ครั้ง</div>
        <div class="kpi-trend up">✅ ทุกปี</div>
      </div>
      <div class="kpi-tile good">
        <div class="kpi-label">สุขาภิบาลอาหาร<br>ผ่านเกณฑ์</div>
        <div class="kpi-value green">100%</div>
        <div class="kpi-target">เป้า: 100%</div>
        <div class="kpi-trend up">✅ ทุกปี</div>
      </div>
    </div>

    <!-- ตารางข้อมูล -->
    <div class="card" style="margin-bottom:20px;padding:0;overflow:hidden;">
      <table class="data-table">
        <thead>
          <tr>
            <th>ตัวชี้วัด</th>
            <th>เป้าหมาย</th>
            <th>2566</th>
            <th>2567</th>
            <th>2568</th>
            <th>2569 (ม.ค.-มี.ค.)</th>
            <th>แนวโน้ม</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td>ข้อร้องเรียนจากบริการอาหาร (ครั้ง)</td>
            <td><span class="tag tag-green">0</span></td>
            <td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td>
            <td>✅ ดีเยี่ยม</td>
          </tr>
          <tr>
            <td>ใบเบิกอาหารไม่ตรงคำสั่งแพทย์ (ครั้ง)</td>
            <td><span class="tag tag-green">0</span></td>
            <td class="cell-warn">7</td><td class="cell-warn">12</td><td class="cell-warn">9</td><td class="cell-warn">4</td>
            <td>⚠️ ดีขึ้น แต่ยังเกิด</td>
          </tr>
          <tr>
            <td>พบสารปนเปื้อนในอาหาร (ครั้ง)</td>
            <td><span class="tag tag-green">0</span></td>
            <td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td>
            <td>✅ ดีเยี่ยม</td>
          </tr>
          <tr>
            <td>พบสารกำจัดศัตรูพืช (ครั้ง)</td>
            <td><span class="tag tag-green">0</span></td>
            <td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td>
            <td>✅ ดีเยี่ยม</td>
          </tr>
          <tr>
            <td>สิ่งแปลกปลอมในอาหาร (ครั้ง)</td>
            <td><span class="tag tag-green">0</span></td>
            <td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td>
            <td>✅ ดีเยี่ยม</td>
          </tr>
          <tr>
            <td>อุณหภูมิอาหารไม่เหมาะสม (ครั้ง)</td>
            <td><span class="tag tag-green">0</span></td>
            <td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-warn">1</td><td class="cell-zero">0</td>
            <td>⚠️ เคยพบ 1 ครั้ง</td>
          </tr>
          <tr>
            <td>สุขาภิบาลอาหารครบเกณฑ์ (%)</td>
            <td><span class="tag tag-blue">100%</span></td>
            <td class="cell-pct">100%</td><td class="cell-pct">100%</td><td class="cell-pct">100%</td><td class="cell-pct">100%</td>
            <td>✅ ดีเยี่ยม</td>
          </tr>
          <tr>
            <td>Coliform ไม่พบปนเปื้อน (%)</td>
            <td><span class="tag tag-blue">100%</span></td>
            <td class="cell-pct">100%</td><td class="cell-pct">100%</td><td class="cell-pct">100%</td><td class="cell-pct">100%</td>
            <td>✅ ดีเยี่ยม</td>
          </tr>
          <tr>
            <td>จัดอาหารผิดคนผิดโรค (ครั้ง)</td>
            <td><span class="tag tag-green">0</span></td>
            <td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td><td class="cell-zero">0</td>
            <td>✅ ดีเยี่ยม</td>
          </tr>
          <tr>
            <td>ภาชนะสูญหาย (ชิ้น)</td>
            <td><span class="tag tag-green">0</span></td>
            <td class="cell-warn">8</td><td class="cell-warn">15</td><td class="cell-warn">12</td><td class="cell-zero">0</td>
            <td>✅ ดีขึ้น = 0 แล้ว</td>
          </tr>
        </tbody>
      </table>
    </div>

    <!-- CHARTS -->
    <div class="grid-2">
      <div class="card">
        <div class="card-title"><span class="icon">📉</span> ใบเบิกอาหารไม่ตรงคำสั่งแพทย์</div>
        <div class="chart-wrapper">
          <canvas id="chartDietSlip"></canvas>
        </div>
        <div style="font-size:11px;color:var(--text-light);margin-top:6px;">📌 ยังไม่ถึงเป้า = 0 แต่แนวโน้มดีขึ้น (จาก 12→9→4)</div>
      </div>
      <div class="card">
        <div class="card-title"><span class="icon">📦</span> ภาชนะสูญหาย (ชิ้น)</div>
        <div class="chart-wrapper">
          <canvas id="chartContainer"></canvas>
        </div>
        <div style="font-size:11px;color:var(--text-light);margin-top:6px;">📌 ปี 2569 ไตรมาส 1 = 0 — มาตรการควบคุมได้ผล</div>
      </div>
    </div>
  </section>

  <!-- S7: INSIGHT -->
  <section class="section" id="s7">
    <div class="section-header">
      <div class="section-num">7</div>
      <div>
        <div class="section-title">Quality Insight</div>
        <div class="section-subtitle">วิเคราะห์เชิงคุณภาพ — ไม่ใช่แค่ตัวเลข</div>
      </div>
    </div>

    <div class="grid-2" style="margin-bottom:16px;">
      <div class="insight-box strength">
        <div class="insight-title">💪 จุดแข็ง (Strengths)</div>
        <ul class="insight-list">
          <li>ความปลอดภัยของอาหารดีเยี่ยม — ไม่พบสารปนเปื้อน Coliform และสารเคมีทุกปี</li>
          <li>ผ่านมาตรฐานสุขาภิบาลอาหาร 75 ข้อ ระดับดี ปี 2568 และทุกปีที่ผ่านมา</li>
          <li>ไม่มีข้อร้องเรียนจากบริการอาหารแม้แต่ครั้งเดียว</li>
          <li>ไม่พบการจัดอาหารผิดคนผิดโรคเลยตลอด 4 ปี</li>
          <li>ระบบตรวจสอบ HospitalOS ช่วยลดความคลาดเคลื่อน</li>
        </ul>
      </div>
      <div class="insight-box opp">
        <div class="insight-title">🔧 โอกาสพัฒนา (Opportunities)</div>
        <ul class="insight-list">
          <li>ใบเบิกอาหารไม่ตรงคำสั่งแพทย์ยังเกิดซ้ำทุกปี แม้จำนวนลดลง</li>
          <li>ระบบ HospitalOS/HosMerge มีข้อจำกัดเมื่อคำสั่งอาหารเปลี่ยนกะทันหัน</li>
          <li>ยังไม่มี Digital Diet Slip แบบ Real-time</li>
          <li>ภาชนะสูญหายในอดีต แม้ปีนี้แก้ไขได้แล้ว</li>
          <li>กระบวนการแจ้งเตือนเมื่อ Diet Order เปลี่ยนยังพึ่งพาคนมากเกินไป</li>
        </ul>
      </div>
    </div>

    <div class="insight-box alert" style="margin-bottom:0;">
      <div class="insight-title">🚨 ประเด็นที่ต้องพัฒนา CQI เร่งด่วน</div>
      <ul class="insight-list">
        <li><strong>ลดความคลาดเคลื่อนใบเบิกอาหาร</strong> — วิเคราะห์รากสาเหตุ RCA และออกแบบ Double Check ใหม่</li>
        <li><strong>Digital Diet Slip</strong> — เชื่อมต่อคำสั่งแพทย์กับระบบครัวแบบ Real-time</li>
        <li><strong>Real-time Diet Order Alert</strong> — แจ้งเตือนครัวทันทีเมื่อมีการเปลี่ยนคำสั่งอาหาร</li>
        <li><strong>Barcode/QR Tray Matching</strong> — ลดโอกาสผิดคนด้วยเทคโนโลยี</li>
      </ul>
    </div>
  </section>

  <!-- S8: CQI / PDSA -->
  <section class="section" id="s8">
    <div class="section-header">
      <div class="section-num">8</div>
      <div>
        <div class="section-title">CQI / PDSA</div>
        <div class="section-subtitle">โครงการพัฒนาคุณภาพต่อเนื่อง — ลดความคลาดเคลื่อนใบเบิกอาหาร</div>
      </div>
    </div>

    <div class="pdsa-grid">
      <div class="pdsa-card">
        <div class="pdsa-header">P — Plan</div>
        <div class="pdsa-body">
          <div class="pdsa-item">วิเคราะห์รากสาเหตุ (RCA) ความคลาดเคลื่อน</div>
          <div class="pdsa-item">ออกแบบ Workflow Double Check ใหม่</div>
          <div class="pdsa-item">กำหนด KPI เป้าหมาย &lt; 5 ครั้ง/ปี</div>
          <div class="pdsa-item">วางแผนอบรมพยาบาลและครัว</div>
        </div>
      </div>
      <div class="pdsa-card">
        <div class="pdsa-header">D — Do</div>
        <div class="pdsa-body">
          <div class="pdsa-item">ติดป้าย Diet Type บนถาดอาหารทุกถาด</div>
          <div class="pdsa-item">พยาบาลส่งใบเบิกใหม่ทันทีหากเปลี่ยน</div>
          <div class="pdsa-item">ครัวตรวจสอบ HospitalOS ก่อนปรุงทุกมื้อ</div>
          <div class="pdsa-item">บันทึกเหตุการณ์และรายงาน Incident</div>
        </div>
      </div>
      <div class="pdsa-card">
        <div class="pdsa-header">S — Study</div>
        <div class="pdsa-body">
          <div class="pdsa-item">จำนวนครั้งลดจาก 12→9→4 (แนวโน้มดี)</div>
          <div class="pdsa-item">พบว่าปัญหาหลักเกิดจากการเปลี่ยนคำสั่งเร่งด่วน</div>
          <div class="pdsa-item">ระบบ HOS ไม่แจ้งเตือน Real-time</div>
          <div class="pdsa-item">วิเคราะห์ช่วงเวลาที่เกิดมากที่สุด</div>
        </div>
      </div>
      <div class="pdsa-card">
        <div class="pdsa-header">A — Act</div>
        <div class="pdsa-body">
          <div class="pdsa-item">ศึกษาความเป็นไปได้ Digital Diet Slip</div>
          <div class="pdsa-item">เสนอพัฒนา Real-time Alert ระบบ HOS</div>
          <div class="pdsa-item">ขยาย Double Check ในทุกเวร</div>
          <div class="pdsa-item">เสนองบประมาณพัฒนาระบบดิจิทัล</div>
        </div>
      </div>
    </div>

    <div class="divider"></div>

    <div class="card">
      <div class="card-title"><span class="icon">🔄</span> Ongoing Quality Improvement — กิจกรรมต่อเนื่อง</div>
      <div class="grid-3">
        <div>
          <div style="font-size:13px;font-weight:600;color:var(--primary);margin-bottom:8px;">🏥 คลินิก NCD / DM</div>
          <ul style="font-size:12.5px;color:var(--text-mid);list-style:none;line-height:1.8;">
            <li>→ ร่วมทีมสหวิชาชีพคลินิก NCD</li>
            <li>→ คลินิกเบาหวานระยะสงบ (DM Remission)</li>
            <li>→ ให้โภชนบำบัดและโภชนศึกษาเฉพาะราย</li>
          </ul>
        </div>
        <div>
          <div style="font-size:13px;font-weight:600;color:var(--primary);margin-bottom:8px;">⚖️ ภาวะโภชนาการ</div>
          <ul style="font-size:12.5px;color:var(--text-mid);list-style:none;line-height:1.8;">
            <li>→ ประเมิน IMC ผู้ป่วยทุกราย</li>
            <li>→ คัดกรองทุพโภชนาการ</li>
            <li>→ ติดตามและรายงานผล</li>
          </ul>
        </div>
        <div>
          <div style="font-size:13px;font-weight:600;color:var(--primary);margin-bottom:8px;">🍶 Blenderized Diet</div>
          <ul style="font-size:12.5px;color:var(--text-mid);list-style:none;line-height:1.8;">
            <li>→ จัดทำอาหารทางสายยางสูตรเฉพาะ</li>
            <li>→ ลดต้นทุนและเพิ่มความปลอดภัย</li>
            <li>→ ให้ความรู้ญาติผู้ดูแล</li>
          </ul>
        </div>
      </div>
    </div>
  </section>

  <!-- S9: CURRENT QUALITY + FUTURE PLAN -->
  <section class="section" id="s9">
    <div class="section-header">
      <div class="section-num">9</div>
      <div>
        <div class="section-title">ระบบคุณภาพปัจจุบัน & แผนพัฒนา</div>
        <div class="section-subtitle">Current Quality System & Future Development Plan</div>
      </div>
    </div>

    <div style="font-family:'Prompt',sans-serif;font-weight:600;font-size:14px;color:var(--text-dark);margin-bottom:14px;">⚙️ Current Quality System</div>
    <div class="qs-grid" style="margin-bottom:24px;">
      <div class="qs-item">
        <div class="qs-num">1</div>
        <div class="qs-text">ดำเนินการตาม<strong>มาตรฐานสุขาภิบาลอาหาร 75 ข้อ</strong> ครบถ้วน</div>
      </div>
      <div class="qs-item">
        <div class="qs-num">2</div>
        <div class="qs-text">ผ่านมาตรฐานสุขาภิบาลอาหาร<strong>ระดับดี ปี 2568</strong></div>
      </div>
      <div class="qs-item">
        <div class="qs-num">3</div>
        <div class="qs-text">ใช้<strong>HospitalOS</strong> ตรวจสอบคำสั่งอาหารก่อนปรุงทุกมื้อ</div>
      </div>
      <div class="qs-item">
        <div class="qs-num">4</div>
        <div class="qs-text">ประเมินโภชนาการผู้ป่วย <strong>IMC ทุกราย</strong> ที่รับไว้</div>
      </div>
      <div class="qs-item">
        <div class="qs-num">5</div>
        <div class="qs-text">จัดทำ<strong>มาตรฐานอาหารทั่วไปและอาหารเฉพาะโรค</strong> อ้างอิง</div>
      </div>
      <div class="qs-item">
        <div class="qs-num">6</div>
        <div class="qs-text">ตรวจแบคทีเรีย <strong>Coliform รายเดือน</strong> และสารเคมีรายปี</div>
      </div>
    </div>

    <div class="divider"></div>

    <div style="font-family:'Prompt',sans-serif;font-weight:600;font-size:14px;color:var(--text-dark);margin-bottom:14px;">🚀 Future Development Plan</div>
    <div class="grid-3" style="margin-bottom:0;">
      <div class="fp-card">
        <div class="fp-icon">👩‍🏫</div>
        <div class="fp-title">พัฒนาสมรรถนะบุคลากร</div>
        <div class="fp-desc">อบรมต่อเนื่องทั้งด้านโภชนศาสตร์คลินิก สุขาภิบาลอาหาร และทักษะดิจิทัล</div>
      </div>
      <div class="fp-card">
        <div class="fp-icon">🔬</div>
        <div class="fp-title">พัฒนางานวิจัย</div>
        <div class="fp-desc">ศึกษาวิจัยเพื่อเพิ่มประสิทธิภาพงานโภชนศาสตร์และเผยแพร่ผลงานในระดับจังหวัด/เขต</div>
      </div>
      <div class="fp-card">
        <div class="fp-icon">📱</div>
        <div class="fp-title">พัฒนาสื่อ DM Remission</div>
        <div class="fp-desc">จัดทำสื่อการสอนและสื่อดิจิทัลสำหรับผู้ป่วยเบาหวานระยะสงบ</div>
      </div>
      <div class="fp-card">
        <div class="fp-icon">⚡</div>
        <div class="fp-title">พัฒนาระบบบริการอาหาร</div>
        <div class="fp-desc">ปรับปรุงกระบวนการ ประเมินความพึงพอใจ และนำ Digital Diet Slip มาใช้</div>
      </div>
      <div class="fp-card">
        <div class="fp-icon">🩺</div>
        <div class="fp-title">คัดกรองทุพโภชนาการ</div>
        <div class="fp-desc">พัฒนากระบวนการคัดกรองให้ครอบคลุมและมีประสิทธิภาพ เชื่อมต่อกับ HDC</div>
      </div>
      <div class="fp-card" style="border-top-color:var(--secondary-light);">
        <div class="fp-icon">🤝</div>
        <div class="fp-title">บูรณาการสหวิชาชีพ</div>
        <div class="fp-desc">ขยายความร่วมมือกับแพทย์ พยาบาล เภสัช และปฐมภูมิ ในการดูแลผู้ป่วยแบบองค์รวม</div>
      </div>
    </div>
  </section>

  <!-- S10: HA READINESS -->
  <section class="section" id="s10">
    <div class="section-header">
      <div class="section-num">10</div>
      <div>
        <div class="section-title">HA Survey Readiness</div>
        <div class="section-subtitle">ความพร้อมสำหรับทีมเยี่ยมสำรวจ HA / สรพ.</div>
      </div>
    </div>

    <div style="background:var(--primary-pale);border-radius:10px;padding:14px 18px;margin-bottom:18px;border:1px solid var(--border);">
      <div style="font-family:'Prompt',sans-serif;font-weight:600;font-size:14px;color:var(--primary);margin-bottom:6px;">🎯 ประเด็นที่กลุ่มงานโภชนศาสตร์ตอบได้ชัดเจนต่อ HA</div>
      <div style="font-size:13px;color:var(--text-mid);">กลุ่มงานสามารถแสดงให้เห็น <strong>Purpose → Process → Risk → KPI → CQI → Future Plan</strong> ในทุกมิติอย่างเป็นระบบ พร้อมหลักฐานเชิงข้อมูลย้อนหลัง 4 ปี</div>
    </div>

    <div class="ha-grid">
      <div class="ha-item">
        <div class="ha-icon done">📋</div>
        <div>
          <div class="ha-name">Service Profile ครบถ้วน</div>
          <div class="ha-desc">Purpose / Scope / Customer / Key Process / Risk / KPI ชัดเจน</div>
        </div>
        <div class="status-dot done"></div>
      </div>
      <div class="ha-item">
        <div class="ha-icon done">🧪</div>
        <div>
          <div class="ha-name">มาตรฐานสุขาภิบาลอาหาร 75 ข้อ</div>
          <div class="ha-desc">ผ่านระดับดี ปี 2568 — มีหลักฐานและบันทึก</div>
        </div>
        <div class="status-dot done"></div>
      </div>
      <div class="ha-item">
        <div class="ha-icon done">📊</div>
        <div>
          <div class="ha-name">ข้อมูล KPI ครบ 4 ปี</div>
          <div class="ha-desc">2566–2569 (ม.ค.–มี.ค.) พร้อมแนวโน้ม</div>
        </div>
        <div class="status-dot done"></div>
      </div>
      <div class="ha-item">
        <div class="ha-icon done">🔄</div>
        <div>
          <div class="ha-name">โครงการ CQI ชัดเจน</div>
          <div class="ha-desc">PDSA ลดความคลาดเคลื่อนใบเบิกอาหาร — มีข้อมูลประกอบ</div>
        </div>
        <div class="status-dot done"></div>
      </div>
      <div class="ha-item">
        <div class="ha-icon done">⚠️</div>
        <div>
          <div class="ha-name">Risk Management</div>
          <div class="ha-desc">ระบุความเสี่ยง มาตรการควบคุม และผลลัพธ์</div>
        </div>
        <div class="status-dot done"></div>
      </div>
      <div class="ha-item">
        <div class="ha-icon partial">🤝</div>
        <div>
          <div class="ha-name">Multidisciplinary Team</div>
          <div class="ha-desc">ร่วมทีมสหวิชาชีพ NCD / DM Remission — อยู่ระหว่างพัฒนา</div>
        </div>
        <div class="status-dot partial"></div>
      </div>
      <div class="ha-item">
        <div class="ha-icon plan">💻</div>
        <div>
          <div class="ha-name">Digital Diet System</div>
          <div class="ha-desc">อยู่ในแผนพัฒนา — ศึกษาความเป็นไปได้ ปี 2569</div>
        </div>
        <div class="status-dot plan"></div>
      </div>
      <div class="ha-item">
        <div class="ha-icon plan">📱</div>
        <div>
          <div class="ha-name">สื่อ DM Remission</div>
          <div class="ha-desc">อยู่ในแผนจัดทำ — ปี 2569</div>
        </div>
        <div class="status-dot plan"></div>
      </div>
    </div>

    <div style="margin-top:18px;display:flex;gap:16px;flex-wrap:wrap;">
      <div style="display:flex;align-items:center;gap:8px;font-size:13px;">
        <div class="status-dot done" style="width:14px;height:14px;"></div>
        <span><strong>ดำเนินการแล้ว / พร้อม</strong></span>
      </div>
      <div style="display:flex;align-items:center;gap:8px;font-size:13px;">
        <div class="status-dot partial" style="width:14px;height:14px;"></div>
        <span><strong>อยู่ระหว่างดำเนินการ</strong></span>
      </div>
      <div style="display:flex;align-items:center;gap:8px;font-size:13px;">
        <div class="status-dot plan" style="width:14px;height:14px;"></div>
        <span><strong>อยู่ในแผนพัฒนา</strong></span>
      </div>
    </div>

    <div class="divider"></div>

    <div style="background:linear-gradient(135deg,#e8f7f0,#e6f4fa);border-radius:12px;padding:18px 22px;border:1px solid var(--border);text-align:center;">
      <div style="font-family:'Prompt',sans-serif;font-weight:700;font-size:16px;color:var(--primary);margin-bottom:8px;">
        🏅 กลุ่มงานโภชนศาสตร์ โรงพยาบาลป่าพะยอม
      </div>
      <div style="font-size:14px;color:var(--text-mid);">
        พร้อมนำเสนอต่อทีมเยี่ยมสำรวจ HA / สรพ. ด้วยข้อมูลครบถ้วน มีระบบ มีหลักฐาน และมีแผนพัฒนาที่ชัดเจน
      </div>
      <div style="margin-top:12px;font-size:13px;color:var(--text-light);">
        จัดทำโดย กลุ่มงานโภชนศาสตร์ โรงพยาบาลป่าพะยอม | ปีงบประมาณ 2568
      </div>
    </div>
  </section>

</div>

<script>
// CHART 1: Diet Slip errors
const ctx1 = document.getElementById('chartDietSlip');
if (ctx1) {
  new Chart(ctx1, {
    type: 'bar',
    data: {
      labels: ['2566', '2567', '2568', '2569\n(ม.ค.-มี.ค.)'],
      datasets: [{
        label: 'จำนวนครั้ง',
        data: [7, 12, 9, 4],
        backgroundColor: ['#f39c1288','#e74c3c88','#e67e2288','#3498db88'],
        borderColor: ['#f39c12','#e74c3c','#e67e22','#3498db'],
        borderWidth: 2,
        borderRadius: 6,
      }, {
        label: 'เป้าหมาย',
        data: [0, 0, 0, 0],
        type: 'line',
        borderColor: '#27ae60',
        borderDash: [5,5],
        borderWidth: 2,
        pointRadius: 0,
        fill: false,
      }]
    },
    options: {
      responsive: true,
      maintainAspectRatio: false,
      plugins: {
        legend: { display: true, position: 'bottom', labels: { font: { family: 'Sarabun', size: 11 }, boxWidth: 12 } },
        tooltip: { bodyFont: { family: 'Sarabun' }, titleFont: { family: 'Sarabun' } }
      },
      scales: {
        y: { beginAtZero: true, grid: { color: '#e8f0ed' }, ticks: { font: { family: 'Sarabun', size: 11 } } },
        x: { grid: { display: false }, ticks: { font: { family: 'Sarabun', size: 11 } } }
      }
    }
  });
}

// CHART 2: Container loss
const ctx2 = document.getElementById('chartContainer');
if (ctx2) {
  new Chart(ctx2, {
    type: 'line',
    data: {
      labels: ['2566', '2567', '2568', '2569\n(ม.ค.-มี.ค.)'],
      datasets: [{
        label: 'ภาชนะสูญหาย (ชิ้น)',
        data: [8, 15, 12, 0],
        backgroundColor: 'rgba(231,76,60,0.1)',
        borderColor: '#e74c3c',
        borderWidth: 2.5,
        pointBackgroundColor: ['#e74c3c','#e74c3c','#e74c3c','#27ae60'],
        pointRadius: 6,
        fill: true,
        tension: 0.35,
      }]
    },
    options: {
      responsive: true,
      maintainAspectRatio: false,
      plugins: {
        legend: { display: false },
        tooltip: { bodyFont: { family: 'Sarabun' }, titleFont: { family: 'Sarabun' } }
      },
      scales: {
        y: { beginAtZero: true, grid: { color: '#e8f0ed' }, ticks: { font: { family: 'Sarabun', size: 11 } } },
        x: { grid: { display: false }, ticks: { font: { family: 'Sarabun', size: 11 } } }
      }
    }
  });
}

// Smooth scroll + active nav
document.querySelectorAll('nav a').forEach(link => {
  link.addEventListener('click', function(e) {
    e.preventDefault();
    const target = document.querySelector(this.getAttribute('href'));
    if (target) target.scrollIntoView({ behavior: 'smooth', block: 'start' });
    document.querySelectorAll('nav a').forEach(a => a.classList.remove('active'));
    this.classList.add('active');
  });
});

// Scroll spy
const sections = document.querySelectorAll('section[id]');
const navLinks = document.querySelectorAll('nav a');

window.addEventListener('scroll', () => {
  let current = '';
  sections.forEach(s => {
    if (window.scrollY >= s.offsetTop - 120) current = s.id;
  });
  navLinks.forEach(a => {
    a.classList.remove('active');
    if (a.getAttribute('href') === '#' + current) a.classList.add('active');
  });
});
</script>
</body>
</html>

Youez - 2016 - github.com/yon3zu
LinuXploit