

.wifi-analysis-popup {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  border-radius: 5px;
  font-size: 14px;
  background: rgba(255, 255, 255, 0.8);
}

.popup-close {
  font-size: 16px;
  color: #000;
}

.ruler-popup {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  border-radius: 5px;
  font-size: 14px;
  background: rgba(255, 255, 255, 0.8);
}



  body {
    font-family: 'Roboto', sans-serif;
    margin: 0;
    padding: 0;
    background: #f4f4f4;
    color: #333;
}

/* Navbar */
.navbar {
box-sizing: border-box; /* Add this */
padding: 10px 15px; /* Reduced padding */
    position: fixed;
    top: 0;
    width: 100%;
    background: rgba(149,178,176, 0.7);
    color: #0f0f0f;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    padding: 10px 20px;
    z-index: 1000;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.navbar .current-page {
    font-size: 1.2em;
    font-weight: bold;
    color: #333;
}

.navbar .hamburger {
    display: none;
    font-size: 1.5em;
    background: none;
    border: none;
    cursor: pointer;
}

.navbar ul {
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
    gap: 20px;
}

.navbar ul li a {
    text-decoration: none;
    color: #333;
    font-weight: bold;
    transition: color 0.3s;
}

.navbar ul li a.active {
    color: #ffdd57;
}

.navbar ul li a:hover {
    color: #ffdd57;
}

@media (max-width: 768px) {
.navbar {
padding: 8px 12px; /* Reduce padding for smaller height */
height: 50px; /* Reduce navbar height */
}

.navbar .hamburger {
display: block;
font-size: 1.8em;
}

.navbar .current-page {
font-size: 1em; /* Slightly smaller text for mobile */
}

.navbar ul {
display: none;
position: absolute;
top: 50px; /* Adjust based on navbar height */
right: 10px;
background: #fff;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
border-radius: 6px;
flex-direction: column;
gap: 10px;
padding: 8px 15px; /* Reduce padding inside dropdown */
z-index: 1000;
}

.navbar ul.active {
display: flex;
}

.navbar ul li {
padding: 5px 0;
}

.navbar ul li a {
font-size: 0.95em; /* Reduce font size */
padding: 8px 10px;
display: block;
}
}


   /* Footer Styles - Updated to Match Services Page */
   .footer {
    max-width: 100%;
    background: rgba(149, 178, 176, 0.7);
    color: #0f0f0f;
    text-align: center;
    padding: 20px;
    margin-top: 50px;
    }
    
    .footer p {
    margin: 0;
    }
    
    @media (max-width: 768px) {
    .footer {
        font-size: 0.9em;
    }
    }
    
    .header {
        text-align: center;
        padding: 80px 20px;
        background: url('Photos/tool-header.jpg') no-repeat center center/cover;
        color: white;
    }
    
    .header h1 {
        font-size: 3em;
        margin: 0;
    }
    
    .header p {
        font-size: 1.2em;
    }
    
    @media (max-width: 768px) {
        .header h1 {
            font-size: 2.5em;
        }
    
        .header p {
            font-size: 1em;
        }
    }


    /* General styles */
    .simulator-section { padding: 20px; max-width: 900px; margin: 0 auto; }
    .custom-file-label {
      display: inline-block;
      background-color: #007BFF;
      color: #fff;
      padding: 10px 15px;
      border-radius: 5px;
      cursor: pointer;
      font-size: 16px;
      margin-top: 20px;
      transition: background-color 0.3s ease;
    }
    .custom-file-label:hover { background-color: #0056b3; }
    
    /* Map Choice */
 /* Map Choice */
#mapChoiceContainer {
  text-align: center;
  margin: 20px;
  display: flex;
  flex-direction: column;
  gap: 15px;
  max-width: 300px;
  margin: 20px auto;
}

#mapChoiceContainer p {
  font-size: 1.1rem;
  margin-bottom: 1.5rem;
  color: #333;
}

