/*
    DEMO STYLE
*/
html {
  /* กัน Safari/iOS และบางเบราว์เซอร์ปรับฟอนต์ให้บวมเกินจริง */
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
    font-family: "Kanit",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
	/*background:#eeeef0;*/
	/*background-color: #b0b9c2;*/
	/*background: rgba(247,247,247,1);
	background: -moz-linear-gradient(-45deg, rgba(247,247,247,1) 0%, rgba(141,142,143,1) 100%);
	background: -webkit-gradient(left top, right bottom, color-stop(0%, rgba(247,247,247,1)), color-stop(100%, rgba(141,142,143,1)));
	background: -webkit-linear-gradient(-45deg, rgba(247,247,247,1) 0%, rgba(141,142,143,1) 100%);
	background: -o-linear-gradient(-45deg, rgba(247,247,247,1) 0%, rgba(141,142,143,1) 100%);
	background: -ms-linear-gradient(-45deg, rgba(247,247,247,1) 0%, rgba(141,142,143,1) 100%);
	background: linear-gradient(135deg, rgba(247,247,247,1) 0%, rgba(141,142,143,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#8d8e8f', GradientType=1 );
	height: 100vh;*/
	background-color: #e9eaec;

}
/* ---------------------------------------------------
    SIDEBAR STYLE
----------------------------------------------------- */

#sidebar {
    width: 250px;
    position: fixed;
	top:0;
    /*top: 0;*/
	/*right: -250px;*/
    left: -252px;
    height: 100vh;
    z-index: 999;
    background: #fff;
    color: #656565;
    transition: all 0.3s;
    overflow-y: scroll;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
}
#countAnn.badge-pill{
	top: -10px;
    right: 10px;
    background-color: #ff0000;
    font-weight: 400;
    padding-right: .3em;
    padding-left: .3em;
    position: absolute;
}
#sidebar.active {
    left: 0;
	/*right: 0;*/
}

#dismiss {
    width: 35px;
    height: 35px;
	color:#1e303a;
    line-height: 35px;
	font-size:1.4rem;
    text-align: center;
    background-color:transparent;
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

#dismiss:hover {
    background-color:#024AB8;
    color: #fff;
}

.overlay {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.4);
    z-index: 998;
    opacity: 0;
    transition: all 0.5s ease-in-out;
}
.overlay.active {
    display: block;
    opacity: 1;
}

#sidebar .sidebar-header {
    padding: 10px;
    background-color: #fff !important;
	/*border-bottom:#9c9daa solid 4px;*/
    color: #1e303a;
}

#sidebar ul.components {
    padding: 20px 0;
    border-bottom: 1px solid #cdcdcd;
}

#sidebar ul p {
    color: #656565;
    padding: 10px;
}

#sidebar ul li a {
    padding: 10px;
    font-size: 1.1em;
    display: block;
}

#sidebar ul li a:hover {
    color: #d8d8d8;
    background: #fff;
}

#sidebar ul li.active>a,
a[aria-expanded="true"] {
    color: #fff;
    background: #1a62e0;
}

a[data-toggle="collapse"] {
    position: relative;
}

.dropdown-toggle::after {
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

ul ul a {
    font-size: 0.9em !important;
    padding-left: 30px !important;
    background: #9a0000;
}

ul.CTAs {
    padding: 20px;
}

ul.CTAs a {
    text-align: center;
    font-size: 0.9em !important;
    display: block;
    border-radius: 5px;
    margin-bottom: 5px;
}

a.download {
    background: #fff;
    color: #d8d8d8;
}

a.article,
a.article:hover {
    background-color: #e33939 !important;
    border-color: #e33939 !important;
    width: 100%;
    font-size: 5vw;
    border-radius: 0.8rem;
	padding: .575rem .75rem;
    -webkit-box-shadow: 2px 2px 5px -1px rgba(249, 36, 68,0.75);
    -moz-box-shadow: 2px 2px 5px -1px rgba(249, 36, 68,0.75);
    box-shadow: 2px 2px 5px -1px rgb(249, 36, 68,1);
    color: #fff !important;
}
/* ===== แบบ 3: LIVE มีไอคอน 🔴 นำหน้า ===== */
.badge-live-icon {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.7rem;
  font-weight: 700;
  color: #fff !important;
  background: #fe2530;
  border-radius: 999px;
  padding: 0.2rem 0.6rem;
  box-shadow: 0 4px 10px rgba(239, 68, 68, .3);
}
.badge-live-icon .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #fff !important;
  display: inline-block;
  animation: dot-pulse 1s infinite;
}
@keyframes dot-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.2; }
}
/***** EDIT ******/
.list-group-item{
	border:none;	
}
.list-group a{
	margin-bottom:0.45rem !important;	
    text-decoration: none;
}

