@charset "utf-8";
/* CSS Document */

.scroll-top-btn {
  position: fixed;
  bottom: 40px;
  right: 40px;
  width: 90px;          /* ขนาดใหญ่ */
  height: 90px;
  border-radius: 50%;
  background: linear-gradient(135deg, #ff7a18, #ff3c00);
  color: #fff;
  border: none;
  font-size: 36px;
  cursor: pointer;
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(20px);
  transition: all 0.4s ease;
  z-index: 9999;
}

.scroll-top-btn:hover {
  transform: scale(1.15);
}

.scroll-top-btn.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.text-orange {
    color: #fa8128;
}
.gradient-orange { background: linear-gradient(135deg, #FF6B35 0%, #F7931E 50%, #FFB347 100%); }

.table-wrapper {
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.08);
}
.th-center {
    text-align: center;      /* แนวนอน */
    vertical-align: middle;  /* แนวตั้ง */
}
.custom-table {
    width: 100%;
    border-collapse: collapse;
}

.custom-table td {
    padding: 12px 16px;
    background-color: #ffffff;
    border-bottom: 1px solid #eee;
    transition: background-color 0.3s ease;
}

/* Hover ทั้งแถว */
.custom-table tbody tr:hover td {
    background-color: #fff3e0; /* ส้มอ่อน */
}

.custom-table tfoot td {
    background-color: #ffe0b2; /* ส้มอ่อน */
    font-weight: 600;
}



.campus-chart {
	
    max-width: 700px;
    margin: auto;
	padding: 15px 15px 15px 15px;
}

.chart-title {
    margin-bottom: 25px;
    font-weight: 600;
}

.chart-item {
    display: flex;
    align-items: center;
    margin-bottom: 18px;
}

.chart-label {
    width: 120px;
    font-size: 14px;
    font-weight: 500;
    color: #555;
    margin-right: 10px; /* ⭐ ระยะห่างตัวอักษรกับกรอบ 10px */
	position: relative;
    padding-left: 20px; /* เว้นที่ให้วงกลม */
}

.chart-bar-bg {
    flex: 1;
    background: #e5e5e5;
    height: 35px;
    border-radius: 50px;
    overflow: hidden;
}

.chart-bar {
    height: 100%;
    color: #ffffff;
    font-weight: bold;
    font-size: 14px;

    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 10px;

    border-radius: 50px;
}

/* 🎨 สีแต่ละวิทยาเขต */

/* นครราชสีมา - ส้มเข้ม */
.bar-korat {
    background: #d35400;
}

/* ขอนแก่น - เหลือง */
.bar-khonkaen {
    background: #f1c40f;
}

/* สกลนคร - เขียว */
.bar-sakon {
    background: #27ae60;
}

/* สุรินทร์ - ฟ้า */
.bar-surindra {
    background: #3498db;
}

/* วงกลมพื้นฐาน */
.chart-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

/* 🎨 สีแต่ละวิทยาเขต */

.label-korat::before {
    background: #d35400; /* ส้มเข้ม */
}

.label-khonkaen::before {
    background: #f1c40f; /* เหลือง */
}

.label-sakon::before {
    background: #27ae60; /* เขียว */
}

.label-surindra::before {
    background: #3498db; /* ฟ้า */
}

.chart-bar {
    animation: growBar 1.2s ease-out;
}

@keyframes growBar {
    from { width: 0; }
}


.badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    font-weight: 700;
    font-size: 16px;
}

/* 🔵 ฟ้าอ่อน → น้ำเงินเข้ม */
.badge-blue {
    background-color: #e3f2fd;
    color: #1565c0;
}

/* 🟢 เขียวอ่อน → เขียวเข้ม */
.badge-green {
    background-color: #e8f5e9;
    color: #1b5e20;
}

/* 🟣 ม่วงอ่อน → ม่วงเข้ม */
.badge-purple {
    background-color: #f3e5f5;
    color: #6a1b9a;
}


body{
    background:#eef1f4;
    font-family:Tahoma;
}

.group-wrapper{
    display:flex;
    gap:25px;
    flex-wrap:wrap;
}

.group-card{
    background:#fff;
    border-radius:16px;
    padding:30px;
    text-align:center;
    box-shadow:0 6px 15px rgba(0,0,0,0.08);
    flex:1 1 30%;
}

/* เส้นด้านบน */
.blue{ border-top:5px solid #4a84e8;}
.green{ border-top:5px solid #2db36c;}
.purple{ border-top:5px solid #9a55d6;}

/* icon */
.icon-circle{
    width:70px;
    height:70px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:auto;
    font-size:28px;
}

.blue .icon-circle{
    background:#dfe9f9;
    color:#4a84e8;
}

.green .icon-circle{
    background:#e2f5ea;
    color:#2db36c;
}

.purple .icon-circle{
    background:#f1e6fb;
    color:#9a55d6;
}

.group-card h3{
    margin:15px 0 20px;
    font-size:18px;
}

/* กล่องอัตราส่วน */

.ratio-box{
    border-radius:12px;
    padding:20px;
}

.blue .ratio-box{ background:#e8effa;}
.green .ratio-box{ background:#e6f4ec;}
.purple .ratio-box{ background:#f0e7fa;}

.ratio{
    font-size:34px;
    font-weight:bold;
}

.blue .ratio{color:#4a84e8;}
.green .ratio{color:#2db36c;}
.purple .ratio{color:#9a55d6;}

.ratio-box p{
    margin:0;
    color:#666;
}

.ratio-box small{
    color:#666;
}


/* ---------------- Responsive ---------------- */

/* Tablet */
@media (max-width: 992px){
    .group-card{
        flex:1 1 45%;
    }
}

/* Mobile */
@media (max-width: 600px){
    .group-card{
        flex:1 1 100%;
    }
}

body{
    background:#eef1f4;
    font-family:tahoma;
}

/* กล่องใหญ่ */

.committee-box{
    background:#f3f4f6;
    padding:30px;
    border-radius:16px;
    box-shadow:0 6px 15px rgba(0,0,0,0.08);
}

/* title */

.title{
    margin-bottom:20px;
    font-size:20px;
    font-weight:600;
}

/* grid */

.committee-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:25px;
}

/* card */

.committee-card{
    border-radius:14px;
    padding:25px;
}

/* สีการ์ด */

.card-left{
    background:#e7ddd2;
}

.card-right{
    background:#e9e3c8;
}

/* header */

.committee-card h4{
    margin-bottom:15px;
}

/* row */

.row-item{
    background:#f2f3f4;
    padding:12px 15px;
    border-radius:8px;
    margin-bottom:10px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.row-item b{
    color:#c75100;
}

/* sum */

.sum{
    text-align:center;
    margin-top:15px;
    font-weight:bold;
    color:#c75100;
}

/* total */

.total-box{
    margin-top:25px;
    background:linear-gradient(90deg,#ff7a00,#e7ac00);
    color:#fff;
    text-align:center;
    padding:14px;
    border-radius:10px;
    font-weight:600;
}

/* ---------------- Responsive ---------------- */

/* tablet */

@media (max-width:900px){

.committee-grid{
grid-template-columns:1fr;
}

}

/* mobile */

@media (max-width:500px){

.committee-box{
padding:20px;
}

.row-item{
font-size:14px;
}

}

body{
    background:#e7e6e1;
    font-family:Arial, Helvetica, sans-serif;
}

.welcome-section{
    max-width:1200px;
    margin:auto;
    padding:60px 20px;
}

/* grid layout */

.grid-box{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
    margin-bottom:80px;
}

/* text */

.text-box h1{
    font-size:64px;
    font-weight:800;
    line-height:1.1;
    margin-bottom:20px;
}

.text-box p{
    font-size:18px;
    line-height:1.7;
    color:#444;
    max-width:420px;
}

/* image */

.image-box img{
    width:100%;
    border-radius:25px;
    display:block;
}

/* reverse layout */

.reverse{
    direction:ltr;
}

.event-detail{
    margin:25px 0;
    display:flex;
    gap:40px;
    font-weight:600;
    color:#333;
}

.faculty{
    margin-top:15px;
}


/* ---------------- Responsive ---------------- */

/* Tablet */

@media (max-width:992px){

.grid-box{
grid-template-columns:1fr 1fr;
gap:40px;
}

.text-box h1{
font-size:48px;
}

}

/* Mobile */

@media (max-width:768px){

.grid-box{
grid-template-columns:1fr;
gap:30px;
}

.text-box{
order:2;
}

.image-box{
order:1;
}

.text-box h1{
font-size:38px;
}

.text-box p{
font-size:16px;
}

}


