*{
    margin: 0;
    padding: 0;
    font-family: 'Poppins',sans-serif;
    box-sizing: border-box;
}
body{
    height: 100vh;
    width: 100vw;
    background-color:#fff;
    color: #111;
    border: 1px solid black;
}
.heading{
    height: 9vh;
    width: 99.9vw;
    background-color:rgb(65, 96, 96);
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    border: 1px solid black;
}
.heading h1{
    border: 2px solid black;
    background-color:peru;
}
.container{
    height: 90.7vh;
    width: 99.9vw;
    background-color:darkgray;
    display: flex;
}
.work{
    height: 89vh;
    width: 67.4vw;
    position: relative;
    margin-top: 1vh;
    margin-left: 3px;
    border: 1px solid black;
}
#work{
    height: 89vh;
    width: 71.3vw;
    position: relative;
    margin-top: 1vh;
    margin-left: 3px;
    border: 1px solid black;
}
.work #img1{
    height: 88.8vh;
    width: 67.3vw;
    position: absolute;
}
.work #img2{
    height: 88.8vh;
    width: 67.3vw;
    position: absolute;
}
.work #img3{
    height: 88.8vh;
    width: 69vw;
    position: absolute;
}
.work #img4{
    height: 20vh;
    width: 13vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(49vw,27vh);
}
.work #img5{
    height: 45vh;
    width: 6.6vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(7vw,1vh);
}
.work #img6{
    height: 40vh;
    width: 1.2vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(9.2vw,-1vh);
}
.work #img7{
    height: 20vh;
    width: 5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(17vw,27vh);
}
.work #img8{
    height: 25vh;
    width: 3.4vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(21.3vw,21.6vh);
}
.work #img9{
    height: 5.5vh;
    width: 10vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(16vw,46.5vh);
}
.work #img10{
    height: 11.2vh;
    width: 2.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(28.5vw,40vh);
}
.work #cap3{
    height: 11.2vh;
    width: 2.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(28.5vw,36.5vh);
}
.work #img11{
    height: 53vh;
    width: 7vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(12.8vw,12vh);
}
.work #img12{
    height: 40vh;
    width: 1.2vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(15.5vw,5vh);
    z-index: 100;
}
.work #img13 {
    height: 19.5vh;
    width: 5.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    left: 25vw;
    top: 47vh;
    transition: transform 0.5s ease-in-out;
    transform-origin: top left;
}

@keyframes shake {
    0% { transform: translateX(-10.8vw) translateY(-1vh) rotate(0deg); }
    25% { transform: translateX(-10.8vw) translateY(-1vh) rotate(-2deg); }
    50% { transform: translateX(-10.8vw) translateY(-1vh) rotate(2deg); }
    75% { transform: translateX(-10.8vw) translateY(-1vh) rotate(-2deg); }
    100% { transform: translateX(-10.8vw) translateY(-1vh) rotate(0deg); }
}
.shake {
    animation: shake 0.5s infinite linear alternate;
}


.work #img14{
    height: 27vh;
    width: 6.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    left: 33.5vw;
    top: 40vh;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
    transform: translateX(0) translateY(0);
}
.work #img15{
    height: 23vh;
    width: 6.3vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(39vw,23.5vh);
}
.work #img16{
    height: 20vh;
    width: 5.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(22.7vw,26.5vh);
}
.work #img17{
    height: 18.5vh;
    width: 5.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    left: 50vw;
    top: 48.5vh;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
    transform: translateX(0) translateY(0);
}
.work #img18{
    height: 10vh;
    width: 2.3vw;
    color: #fff;
    background: transparent;
    position: absolute;
    left: 43.7vw;
    top: 57.1vh;
}
.work #cap{
    height: 10vh;
    width: 2.3vw;
    color: #fff;
    background: transparent;
    position: absolute;
    left: 43.7vw;
    top: 54vh;
}
.work #img19{
    height: 5.5vh;
    width: 10vw;
    color: #fff;
    background: transparent;
    position: absolute;
    left: 47.5vw;
    top: 66vh;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
    transform: translateX(0) translateY(0);
}
.work #img20{
    height: 10vh;
    width: 5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(34vw,44vh);
}
.work #img21{
    height: 25.5vh;
    width: 8.3vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(28.2vw,22vh);
}
.work #img22{
    height: 17.9vh;
    width: 4.6vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 46.5vh;
    left: 21vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
