/* PHIMAI HEALTH | ผู้พัฒนาระบบ : นายวิษณุ เสาะสาย | ตำแหน่ง : เจ้าพนักงานธุรการ */
.committee-poster{--poster-ink:#123e6c;--poster-line:#8d6ce8}.committee-poster .committee-hero{position:relative;min-height:220px;text-align:center;color:var(--poster-ink);background:linear-gradient(130deg,#ffffffed,#f7fbffe8);box-shadow:none;border:1px solid #ffffff;border-radius:26px;padding:38px 200px 30px 30px;overflow:hidden}.committee-poster .committee-hero:before,.committee-poster .committee-scroll:after{content:"";position:absolute;width:260px;height:240px;background-image:radial-gradient(#5685c75c 3px,transparent 4px);background-size:13px 13px;pointer-events:none;transform:rotate(-20deg);right:-70px;top:-100px}.committee-poster .committee-hero h1{color:var(--poster-ink);font-weight:800;font-size:clamp(24px,2.7vw,40px);line-height:1.6;margin:8px 0}.committee-poster .committee-hero p{color:var(--poster-ink);font-size:clamp(15px,1.7vw,23px);font-weight:700}.committee-poster .committee-kicker{letter-spacing:0;color:#3c6383}.committee-seal{position:absolute;right:34px;top:30px;width:140px;height:140px;object-fit:contain;z-index:1}.committee-poster .committee-scroll{position:relative;border-radius:28px;background:linear-gradient(150deg,#f6faff,#dbe4f3);border:1px solid #edf4ff}.committee-poster .committee-scroll:after{top:auto;bottom:-120px;right:-100px}.committee-poster .committee-chart{padding:32px 36px 52px;min-width:1080px;width:100%;box-sizing:border-box;gap:60px;isolation:isolate}.committee-poster-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;position:relative;z-index:1;gap:26px}.committee-chairs{grid-column:2;display:flex;flex-direction:column;align-items:center;gap:24px}.committee-advisers{grid-column:3;background:#ffffffdd;border-radius:28px;padding:22px 12px;min-width:0}.committee-advisers h2{text-align:center;color:var(--poster-ink);font-size:23px;font-weight:800}.committee-advisers>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.committee-poster .committee-person{width:260px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;position:relative;z-index:1;flex-shrink:0}.committee-poster .committee-person summary{padding:0;gap:8px}.committee-poster .committee-portrait{display:grid;place-items:center;width:166px;height:214px;background:linear-gradient(135deg,#eff5fc,#e1eef6);border:3px solid white;box-shadow:0 6px 18px #19457420}.committee-poster .committee-person img{display:block;width:100%;height:100%;border:0;border-radius:0;object-fit:contain;object-position:bottom}.committee-poster .committee-avatar{border-radius:0;width:100%;height:100%;font-size:78px;background:transparent;color:#7195af}.committee-poster .committee-person strong{color:var(--poster-ink);font-weight:800;font-size:21px;line-height:1.45;overflow-wrap:anywhere}.committee-poster .committee-role{font-size:18px;font-weight:700;color:var(--poster-ink);line-height:1.5}.committee-poster .committee-hint{font-size:11px;color:#50708b}.committee-poster .committee-person--chair .committee-portrait{width:180px;height:240px}.committee-poster .committee-person--adviser{width:auto;min-width:0}.committee-poster .committee-person--adviser .committee-portrait{width:112px;height:155px}.committee-poster .committee-person--adviser strong{font-size:15px}.committee-poster .committee-person--adviser .committee-role{font-size:13px}.committee-deputies{display:flex;flex-wrap:wrap;justify-content:space-around;gap:35px 180px;position:relative;z-index:1}.committee-secretaries{display:flex;flex-wrap:wrap;justify-content:center;padding-left:300px;gap:30px;position:relative;z-index:1}.committee-members{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 25px;justify-items:center;position:relative;z-index:1}.committee-poster .committee-duty{background:#ffffffed;border:1px solid #cbdcea;border-radius:14px;margin-top:12px;color:#23465c;max-width:100%}.committee-poster .committee-lines{z-index:0}.committee-poster .committee-lines path{stroke:url(#committee-connection-gradient);stroke-width:5;stroke-dasharray:18 2;filter:drop-shadow(0 0 3px #bc8ae566);animation:committee-flow 4s linear infinite}.committee-poster .committee-mandate{border-left:5px solid #8976dd;background:#f7faff}.committee-poster .committee-mandate h2{color:var(--poster-ink)}@media(max-width:700px){.committee-poster .committee-hero{padding:22px 18px;text-align:center}.committee-seal{position:relative;right:auto;top:auto;width:85px;height:85px;margin-bottom:10px}.committee-poster .committee-hero h1{font-size:23px}.committee-poster .committee-hero p{font-size:16px}.committee-poster .committee-chart{min-width:1080px}.committee-poster .committee-hero .btn{font-size:12px}}@media(prefers-reduced-motion:reduce){.committee-poster .committee-lines path{animation:none}}/* Responsive white canvas; no fixed-width or internal scrolling viewport. */
.committee-poster{width:100%;max-width:1500px;min-width:0;background:#fff;box-sizing:border-box}
.committee-poster *{box-sizing:border-box}
.committee-poster .committee-hero,.committee-poster .committee-scroll,.committee-poster .committee-mandate,.committee-poster .committee-advisers,.committee-poster .committee-duty,.committee-poster .committee-portrait{background:#fff;background-image:none}
.committee-poster .committee-hero:before,.committee-poster .committee-scroll:after{content:none;display:none}
.committee-poster .committee-scroll{overflow:visible;width:100%;min-width:0;border:0;border-radius:0}
.committee-poster .committee-chart{width:100%;min-width:0;max-width:100%;padding:30px 20px 40px;gap:46px}
.committee-poster .committee-lines{overflow:hidden}
.committee-poster-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;min-width:0}
.committee-poster .committee-person{width:100%;max-width:260px;min-width:0;overflow-wrap:anywhere}
.committee-chairs,.committee-advisers,.committee-deputies,.committee-secretaries,.committee-members{min-width:0;max-width:100%}
.committee-poster .committee-portrait{max-width:100%;width:clamp(100px,13vw,166px);height:auto;aspect-ratio:166/214}
.committee-poster .committee-person--chair .committee-portrait{width:clamp(120px,15vw,180px);height:auto;aspect-ratio:3/4}
.committee-poster .committee-person--adviser .committee-portrait{width:min(112px,100%);height:auto;aspect-ratio:112/155}
.committee-poster .committee-person img{min-height:0;aspect-ratio:inherit}
.committee-poster .committee-avatar{font-size:clamp(38px,6vw,78px)}
.committee-poster .committee-person strong{font-size:clamp(15px,1.6vw,21px)}
.committee-poster .committee-role{font-size:clamp(13px,1.3vw,18px)}
.committee-deputies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 14%;justify-items:center}
.committee-secretaries{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));justify-items:center;padding-left:20%;gap:28px}
.committee-members{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 20px}
.committee-poster .committee-hero h1,.committee-poster .committee-hero p,.committee-poster .committee-mandate p{overflow-wrap:anywhere}
.committee-poster .committee-duty{white-space:normal;overflow-wrap:anywhere}
@media(max-width:1000px){
 .committee-poster .committee-hero{min-height:0;padding:28px 130px 28px 20px}
 .committee-seal{width:95px;height:95px;right:18px;top:28px}
 .committee-poster-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
 .committee-chairs{grid-column:1}.committee-advisers{grid-column:2;padding:12px 0}
 .committee-poster .committee-person--adviser strong{font-size:14px}
 .committee-poster .committee-chart{gap:38px;padding:24px 16px 32px}
 .committee-secretaries{padding-left:12%}
}
@media(max-width:680px){
 .committee-poster .committee-hero{padding:20px 12px;min-height:0}
 .committee-seal{position:static;width:76px;height:76px;margin:0 auto 12px;display:block}
 .committee-poster .committee-hero h1{font-size:clamp(20px,5.3vw,28px);line-height:1.55}
 .committee-poster .committee-hero p{font-size:15px}
 .committee-poster .committee-kicker{font-size:12px}
 .committee-poster .committee-hero .btn{white-space:normal;max-width:100%}
 .committee-poster .committee-chart{min-width:0;padding:22px 18px 28px;gap:34px}
 .committee-poster-top{grid-template-columns:minmax(0,1fr);gap:30px}
 .committee-chairs,.committee-advisers{grid-column:1;width:100%}
 .committee-advisers>div{gap:18px;justify-items:center}
 .committee-advisers h2{font-size:20px}
 .committee-deputies{gap:28px 16px}
 .committee-secretaries{padding-left:0;grid-template-columns:minmax(0,1fr)}
 .committee-members{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 16px}
 .committee-poster .committee-portrait{width:112px}
 .committee-poster .committee-person--chair .committee-portrait{width:150px}
 .committee-poster .committee-person--adviser .committee-portrait{width:100px}
 .committee-poster .committee-person strong{font-size:16px}
 .committee-poster .committee-role{font-size:14px}
 .committee-poster .committee-lines path{stroke-width:2.5}
 .committee-poster .committee-mandate{padding:20px 14px;margin-top:12px}
}
@media(max-width:380px){
 .committee-members{grid-template-columns:minmax(0,1fr)}
 .committee-poster .committee-person--adviser strong{font-size:13px}
 .committee-poster .committee-person--adviser .committee-portrait{width:84px}
 .committee-poster .committee-person--deputy .committee-portrait{width:90px}
}
/* Direct chair connections, soft glow on a white canvas. */
.committee-poster .committee-lines path{fill:none;stroke:url(#committee-direct-gradient);stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.committee-poster .committee-lines .committee-direct-halo{stroke-width:9;opacity:.2;stroke-dasharray:none;filter:blur(3px);animation:none}
.committee-poster .committee-lines .committee-direct-flow{stroke-width:3;stroke-dasharray:12 5;filter:drop-shadow(0 0 4px #9963ee88);animation:committee-direct-pulse 2.8s linear infinite}
.committee-poster .committee-person--chair .committee-portrait{border:3px solid #fff;outline:2px solid #a09aee;box-shadow:0 0 0 7px #8f91ef10,0 8px 28px #7666dc24}
.committee-poster .committee-person summary{border-radius:16px;transition:box-shadow .2s ease}
.committee-poster .committee-person summary:hover{box-shadow:0 0 0 1px #d5d8ed,0 8px 22px #657ab514}
.committee-poster .committee-person[open] summary{box-shadow:0 0 0 1px #b7b9ea}
@keyframes committee-direct-pulse{to{stroke-dashoffset:-51}}
@media(max-width:680px){.committee-poster .committee-lines .committee-direct-flow{stroke-width:2}.committee-poster .committee-lines .committee-direct-halo{stroke-width:6}}
@media(prefers-reduced-motion:reduce){.committee-poster .committee-lines .committee-direct-flow{animation:none}.committee-poster .committee-person summary{transition:none}}
