* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;

}

body {
  font-family: system-ui, -apple-system, sans-serif;
  background-image: url(./assets/background.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  height: 100%;
  /* overflow: hidden; */
}

.container {
  width: 950px;
   padding-top:12% ;
  height: 100%;
  padding-left: 20%;
}

.header {
  display: flex;
  background-color: #ecedb4;
  width: 100%;
  justify-content: space-between;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
}

.instruction-text {
  font-size: 24px;
  display: flex;
  white-space: pre-line;
  padding: 12px;
  color: #374151;
}

.instruction-label {
  
  color: #141515;
  white-space: nowrap;
  margin-right: 8px;
}

.controls {
  display: flex;
}

.btn {
  background-color: #16a34a;
  margin: 10px;
  cursor: pointer;
  padding: 8px 16px;
  font-size: 24px;
  border-radius: 12px;
  border: none;
  color: white;
  transition: transform 0.2s;
}

.btn:hover {
  transform: scale(1.1);
}

.btn:active {
  transform: scale(0.9);
}

.main-container {
  margin: 1000 auto;
  margin-top: 20px;
  width: 400px;
  justify-content: center;
  padding-top: 48px;
  position: relative;
  height: 400px;
}

.apparatus-image {
  position: absolute;
  z-index: 20;
}

.packed-pipe-1 {
  width: 450px;
  height: 120px;
  top: 16px;
  left: 120px;
  z-index: 500;
}

.packed-pipe-2 {
  width: 400px;
  height: 120px;
  top: 16px;
  left: 272px;

  z-index: 30;
}

.packed-pipe-3 {
  width: 280px;
  height: 180px;
  top: 1px;
  left: 600px;

  z-index: 30;
}

.toggle-switch {
  position: absolute;
  left: 672px;
  top: 600px;
  z-index: 50;
  width: 80px;
  height: 40px;
  background-color: #3166c2;
  border-radius: 20px;
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 4px;
  transition: background-color 0.3s;
}

.toggle-switch.active {
  background-color: #10b981;
  justify-content: flex-end;
}

.toggle-knob {
  width: 32px;
  height: 32px;
  background-color: white;
  border-radius: 50%;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s;
}

.extend-pipe {
  width: 250px;
  height: 480px;
  top: 56px;
  left: 130px;
  z-index: -30;
}

.line-pipe-1 {
  width: 120px;
  height: 580px;
  top: 20px;
  left: -8px;
   z-index: -30;
}

.line-pipe-2 {
  width: 120px;
  height: 540px;
  top: -10px;
  left: 580px;
   z-index: -30;
}

.line-pipe-4 {
  width: 120px;
  height: 70px;
  top: 400px;
  left: 90px;
   z-index: -30;

}

.line-pipe-3 {
  width: 120px;
  height: 720px;
  top: 100px;
  left: 320px;
   z-index: -30;
  transform: rotate(90deg);
}

.elbow {
  top:800px;
  width: 120px;
  height: 120px;
}

.elbow-1 {
  top: 40px;
  left: 21px;

}

.elbow-2 {
  top: 375px;
  left: 555px;
  transform: rotate(180deg);
  opacity: 0.95;
}

.water-level {
  background-color: #7fadadff;
  width: 40px;
  position: absolute;
  top: 350px;
  left: 32px;
  opacity: 0.8;
  transition: height 1.5s ease;
  z-index:-70 ;
}

.packed-section {
  position: relative;
  z-index: 50;
  top: 16px;
  left: 9px;
  width: 39.33%;
  transform: scale(1.2);
}

.packed-bed 



{
  height: 450px;
  width: 250px;
   left:6px;
  position: relative;
}

.handle {
  width: 100px;
  height: 100px;

  position: absolute;
  cursor: pointer;
  transition: transform 0.3s;
}

.handle:hover {
  transform: scale(1.1);
}

.outlet-handle {
  top: 64px;
  left: 10px;
}

.inlet-handle {
  top: 300px;
  left: 100px;
  z-index: 100;
}

.packed-water {
  width: 60px;
  height: 260px;
  left: 104px;
  opacity: 0.3;
  position: absolute;
  top: 80px;
  overflow: hidden;
}

.packed-water-fill {
  width: 100%;
  position: absolute;
  bottom: 0;
  background-color: #1d4ed8;
  transition: height 1.5s ease;
}

.label {
  position: absolute;
  background-color: #fffbeb;
  color: #dc2626;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: bold;
  z-index: 50;
}

.manometer-section {
  position: relative;
  width: 33.33%;
  padding-left: 400px;
}

.manometer-container {
  position: absolute;
  display: flex;
  top: 0;
  height: 500px;
  overflow: hidden;
  z-index: 0;
  width: 300px;
  left: 350px;
}

.manometer-tube {
  width: 24px;
  height: 157px;
  position: relative;

  opacity: 0.85;
  overflow: hidden;
  z-index: 50;
  transition: transform 1.5s ease;
  background-color: #1d4ed8;
}

.manometer-left {
  background-color: #246158ff;
  left: 20px;
  top: 176px;
}

.manometer-right {
  background-color: #246158ff;
  left: 157px;
  top: 16px;
  height: 197px;
}

.manometer-body {
  width: 200px;
  height: 400px;

  border-radius: 12px;
  position: absolute;
  top: 12px;
}

.rotameter-section {
  width: 33.33%;

  padding-left: 802px;
  position: relative;
}

.rotameter-container {
  height: 650px;
  display: flex;

  position: relative;
  justify-content: center;
}

.rotameter-tube-container {
  position: absolute;
  display: flex;
  width: 320px;
  z-index: 50;
  height: 400px;
  top: -300px;

  overflow: hidden;
}

.rotameter-water {
  background-color: #7fadadff;
  width: 50px;
  z-index: 100;
  position: absolute;
  bottom: 650px;
  opacity: 0.8;
  transition: height 1.5s ease;
}

.sphere {
  width: 56px;
  height: 56px;
  position: absolute;
  bottom: 650px;
  z-index: 100;
  transition: transform 1.5s ease;
}

.rotameter-tube {
  width: 80px;
  height: 480px;

  border-radius: 40px;
  position: absolute;
}

.bypass-pipe {
  width: 150px;
  height: 300px;
  top: -60px;
  margin-left: -10px;
  z-index: -10;
}

.bypass-handle {
  width: 120px;
  height: 120px;

  position: absolute;
  top: 10px;
  margin-left: -58px;
  z-index: 50;
  cursor: pointer;
  transition: transform 0.3s;
}

.bypass-handle:hover {
  transform: scale(1.1);
}

.tank-container {
  position: relative;
}

.tank {
  width: 990px;
  height: 350px;

  position: relative;
  top: 70px;
  margin-left: -40px;
  z-index: -50;
}

.pump {
  width: 180px;
  height: 160px;

  position: relative;
  top: -180px;
  margin-left: 664px;
  z-index: -50;
  transform: scaleX(-1);
}

.tank-water {
  width: 850px;
  height: 140px;
  position: absolute;
  margin-left: 32px;
  top: 180px;
  overflow: hidden;
}

.tank-water-fill {
  width: 100%;
  background-color: #d3e0dbff;
  opacity: 0.9;
  bottom: 0;
  position: absolute;
  transition: height 1.5s ease;
}

.apparatus-container {
  display: flex;
  height: 75%;
  position: absolute;
  width: 100%;
}

.vibrate {
  animation: vibrate 0.3s infinite;
}

@keyframes vibrate {

  0%,
  100% {
    transform: translateX(0);
  }

  25% {
    transform: translateX(-0.8px);
  }

  50% {
    transform: translateX(0.8px);
  }

  75% {
    transform: translateX(-0.8px);
  }
}