@keyframes shake2 {
    0% { transform: translateX(0) rotate(0deg); }
    25% { transform: translateX(-0.2vw) rotate(-2deg); }
    50% { transform: translateX(0.2vw) rotate(2deg); }
    75% { transform: translateX(-0.2vw) rotate(-2deg); }
    100% { transform: translateX(0) rotate(0deg); }
}

.shake2 {
    animation: shake2 0.5s infinite linear alternate;
}

.work #img23{
    height: 20vh;
    width: 15vw;
    color: #fff;
    background: transparent;
    position: absolute;
    transform: translate(50vw,42.3vh);
}
.temp{
    height: 2.7vh;
    width: 1.7vw;
    background-color: rgba(255, 166, 0, 0.819);
    position: absolute;
    top: 58.24vh;
    left: 59.3vw;
}
.work #img24{
    height: 46vh;
    width: 6.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 18.2vh;
    left: 8vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
.work #img25{
    height: 40vh;
    width: 1vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 7.4vh;
    left: 11vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
.work #img26{
    height: 27vh;
    width: 3.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 37vh;
    left: 28vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
.work #img27{
    height: 6vh;
    width: 9.3vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 63.3vh;
    left: 28.3vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
.work #img28{
    height: 11vh;
    width: 2.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top:53vh;
    left: 34vw;
    transition: transform 2s ease-in-out;
    transform-origin: top-left;
}
.work #cap2{
    height: 11vh;
    width: 2.5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top:49.5vh;
    left: 34vw;
    transition: transform 2s ease-in-out;
    transform-origin: top-left;
}
.work #img29{
    height: 10vh;
    width: 5vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 56vh;
    left: 37vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
.work #img30{
    height: 22vh;
    width: 8vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 42.5vh;
    left: 42vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
.work #img31{
    height: 17.9vh;
    width: 4.6vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 46.5vh;
    left: 15vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
@keyframes shake3 {
    0% { rotate: 0deg; }
    25% { rotate: -2deg; }
    50% { rotate: 2deg; }
    75% { rotate: -2deg; }
    100% { rotate: 0deg; }
}

.shake3 {
    animation: shake3 0.4s infinite;
    transform-origin: center;
}

.work #img32{
    height: 6vh;
    width: 9.3vw;
    color: #fff;
    background: transparent;
    position: absolute;
    top: 66.5vh;
    left: 34vw;
    transition: transform 2s ease-in-out;
    transform-origin: top left;
}
.water {
    width: 100%;
    height: 0;
    background: blue;
    position: absolute;
    bottom: 0;
    transition: height 3s ease;
}
.msg{
    height: 44.4vh;
    width: 31.87vw;
    background-color: grey;
    position: absolute;
    top: 10.3vh;
    left: 68vw;
    display:grid;
    justify-content: space-around;
    border: 1px solid black;
    box-shadow: 5px 5px 20px 1px grey;
}
.starter{
    height: 44vh;
    width: 31.87vw;
    background-color:wheat;
    position: absolute;
    top: 55.1vh;
    left: 68vw;
    display:grid;
    justify-content: space-around;
    align-items: center;
    text-align: center;
    border: 1px solid black;
    box-shadow: 5px 5px 20px 1px wheat;
}
#st_1{
    position: absolute;
    top: 3vh;
    left: 5vw;
}
#st_2{
    position: absolute;
    top: 22vh;
    left: 3vw;
}
#hcl-std{
    height: 6vh;
    width: 12vw;
    text-decoration: none;
    border: 1px solid black;
    border-radius: 10px;
    background-color:thistle;
    position: absolute;
    top: 11.5vh;
    left: 10vw;
}
.cap-open {
    transform: translateX(3vw) translateY(-1vh) rotate(25deg);
    transition: transform 0.8s ease-in-out;
}

