@font-face {
    font-family: 'MyCustomFont1';
    src: url('font/PSL017pro.ttf') format('truetype');
}


/* กำหนดให้ html และ body ครอบคลุมพื้นที่ทั้งหมด */
html, body {
    height: 100%;
    margin: 0; /* ลบ margin ออกจาก body */
    padding: 0; /* ลบ padding ออกจาก body */
}


/* ปรับการตั้งค่าสีพื้นหลังของ body */
body {
    font-family: 'MyCustomFont1';
    background-color: #f4f4f4;
    
}


/* กำหนด layout ของ .container-fluid และ .row ให้เป็นการจัดระเบียบตามกริด */
.container-fluid {
    padding: 0; /* ลบ padding ใน container เพื่อป้องกันช่องว่างไม่ต้องการ */
}


.row {
    display: flex; /* ใช้ Flexbox ที่ row */
    flex-wrap: wrap; /* ทำให้การจัดวางยืดหยุ่นตามขนาดหน้าจอ */
}



/* กำหนดพื้นหลังและขนาดให้กับ Section Left */
.section-left {
    aspect-ratio: 1 / 1; /* สร้างอัตราส่วน 1:1 */
    background-image: url('img01.jpg');
    background-size: cover;
    background-position: left;
    background-repeat: no-repeat;
    position: relative;
    width: 100%;
    padding-top: 0;  /* ใช้ padding-top เพื่อรักษาอัตราส่วน 1:1 */
}

/* สำหรับ canvas ที่แสดงใน section-left */
canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; /* ให้ canvas ครอบคลุมพื้นที่ของ section-left */
    height: 100%; /* ทำให้ canvas ใช้ความสูงเต็มที่ */
    object-fit: contain; /* ทำให้ canvas ยืดขนาดในลักษณะที่ไม่บีบ และรักษาอัตราส่วน */
    z-index: 0;
    border: 0px solid #000; /* ลบเส้นขอบถ้าไม่ต้องการ */
}


/************************************************************************************************************************************************/

h1 {
    font-size: 70px;  /* ปรับขนาดฟอนต์ของ h1 */
    font-family: 'MyCustomFont1';  /* ใช้ฟอนต์ที่ต้องการ */
    font-weight: lighter;  /* ปรับน้ำหนักฟอนต์ให้เป็นปกติ */
    margin-top: 0px;
    margin-bottom: 0px;  /* ลดระยะห่างด้านล่างของ h1 */
}

.white-text {
    color: white;  /* สีขาว */
}

.orange-text {
    color: #E57526;  /* สีส้ม */
}


/* ปรับฟอนต์และสีให้กับข้อความทั้งหมด */
p {
    color: #FFFFFF;
    font-family: 'MyCustomFont1';  /* กำหนดฟอนต์ */
    font-size: 25px;  /* ขนาดฟอนต์เริ่มต้น */
    line-height: 0.1; /* ความสูงของบรรทัด */
    margin-top: 15px;  /* ลดระยะห่างด้านล่างของ h1 */
}




