@import url('https://fonts.googleapis.com/css2?family=Anton&family=Bebas+Neue&family=Kanit:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Rubik+Wet+Paint&family=Satisfy&display=swap');
        :root {
            --primary: #C6A052;
		   --secondary: #E5C170;
           --secondarys: #726f69b9;
		   --background: #1A1A1A;
		   --text: #FFFFFF;
		   --hover: #8B702F;
        }
        
        body {
			margin: 0;
			font-family: "Kanit", serif;
			background-color: var(--background);  /*สำรองสีพื้นหลังในกรณีที่ภาพไม่โหลด */
			color: var(--text);

			/* การตั้งค่าภาพพื้นหลัง */
			/*background-image: url("https://media.discordapp.net/attachments/864229034997448735/1332749655628578868/Pngtreeabstract_polygonal_space_low_poly_1178266.jpg?ex=67966357&is=679511d7&hm=e1fca10fefe8bcea58f5526839941d67d75b0e7195da4461fc5a872264712b4c&=&format=webp&width=720&height=338");  ระบุ URL ของภาพ */
			background-size: cover; /* ปรับภาพให้ครอบคลุมทั้งหน้าจอ */
			background-position: center; /* จัดตำแหน่งภาพให้อยู่ตรงกลาง */
			background-repeat: no-repeat; /* ไม่ให้ภาพซ้ำ */
		}
        
			/* กำหนดสีสำหรับ Scrollbar */
        ::-webkit-scrollbar {
            width: 0px; /* ความกว้างของ scrollbar */
        }

        ::-webkit-scrollbar-track {
            background: #1A1A1A; /* สีพื้นหลังของ track */
        }

        ::-webkit-scrollbar-thumb {
            background: linear-gradient(180deg, #8B702F, #E5C170); /* สีม่วงไล่ระดับ */
            border-radius: 10px; /* มุมโค้งของ thumb */
        }

        ::-webkit-scrollbar-thumb:hover {
            background: #E5C170; /* สีเมื่อ hover */
        }

        .header {
			position: fixed;
			top: 0;
			left: 0;
			right: 0;
			background: linear-gradient(135deg, #C6A052 0%, #E5C170 50%, #8B702F 100%);
			padding: 1rem;
			z-index: 100;
			display: flex;
			justify-content: center;
		}

		.header-container {
			display: flex;
			align-items: center;
			width: 100%;
			max-width: 1200px; /* จำกัดความกว้างสูงสุดของ header */
			padding: 0 1rem; /* เพิ่มระยะห่างด้านข้าง */
			gap: 1rem; /* ช่องว่างระหว่างโลโก้กับ input */
		}

		.header-logo {
			height: 40px; /* กำหนดความสูงของโลโก้ */
			width: auto; /* ให้คงอัตราส่วนของภาพ */
		}

        .search-bar {
            flex: 1;
            padding: 0.5rem 1rem;
            border-radius: 4px;
            background-color: rgba(0, 0, 0, 0.2);
            border: 1px solid rgba(229, 193, 112, 0.3);
            color: var(--text);
            font-family: "Kanit", serif;
            min-width: 200px;
        }

        .sidebar {
            position: fixed;
            top: 60px;
            left: 0;
            bottom: 0;
            width: 90px;
            background-color: rgba(26, 26, 26, 0.95);
			border-right: 1px solid rgba(229, 193, 112, 0.2);
			backdrop-filter: blur(10px);
            padding: 1rem;
            overflow-y: auto;
        }

        .search-bar:focus {
            outline: none;
            border-color: var(--primary);
            box-shadow: 0 0 0 2px rgba(198, 160, 82, 0.2);
        }
        
        .sort-controls {
            min-width: 150px;
        }
        
        #sortSelect {
            width: 100%;
            background-color: rgba(0, 0, 0, 0.2);
            border: 1px solid rgba(229, 193, 112, 0.3);
            color: var(--text);
            padding: 0.5rem;
            border-radius: 4px;
            font-family: "Kanit", serif;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        #sortSelect:hover {
            border-color: var(--secondary);
            background-color: rgba(0, 0, 0, 0.3);
        }
        
        #sortSelect:focus {
            outline: none;
            border-color: var(--primary);
            box-shadow: 0 0 0 2px rgba(198, 160, 82, 0.2);
        }
        
        #sortSelect option {
            background-color: var(--background);
            color: var(--text);
            padding: 10px;
        }
        
        /* Responsive Design */
        @media (max-width: 768px) {
            .search-sort-container {
                flex-direction: column;
                align-items: stretch;
            }
        
            .sort-controls {
                min-width: 100%;
            }
        
            .header-container {
                flex-direction: column;
                gap: 1rem;
            }
        
            .header-logo {
                height: 30px;
            }
        }

        .filter-section {
            margin-bottom: 2rem;
        }

        .filter-title {
            color: var(--secondary);
            margin-bottom: 1rem;
            font-weight: bold;
        }

        .checkbox-group label {
            display: block;
            margin: 0.5rem 0;
            color: var(--text);
            cursor: pointer;
        }
		
		.checkbox-group label:hover {
		   color: var(--secondary);
		}

		input[type="checkbox"]:checked + span {
		   color: var(--secondary);
		}

        .content {
            margin-left: 120px;
            margin-top: 60px;
            padding: 2rem;
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
            gap: 1.5rem;
        }

        .item {
            position: relative;
            /*background-color: rgba(255, 255, 255, 0.05);*/
            border-radius: 8px;
            overflow: hidden;
            transition: transform 0.2s;
			border: 5px solid rgba(70, 64, 64, 0.2);
			box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        }

        .item-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 147px;
            background: rgba(198, 160, 82, 0.3);
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 20px;
            opacity: 0;
            transition: opacity 0.3s;
        }

        .item:hover .item-overlay {
            opacity: 1;
        }
		
		.item:hover {
		   border-color: var(--secondarys);
		   transform: translateY(-1px);
		   box-shadow: 0 8px 15px rgba(229, 193, 112, 0.2);
		}

        /* เอฟเฟกต์แฟลช */
        .item::after {
        content: "";
        position: absolute;
        inset: 0;
        background: radial-gradient(circle, var(--hover), transparent 80%);
        opacity: 0;
        pointer-events: none; /* ไม่ให้บังปุ่มข้างใน */
        }

        .item:hover::after {
        animation: flashGlow 0.3s ease-out;
        }

        /* keyframes สำหรับเอฟเฟกต์ฟุ้งๆ */
        @keyframes flashGlow {
        0% {
            opacity: 0;
            transform: scale(0.8);
        }
        30% {
            opacity: 1;
            transform: scale(1);
        }
        100% {
            opacity: 0;
            transform: scale(1.5);
        }
        }


        .overlay-btn {
            background: var(--primary);
			border: 1px solid rgba(255, 255, 255, 0.2);
            color: white;
            border: none;
            padding: 10px 20px;
            border-radius: 4px;
            cursor: pointer;
            font-family: "Kanit", serif;
            transition: background 0.3s;
        }

        .overlay-btn:hover {
            background: var(--secondary);
        }

        .modal {
  display: flex;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.9);
  backdrop-filter: blur(8px);
  z-index: 1000;
  justify-content: center;
  align-items: center;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.modal.show {
  opacity: 1;
  visibility: visible;
}