.bottle-open {
    filter: brightness(1.1);
}
#main-exp{
    height: 6vh;
    width: 12vw;
    text-decoration: none;
    border: 1px solid black;
    border-radius: 10px;
    background-color: thistle;
    position: absolute;
    top: 31vh;
    left: 10vw;
}
#message{
    height: 89.1vh;
    width: 31vw;
    background-color: grey;
    padding-top: 2px;
    position: absolute;
    top: 10.1vh;
    left: 68vw;
    border: 1px solid black;
}
#message2{
    height: 89.1vh;
    width: 31vw;
    background-color: grey;
    border: 1px solid black;
    margin-top: 1vh;
    margin-left: 0.5vw;
    display: flex;
    flex-direction: column;
    overflow-y: auto; 
}
#hcl-std a{
    text-decoration: none;
}

#main-exp a{
    text-decoration: none;
}
#ins{
    color: #111;
    text-align: center;
    font-style:normal;
    text-decoration: underline;
    position:absolute;
    top: 4vh;
    left: 7vw;
}
#ins1{
    color: #111;
    text-align: center;
    font-style:normal;
    text-decoration: underline;
    position:absolute;
    top: 4vh;
    left: 7vw;
}
#ins2{
    color: #111;
    text-align: center;
    font-style:normal;
    text-decoration: underline;
    
}
#text{
    text-align: center;
    font-size: 2.0vw;
    font-weight: 100;
    color:tan;
    position:absolute;
    top: 16vh;
    left: 2vw;
}
#text2{
    text-align: center;
    font-size: 2.0vw;
    font-weight: 100;
    color: tan;
    position:absolute;
    top: 20vh;
    left: 2vw;
}
#text3{
    text-align: center;
    font-size: 2.0vw;
    font-weight: 100;
    color: tan;
    margin-top: 15vh;
}
#next{
    height: 4vh;
    width: 5vw;
    border: 1px solid black;
    border-radius: 10px;
    background-color:pink;
    font-size: 3vh;
    color: #111;
    position: absolute;
    top: 81vh;
    left: 57vw;
}
#next a{
    text-decoration: none;
}
.tempSetter{
    height: 35vh;
    width: 15vw;
    font-size: 4vh;
    text-align: center;
    position: absolute;
    left: 78vw;
    top: 63vh;
    visibility: hidden;
    border: 1px solid black;
    background-color: wheat;
}

.head{
    font-size: 5vh;
    position: absolute;
    left: 74vw;
    top: 55vh;
    visibility: hidden;
}
.tempSetter button{
    display: inline-block;
    height: 5vh;
    width: 6vw;
    margin: 1vh;
    border-radius: 10px;
    background-color: aqua;
}

#resultBox{
    width: 90%;
    background-color: #fff8dc;
    border: 2px solid #333;
    border-radius: 10px;
    padding: 10px;
    margin: 20px auto;
    box-shadow: 3px 3px 10px rgba(0,0,0,0.3);
    display: none;
}

#resultBox h3{
    text-align: center;
    color: darkblue;
    text-decoration: underline;
    margin-bottom: 8px;
    font-size: 1.3vw;
}

#resultText{
    font-size: 1.1vw;
    color: #111;
    line-height: 1.6;
    text-align: left;
}

.obsBlock{
    padding: 10px;
    margin: 10px 0;
    background-color: #fff;
    border: 1px solid #999;
    border-radius: 8px;
    font-size: 1.1vw;
}

#nextSetBtn{
    width: 80%;
    height: 5vh;
    margin: 12px auto;
    display: block;
    font-size: 1.2vw;
    border-radius: 8px;
    background-color: #7CFC00;
    border: 2px solid black;
    cursor: pointer;
}

#graphContainer {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-top: 10px;
}

#thermoResult {
    margin-top: 20px;
    font-size: 1.3vw;
    font-weight: bold;
    background: #fff8dc;
    border: 2px solid #333;
    border-radius: 10px;
    padding: 12px;
    display: inline-block;
}

.resultSection {
    display: none;
    width: 100%;
    padding: 8px;
    box-sizing: border-box;
    text-align: center;
}

.resultGraphs {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.resultGraphs canvas {
    max-width: 100%;
    background: #ffffff;
    border: 2px solid #333;
    border-radius: 6px;
}

#panelTitle {
    color: #111;
    text-align: center;
    font-style: normal;
    text-decoration: underline;
    margin-top: 10px;
}