/************************************************************************************************************************************************/
/* กำหนดขนาดและการจัดการของ Section Right */
.section-right {
    background-image: url('img02.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100vh; /* ความสูงเต็มหน้าจอ */
    width: 100%;
    padding-left: 40px;
    padding-right: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; /* จัดตำแหน่งเนื้อหาในแนวตั้ง */
}

/* เนื้อหาภายใน section.right (ข้อความ, input, ปุ่ม) */
.section.right > * {
    position: relative;
    z-index: 1;  /* ทำให้เนื้อหาภายในอยู่เหนือ overlay */
}

/* โลโก้ */
.logo img {
    width: 340px;
    margin-top: -70px; /* ลดระยะห่างด้านบนของโลโก้ */
}

.upload-box-container {
    display: flex;
    justify-content: space-between;
    gap: 25px; /* ระยะห่างระหว่าง upload box */
    width: 70%;
    margin-bottom: 30px;
    margin-top: 20px;
}

.upload-box {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px dashed #ccc;
    padding: 20px;
    border-radius: 8px;
    position: relative;
    cursor: pointer;
    width: 70%; /* กำหนดความกว้างให้เท่ากัน */
    height: 200px;
    aspect-ratio: 1; /* สร้างสัดส่วน 1:1 (กว้างเท่ากับสูง) */
    box-sizing: border-box; /* รวม padding และ border */
    
}

.upload-box > * {
    position: absolute; /* ให้เนื้อหาภายใน box ตรงกลาง */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* ให้เนื้อหาภายในอยู่กลาง */
}


.upload-label {
    font-size: 16px;
    color: #ffffff;
    display: flex;
    align-items: center;
    margin-right: 8px; /* ระยะห่างระหว่างไอคอนและข้อความ */

}

.upload-box input[type="file"] {
    display: none; /* ซ่อน input จริงๆ */
}


/* คลาสซ่อน */
.hidden {
    display: none;
}












/* ปรับ input สำหรับอัปโหลดรูปภาพ */
input[type="file"] {
    width: 100%;   
    padding: 12px 20px;                  /* เพิ่ม padding */
    border: 2px dashed #ccc;             /* เส้นขอบเป็นเส้นประ */
    border-radius: 8px;                  /* มุมมน */
    background-color: rgba(132, 132, 132, 0.50);           /* สีพื้นหลัง */
    font-size: 16px;                     /* ขนาดตัวอักษร */
    color: #FFFFFF;                         /* สีตัวอักษร */
}

/* ตั้งค่าภายใน input box  */
.text-box {
    display: flex;                      /* ใช้ flex เพื่อจัดวางปุ่มในแนวนอน */
    justify-content: center;      /* ให้ปุ่มทั้งสองอยู่ห่างกัน */
    width: 70%;                       /* ให้ container กว้างเต็มที่ */
    margin-bottom: 20px;
}

/* ปรับ input สำหรับอัปโหลดรูปภาพ */
input[type="text"] {
    width: 100%;   
    padding: 12px 20px;                  /* เพิ่ม padding */
    border: 3px  #ccc;             /* เส้นขอบเป็นเส้นประ */
    border-radius: 8px;                  /* มุมมน */
    background-color: rgba(132, 132, 132, 0.50);           /* สีพื้นหลัง */
    font-size: 20px;                     /* ขนาดตัวอักษร */
    color: #FFFFFF;                         /* สีตัวอักษร */
}

/* ปรับฟอนต์ของ placeholder */
input::placeholder {
    font-family: 'MyCustomFont1';  /* ใช้ฟอนต์ที่ต้องการ */
    font-size: 25px;               /* ขนาดฟอนต์ */
    color: #FFFFFF;                /* สีฟอนต์ */
    font-style: normal;            /* รูปแบบฟอนต์ */
}

/* ตั้งค่าภายใน container ของปุ่ม */
.buttons-container {
    display: flex;                      /* ใช้ flex เพื่อจัดวางปุ่มในแนวนอน */
    justify-content: center;      /* ให้ปุ่มทั้งสองอยู่ห่างกัน */
    width: 100%;                       /* ให้ container กว้างเต็มที่ */
    gap: 30px;                           /* เพิ่มระยะห่างระหว่างปุ่ม */
    margin-top: 18px;                    /* เพิ่มระยะห่างด้านบน */
}

/* ปรับขนาดความกว้างของปุ่ม */
button {
    font-family: 'MyCustomFont1';  /* ฟอนต์ที่ต้องการ */
    width: 33%;                    /* ให้ความกว้างของปุ่ม 48% ของพื้นที่ container */
    padding: 10px;
    background-color: rgba(229, 117, 38, 1.00); /* สีพื้นหลังของปุ่ม */
    color: white;                       /* สีตัวอักษร */
    border: none;                       /* ไม่มีขอบ */
    border-radius: 10px;                 /* มุมมน */
    cursor: pointer;                   /* เมื่อชี้ไปที่ปุ่มจะเปลี่ยนเป็น cursor pointer */
    font-size: 1rem;                    /* ขนาดตัวอักษร */
    margin-top: -10px;
}

/* ปุ่มรีเซ็ต */
#reset-btn {
    background-color: rgba(50, 49, 33, 1.00);  /* สีพื้นหลังของปุ่มรีเซ็ต */
    text-decoration-color: rgba(255, 255, 255, 1.00);
    border: 2px solid rgba(255, 255, 255, 1.00);
}

