html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    
    font-family: sans-serif;
  }
  
  .main-container {
    display: flex;
    height: calc(100% - 90px); /* Inherits from body's 100% height */
    width: 100%;
    margin-top: 90px;
  }
  
  #sidebar-panel {
    flex: 0 0 240px; /* Fixed width, no shrinking/growing */
    height: 100%;
    background-color: transparent;
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  
  .grid-container {
    flex: 1;
    height: 100%;
    position: relative;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  #svgCanvas {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  
  .dock-panel {
    background-color: #2c3e50;
    height: 100vh;
    width: 240px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem;
    border-right: 2px solid #1a252f;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.2);
  }
  
  .dock-title {
    color: #ffffff;
    font-size: 1.2rem;
    margin-bottom: 2rem;
    text-align: center;
  }
  
  .dock-buttons {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  
  .dock-buttons button {
    background-color: #3498db;
    color: white;
    font-weight: 600;
    padding: 0.75rem 1rem;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.2s ease;
    text-align: left;
    font-size: 1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  
  .dock-buttons button:hover {
    background-color: #2980b9;
  }
  
  .dock-buttons button i {
    font-size: 1.1rem;
  }
/* The corrected middle container */
.main-content {
  height: 100%;
  width: 100%;
  display: flex;
}
  /* global.css or shared.css */
.loader-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}
/* Add this to your stylesheet */
.main-content {
  /* This tells .main-content to fill the height of its parent, .main-container */
  height: 100%;
  
  /* The child of .main-content (.designer-container) uses flexbox, 
     so this should also be a flex container to ensure layouts don't conflict. */
  display: flex;
}

.main-container.full-screen-mode {
  margin-top: 0;
  height: 100%;
}

  