.list-group .col-form-label i{
	font-size:1.8rem;	
	color:#fe2530;
}
.list-group .col-form-label span{
	color:#2f4e5d;
	font-weight: 400;
}

/****** CSS Detail Promotion ********/
#Boxslip h5 {
    font-size: 4vw;
}
.imgpro_show{width:100%;}

.detailboxpro{
	
}
.detailboxpro .textdetail p {
	font-weight: 300;
	font-size: 0.9rem;
	text-align: justify;
	margin-bottom: 0px;
	text-indent: 2rem;
}

.detailboxpro .textdetail h5 {
	font-size: 1.2rem;
}

.detailboxpro .textdetail div {
	font-size: 0.9rem;
	font-weight: 300;
}
.detailboxpro ul{list-style-type:decimal;font-size:0.9rem;font-weight:300;margin-bottom:0px;}
.detailboxpro .box1_right {
	background-color: #f0f9ed;
	color: #101010;
	padding: 1rem 1.5rem;
	border-radius: 5px;
	margin-bottom: 1rem;
	font-weight: 300;
	font-size: 0.9rem;
}

.detailboxpro .box1_right_red {
	background-color: #f9eded;
	color: #101010;
	padding: 1rem 1.5rem;
	border-radius: 5px;
	margin-bottom: 1rem;
	font-weight: 300;
	font-size: 0.9rem;
}









/**
PA CSS
**/
@media screen and (max-width: 375px) {
  .swal2-popup .swal2-styled.swal2-confirm,.swal2-popup .swal2-styled.swal2-cancel{
    font-size: 4.5vw !important;
   /* padding: 0.5rem 0.5rem !important;*/
    padding: 5px 40px !important
  }
  .swal2-content p{
    font-size: 0.8rem !important;
    font-weight: 400 !important;
  }
  .stepper-container{
    padding: 12px !important;
  }
  .signup_form .col-form-label,.bntSubmit{
    font-size: 1rem !important;
  }

}