/* ปุ่มพรีวิว */
#preview-btn {
    background-color: rgba(229, 117, 38, 1.00); /* สีพื้นหลังของปุ่มพรีวิว */
    border: 2px solid rgba(229, 117, 38, 1.00); /* เส้นขอบสีเดียวกับพื้นหลัง */
}
/************************************************************************************************************************************************/
/* CSS สำหรับจัดการ container ของปุ่ม */
.button-add {
    display: flex;              /* ใช้ Flexbox เพื่อจัดตำแหน่ง */
    flex-direction: column;     /* จัดเรียงปุ่มในแนวตั้ง */
    gap: 45px;                  /* เว้นระยะห่างระหว่างปุ่ม */
    align-items: center;        /* จัดให้ปุ่มอยู่กึ่งกลาง */
    margin-top: -50px;
    width: 100%; 


}


/* ปุ่มพรีวิว */
#reset2-btn {
    background-color: rgba(50, 49, 33, 1.00); /* สีพื้นหลังของปุ่มพรีวิว */
    border: 2px solid rgb(255, 255, 255); /* เส้นขอบสีเดียวกับพื้นหลัง */
    border-radius: 50px;
}

/* ปุ่มพรีวิว */
#download-btn {
    background-color: rgba(229, 117, 38, 1.00); /* สีพื้นหลังของปุ่มพรีวิว */
    border: 2px solid rgba(229, 117, 38, 1.00); /* เส้นขอบสีเดียวกับพื้นหลัง */
    border-radius: 50px;
}


/* ปุ่มพรีวิว */
#share-btn {
    background-color: rgb(59, 89, 152); /* สีพื้นหลังของปุ่มพรีวิว */
    border: 2px solid rgb(59, 89, 152); /* เส้นขอบสีเดียวกับพื้นหลัง */
    border-radius: 50px;
}



/************************************************************************************************************************************************/

/* ปรับขนาดฟอนต์สำหรับ label */
.upload-label {
    font-size: 2vw; /* ปรับขนาดฟอนต์ตามต้องการ */
    font-family: 'MyCustomFont1';  /* สามารถปรับเป็นฟอนต์ที่คุณต้องการ */
    display: block; /* ค่าเริ่มต้นเป็น display block */
}

/* จัดตำแหน่งข้อความใน .text-and ให้อยู่ตรงกลาง */
.text-and {
    display: flex; /* ใช้ Flexbox */
    justify-content: center; /* จัดกลางในแนวนอน */
    align-items: center; /* จัดกลางในแนวตั้ง */
    font-size: 30px; /* ขนาดฟอนต์ */
    color: #ffffff; /* สีข้อความ */
    margin-top: 50px; /* ระยะห่างจากด้านบน */
    margin-bottom: 50px; /* ระยะห่างจากด้านล่าง */
}



/* เปลี่ยนสีของ placeholder */
input::placeholder {
    color: #FFFFFF;  /* สีข้อความ placeholder */
    font-style: normal;  /* เปลี่ยนสไตล์ข้อความให้เป็นตัวเอียง */
    
}

/* ตั้งค่าภาพ thumbnail ของคลังภาพ */
#image-thumbnail {
    width: 90%;               /* ให้ thumbnail ขยายเต็มขนาดของ upload box */
    height: 90%;              /* ให้ thumbnail ขยายเต็มขนาดของ upload box */
    object-fit: cover;         /* ทำให้รูปภาพย่อให้พอดีกับขนาดที่กำหนด */
    border-radius: 8px;        /* ขอบมน */
    border: 2px solid #ccc;    /* ขอบบางๆ รอบๆ thumbnail */
    display: none;             /* ซ่อน thumbnail เริ่มต้น */
}

/* ตั้งค่าภาพ thumbnail ของกล้อง */
#camera-thumbnail {
    width: 90%;               /* ให้ thumbnail ขยายเต็มขนาดของ upload box */
    height: 90%;              /* ให้ thumbnail ขยายเต็มขนาดของ upload box */
    object-fit: cover;         /* ทำให้รูปภาพย่อให้พอดีกับขนาดที่กำหนด */
    border-radius: 8px;        /* ขอบมน */
    border: 2px solid #ccc;    /* ขอบบางๆ รอบๆ thumbnail */
    display: none;             /* ซ่อน thumbnail เริ่มต้น */
}

/* เพิ่มการแสดง thumbnail เมื่อเลือกไฟล์ */
#image-thumbnail:visible,
#camera-thumbnail:visible {
    display: block;             /* แสดง thumbnail เมื่อมีการอัปโหลดไฟล์ */
    transition: opacity 0.3s ease-in-out; /* เพิ่ม transition เมื่อแสดง thumbnail */

}