#mapChoiceContainer button {
  width: 100%;
  padding: 15px 25px;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  font-size: 1.1rem;
  transition: all 0.3s ease;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  display: block;
}

#uploadMapChoice {
  background-color: #007BFF;
  color: #fff;
}

#sampleMapChoice {
  background-color: #28a745;
  color: #fff;
}

/* Hover States */
#mapChoiceContainer button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

#uploadMapChoice:hover { background-color: #0056b3; }
#sampleMapChoice:hover { background-color: #218838; }

/* Mobile Optimization */
@media (max-width: 480px) {
  #mapChoiceContainer {
    padding: 0 15px;
    max-width: 100%;
  }
  
  #mapChoiceContainer button {
    font-size: 1rem;
    padding: 12px 20px;
  }
  
  #mapChoiceContainer p {
    font-size: 1rem;
    margin-bottom: 1rem;
  }
}

    
    /* File upload & sample map containers */
    #uploadContainer,
    #predefinedMapContainer { display: none; text-align: center; margin-bottom: 20px; }
    
    /* Instructions */
    #instructions {
      max-width: 900px;
      margin: 20px auto;
      padding: 20px;
      background: #fff;
      border-radius: 8px;
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    }
    #instructions h2 { margin-top: 0; }
    #instructions p { font-size: 1em; }
    #instructions ol { margin: 10px 0; }
    #instructions li { margin: 8px 0; }
    #instructions img { width: 100%; margin-top: 20px; border-radius: 4px; }
    
    /* Simulator Container */
    #simulationContainer { display: none; }
    #canvasContainer {
      position: relative;
      margin: 0 auto;
      border: 1px solid #ccc;
      background: #fff;
      box-shadow: 0 4px 6px rgba(0,0,0,0.1);
      overflow: hidden;
    }
    canvas { position: absolute; top: 0; left: 0; }
    
    /* Icon controls (below the canvas) */
    #iconControls {
      text-align: center;
      margin-top: 10px;
    }
    #iconControls button {
      background-color: rgba(0,123,255,0.8);
      border: none;
      color: #fff;
      padding: 8px;
      border-radius: 50%;
      cursor: pointer;
      margin: 0 5px;
      font-size: 16px;
      transition: background-color 0.3s ease;
    }
    #iconControls button:hover { background-color: #ffc107; }
    
    /* Tool controls */
    .tool-controls { text-align: center; margin-top: 10px; }
    .tool-controls button,
    .tool-controls select {
      padding: 8px 12px;
      border: none;
      border-radius: 4px;
      cursor: pointer;
      margin: 5px;
      font-size: 14px;
      transition: background-color 0.3s ease;
    }
    .btn-blue { background-color: #007BFF; color: #fff; }
    .btn-green { background-color: #28a745; color: #fff; }
    .btn-highlight { background-color: #ffc107; color: #fff; font-weight: bold; }
    
    /* Download button */
    #downloadContainer {
      text-align: center;
      margin-top: 10px;
    }
    #downloadContainer button {
      background-color: #28a745;
      border: none;
      color: #fff;
      padding: 10px;
      border-radius: 50%;
      cursor: pointer;
      font-size: 18px;
      transition: background-color 0.3s ease;
    }
    #downloadContainer button:hover { background-color: #1e7e34; }
    
    /* Back Button */
    #backContainer { text-align: center; margin: 20px 0; }
    #backButton {
      padding: 10px 15px;
      background: #6c757d;
      color: #fff;
      border: none;
      border-radius: 4px;
      cursor: pointer;
      font-size: 16px;
    }
    #backButton:hover { background: #5a6268; }

    .imgcont {
    display: flex;
    justify-content: center;  /* Centers horizontally */
    align-items: center;  /* Centers vertically */
    flex-direction: column;  /* Stacks text and image */
    margin: 0 auto;  /* Centers the image horizontally */
    width: 300px;  /* Adjust as needed */
    height: auto;
}