/* ================= LIVE Floating Icon ================= */
    #live-floating,
    #live-reveal{ --live-red:#e40404; --live-text:#ffffff; --live-shadow:rgba(16,24,40,.15); }

    /* ตำแหน่งมุมบนซ้าย */
    #live-floating{
      position:fixed; top:16px; left:65px; z-index:2000;
      display:none; /* จะถูกเปิดตามสถานะ JS */
    }

    /* วงกลม LIVE */
    #live-floating .live-puck{
      width:56px; height:56px; border-radius:50%;
      border:solid 2px #ffffff; outline:0; cursor:pointer;
      background:var(--live-red); color:var(--live-text);
      display:inline-flex; align-items:center; justify-content:center;
      box-shadow:0 8px 20px var(--live-shadow);
      position:relative;
      font-family:'Kanit',sans-serif;
      text-decoration: none;  
    }
    #live-floating .live-puck:hover{ text-decoration:none; opacity:.95; }
    #live-floating .live-puck .label{ font-weight:800; font-size:.85rem; letter-spacing:.5px; }

    /* เอฟเฟกต์ Pulse */
    #live-floating .live-puck .pulse{
      position:absolute; inset:0; border-radius:50%;
      box-shadow:0 0 0 0 rgba(228,4,4,.45);
      animation:live-pulse 1.6s ease-out infinite;
    }
    @keyframes live-pulse{
      0%   { transform:scale(1);   box-shadow:0 0 0 0 rgba(228,4,4,.45); }
      70%  { transform:scale(1.2); box-shadow:0 0 0 16px rgba(228,4,4,0); }
      100% { transform:scale(1);   box-shadow:0 0 0 0 rgba(228,4,4,0); }
    }

    /* ปุ่มซ่อน */
    #live-floating .live-hide{
      position:absolute; top:0px; left:45px;
      border:0; outline:0; cursor:pointer;
      background:#ffffff; color:#e90a0a;
      padding:6px 8px; border-radius:999px; font-size:12px; line-height:1;
      box-shadow:0 6px 14px var(--live-shadow);
    }
    #live-floating .live-hide:hover{ background:#2c60e3; }

    /* ปุ่มแสดงกลับ */
    #live-reveal{
      position:fixed; top:10px; left:80px; z-index:998;
      display:none;
      text-decoration: none;  
      border:0; outline:0; cursor:pointer;
      background:#fff; color:#e90a0a;
      padding:8px 10px; border-radius:999px;
      box-shadow:0 8px 20px var(--live-shadow);
      font-family:'Kanit',sans-serif; font-weight:700; font-size:.82rem;
    }
    #live-reveal i{ margin-right:6px; }

    @media (max-width:576px){
      #live-floating{ top:12px; left:50px; }
      #live-reveal{  top:12px; left:50px; }
    }

    .announce-wrap{ background:var(--bg); font-family:'Kanit',sans-serif; }

  /* ====== กล่องประกาศ (Responsive) ====== */
  .announce-bar{
    position:relative;
    display:flex;
    align-items:center;
    gap:clamp(6px, 1.5vw, 12px);
    min-height:clamp(40px, 5.5vw, 56px);
    padding:clamp(4px, 1.2vw, 10px) clamp(8px, 2vw, 14px);
    margin:8px 12px 10px;
    border-radius:12px;
    color:#fff;
    background:
      linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,0)),
      linear-gradient(90deg, #ee4a4a, var(--red) 40%, #c60303);
    border:1px solid rgba(255,255,255,.25);
    box-shadow:0 6px 16px rgba(228,4,4,.18);
    overflow:hidden;
  }

  /* ป้ายหัวข้อ */
  .announce-label{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 12px;
    font-weight:700;
    font-size:clamp(12px, 2.8vw, 14px);
    color:var(--red);
    background:#fff;
    border-radius:999px;
    border:1px solid rgba(0,0,0,.06);
    box-shadow:0 2px 8px rgba(0,0,0,.08);
    white-space:nowrap;
  }
  .announce-label i{ color:var(--accent); }

  /* รางวิ่ง + เงาเฟดขอบ */
  .announce-track{
    position:relative;
    flex:1 1 auto;
    height:clamp(22px, 4.8vw, 30px);
    overflow:hidden;
    mask-image: linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%);
    -webkit-mask-image: linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%);
  }

  /* แถวข้อความ (ทำซ้ำ 2 ชุดให้ต่อเนื่อง) */
  .announce-row{
    position:absolute; left:0; top:50%;
    transform:translateY(-50%);
    white-space:nowrap;
    display:inline-flex; align-items:center;
    gap:clamp(14px, 3vw, 28px);
    will-change:transform;
    animation:marquee 18s linear infinite;
    font-size:clamp(12px, 2.9vw, 14px);
    line-height:1;
  }
  .announce-row.is-dup{ animation-delay:-9s; }
  .announce-item{ display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
  .announce-item i{ color:#ffd400; }

  /* หยุดเมื่อโฮเวอร์/โฟกัส/แตะ */
  .announce-bar:hover .announce-row,
  .announce-bar.is-paused .announce-row{ animation-play-state:paused; }

  /* ลดการเคลื่อนไหว */
  @media (prefers-reduced-motion:reduce){
    /*.announce-row{ animation:none; position:static; transform:none; }
    .announce-track{ mask-image:none; -webkit-mask-image:none; }*/
  }

  /* เบรกพอยต์จอเล็ก 320px */
  @media (max-width:360px){
    .announce-bar{ margin:6px 8px; border-radius:10px; }
    .announce-label{ padding:4px 10px; }
    .announce-track{ height:22px; }
  }

  @keyframes marquee{
    0%{   transform:translate(0, -50%); }
    100%{ transform:translate(-100%, -50%); }
  }

   /* ปรับแต่ง popupNEW */
  .swal2-image-popup-new {
    padding: 0.5rem !important;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
  }
  .swal2-image-popup-new .swal2-header{display: none !important;}
  .swal2-image-popup-new img {
    display: block;
    width: 100%;
    height: auto;
  }
  .swal2-image-popup-new .swal2-confirm {
    margin: 0;
    border-radius: 0;
    background: #e40404 !important;  /* สีแดงตามโทนเว็บ */
    color: #fff !important;
    font-size: 1.1rem;
  
  }
  .swal2-image-popup-new .swal2-styled.swal2-cancel{
    background: #000 !important;  /* สีแดงตามโทนเว็บ */
    color: #fff !important;
  }
  /* responsive */
    @media (max-width: 990px) {
      .badge-live{
        right: 0px;
      }
    }