/* เพิ่มกรอบให้สวยงาม */
.thumbnail-container {
    display: flex;
    gap: 10px;                  /* ระยะห่างระหว่าง thumbnail */
    justify-content: flex-start;/* จัดให้อยู่ทางซ้าย */
    flex-wrap: wrap;            /* ให้ thumbnail สามารถพับแถวได้ */
}

/* ตั้งค่าให้กรอบของ thumbnail ดูดี */
.thumbnail-container img {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* เงาเล็กน้อยรอบๆ thumbnail */
}







/************************************************************************************************************************************************/


@media (max-width: 767px) {

    .section-left {
        width: 100%;  /* ให้ Section Left ใช้ครึ่งหนึ่งของหน้าจอ */
        height: auto;
    }

    .section-right {
        width: 100%;  /* ให้ Section Right ใช้ครึ่งหนึ่งของหน้าจอ */
        height: auto;
        padding-top: 0;
        padding-bottom: 120px;
    }




    h1 {
        font-size: 50px;
    }

    p {
        font-size: 25px;
        line-height: 0.5;
    }

    .logo {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        margin-top: 30px;
        margin-bottom: 20px;
    }

    .logo img {
        width: 60%;
        display: block;
        margin: 0 auto;
    }

    .upload-label {
        font-size: 4vw;
        display: flex;
        justify-content: center;
        text-align: center;
    }

    .upload-box-container {
        flex-direction: column;
        gap: 15px;
        width: 100%;
        justify-content: center;
        align-items: center;
        height: auto; /* แก้ไขความสูงของ container ให้เหมาะสม */
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .upload-box {
        width: 70%;
        max-width: 400px;
        height: 200px;
        margin-bottom: -50px;
        margin-top: -50px;
    }

    
}




/* สำหรับหน้าจอขนาดกลาง (แท็บเล็ต) */
@media (min-width: 768px) and (max-width: 991px) {
    .upload-label {
        font-size: 4vw; /* ปรับขนาดฟอนต์ในหน้าจอขนาดกลาง */
    }

    /* โลโก้ */
   .logo {
    display: flex; /* ใช้ Flexbox เพื่อจัดตำแหน่ง */
    justify-content: center; /* จัดกลางในแนวนอน */
    align-items: center; /* จัดกลางในแนวตั้ง */
    width: 100%;
    margin-top: 10px; /* ลดระยะห่างด้านบนของโลโก้ */
    margin-bottom: 20px;
    }

    .logo img {
    width: 60%;
    display: block; /* แสดงภาพเป็นบล็อคเพื่อให้จัดกลางได้ดี */
    
    }


    h1 {
        font-size: 70px;  /* ปรับขนาดฟอนต์เล็กลงสำหรับมือถือ */
    }

    p {
        font-size: 40px;  /* ขนาดฟอนต์สำหรับมือถือขนาดกลาง */
        line-height: 0.5; /* เพิ่มระยะห่างระหว่างบรรทัด */
    }
    
}



/* สำหรับหน้าจอที่มีขนาดใหญ่ขึ้น */
@media (min-width: 992px) and (max-width: 1920px) {
    .section-left {
        width: 50%;  /* ให้ Section Left ใช้ครึ่งหนึ่งของหน้าจอ */
       
    }

    .section-right {
        width: 50%;  /* ให้ Section Right ใช้ครึ่งหนึ่งของหน้าจอ */
        
    }
    
    
}





/* สไตล์สำหรับสถานะโหลด 
#loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    z-index: 9999;
    font-size: 20px;
}

.spinner {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/*ซ่อนสถานะโหลด */
.hiddenspinner {
    display: none;
}


/* กำหนดลักษณะของวงกลมที่หมุน */
.loading-spinner {
    border: 8px solid #f3f3f3; /* สีพื้นหลัง */
    border-top: 8px solid #3498db; /* สีของวงกลมที่หมุน */
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 2s linear infinite; /* การหมุนที่เร็ว */
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* จัดให้อยู่กลางหน้าจอ */
    z-index: 1000; /* ให้ไอคอนโหลดอยู่เหนือส่วนอื่นๆ */
  }
  
  /* การสร้าง animation สำหรับการหมุน */
  @keyframes spin {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  