/* --- ภาพและเอฟเฟกต์ --- */
.image-container {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

.image-container img {
  width: 100%;
  height: auto;
  display: block;
  opacity: 0;
  transform: scale(0.95);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.modal.show .image-container img {
  opacity: 1;
  transform: scale(1);
}

.modal.closing .image-container img {
  opacity: 0;
  transform: scale(0.9);
}

/* --- เอฟเฟกต์แสงฟุ้งตอนเปิด --- */
.image-container::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle, rgba(255,255,255,0.4), transparent 70%);
  opacity: 0;
  pointer-events: none;
}

.modal.show .image-container::after {
  animation: flashIn 0.8s ease-out;
}

@keyframes flashIn {
  0% { opacity: 0; transform: scale(0.8); }
  20% { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(1.4); }
}

/* --- ปุ่มปิด --- */
.modal-close {
  position: absolute;
  top: 20px;
  right: 20px;
  color: white;
  font-size: 30px;
  cursor: pointer;
  transition: color 0.3s ease;
}

.modal-close:hover {
  color: var(--secondary);
}


        .item img {
            width: 100%;
            height: 147px;
            object-fit: cover;
        }

        .item-title {
			font-family: "Kanit", serif;
			font-size: 14px;
            padding: 0.5rem;
            text-align: center;
            color: var(--text);
			word-wrap: break-word; /* ทำให้ข้อความตัดคำอัตโนมัติ */
			word-break: break-word; /* ตัดคำในกรณีที่คำยาวเกินไป */
			white-space: normal; /* อนุญาตให้ขึ้นบรรทัดใหม่ตามพื้นที่ */
        }
        .dis-float-button {
            position: fixed;
            bottom: 20px;
            left: 20px;
            background-color: #5865F2; /* สีพื้นหลัง */
            color: white; /* สีตัวอักษร */
            font-size: 14px; /* ขนาดตัวอักษร */
            padding: 10px 20px; /* ระยะขอบด้านใน */
            border: none; /* ไม่มีเส้นขอบ */
            border-radius: 50px; /* มุมโค้งมน */
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* เงา */
            text-decoration: none; /* ไม่มีเส้นใต้ */
            z-index: 1000; /* ความสำคัญ */
            transition: transform 0.3s ease, background-color 0.3s ease; /* เอฟเฟกต์เวลาโฮเวอร์ */
        }

            .dis-float-button:hover {
            transform: scale(1.1); /* ขยายปุ่มเล็กน้อย */
            background-color: #4752C4; /* สีเข้มขึ้นเมื่อโฮเวอร์ */
        }