  /*-------------------------------------------*\
      General Styles
  \*-------------------------------------------*/



  :root {
    --sans-serif: Arial, sans-serif;
    --primary-border: 1px solid #003c74;
    --gradient-bg: linear-gradient(180deg,
        rgba(255, 255, 255, 1) 0%,
        rgba(236, 235, 229, 1) 86%,
        rgba(216, 208, 196, 1) 100%);
    --active-gradient-bg: linear-gradient(180deg,
        rgba(205, 202, 195, 1) 0%,
        rgba(227, 227, 219, 1) 8%,
        rgba(229, 229, 222, 1) 94%,
        rgba(242, 242, 241, 1) 100%);
    --hover-shadow: inset -1px 1px #fff0cf, inset 1px 2px #fdd889, inset -2px 2px #fbc761, inset 2px -2px #e5a01a;
    --focus-shadow: inset -1px 1px #cee7ff, inset 1px 2px #98b8ea, inset -2px 2px #bcd4f6, inset 1px -1px #89ade4,
      inset 2px -2px #89ade4;
  }

  button {
    font-family: var(--sans-serif);
    -webkit-font-smoothing: antialiased;
    font-size: 11px;
    box-sizing: border-box;
    border: var(--primary-border);
    background: var(--gradient-bg);
    box-shadow: none;
    border-radius: 3px;

    &:not(:disabled) {
      &:hover {
        box-shadow: var(--hover-shadow);
      }

      &:active,
      &.active {
        background: var(--active-gradient-bg);
        box-shadow: none;
      }

      &:focus,
      &.focused {
        box-shadow: var(--focus-shadow);
      }
    }

    &::-moz-focus-inner {
      border: 0;
    }
  }

  /*-------------------------------------------*\
      Modal Styling
  \*-------------------------------------------*/
  /* Adjust the modal appearance */
  .modal {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 85%;
    height: 70%;
    background-color: white;
    border-top: 0.1px solid #000;
    border-left: 5px solid #2432d1;
    border-right: 5px solid #2432d1;
    border-bottom: 5px solid #2432d1;
    border-radius: 8px 8px 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    overflow: visible;
    max-width: 600px;
    /* Maximum width for non-fullscreen mode */
  }

  .hidden {
    display: none;
  }

  .modal.maximized {
    top: 47.8%;
    left: 50%;
    width: 99.4%;
    height: 95%;
    max-width: none;
    /* Remove max-width restriction in fullscreen */
  }

  @media only screen and (max-width: 600px) {
    .modal.maximized {
      top: 47.8%;
      left: 50%;
      width: 98.5%;
      height: 95%;
    }
  }


  /* Ensure window conforms to modal's styling, if necessary */
  .window {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    background-color: #fff;
    box-shadow: inset -1px -1px #00138c, inset 1px 1px #0831d9, inset -2px -2px #001ea0, inset 2px 2px #166aee;
    border-top-left-radius: 8px;
    /* Keep rounded top-left */
    border-top-right-radius: 8px;
    /* Keep rounded top-right */
    border-bottom-left-radius: 0px;
    /* Squared bottom-left */
    border-bottom-right-radius: 0px;
    /* Squared bottom-right */
    -webkit-font-smoothing: antialiased;
    z-index: 1;

  }


  .title-bar {
    font-family: "Trebuchet MS", sans-serif;
    background: linear-gradient(180deg,
        #548ff8 0%,
        rgba(0, 83, 238, 1) 15%,
        rgba(0, 80, 238, 1) 30%,
        rgba(0, 102, 255, 1) 50%,
        rgba(0, 102, 255, 1) 70%,
        rgba(0, 91, 255, 1) 85%,
        rgba(0, 61, 215, 1) 90%,
        #2432d1 100%);
    padding: 3px 5px 3px 5px;
    /* Increased padding on both sides */
    border-top-left-radius: 8px;
    border-top-right-radius: 7px;
    text-shadow: 1px 1px #0f1089;
    height: 21px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #0831d9;
    margin-left: -4px;
    /* Add negative margin to overflow on the left */
    margin-right: -4px;
    /* Add negative margin to overflow on the right */
    z-index: 1;

  }




  .title-bar-text {
    padding-left: 3px;
    color: white;
    text-shadow: 1px 1px 2px black;
  }

  .title-bar-controls button {
    min-width: 21px;
    min-height: 21px;
    margin-left: -2px;
    /* Adjusted margin */
    background-repeat: no-repeat;
    background-position: center;
    box-shadow: none;
    background-color: #ce6e38;
    /* Red color */
    transition: background 100ms;
    border: none;
    font-family: "Trebuchet MS", sans-serif;
    font-size: 11px;
  }


  .title-bar-controls button[aria-label="Close"] {
    background-image: url('pictures/close.png');
    /* Default state */
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px;
    border: 1px solid white;
    /* Adding a white frame */

  }

  .title-bar-controls button[aria-label="Close"]:hover,
  .title-bar-controls button[aria-label="Close"]:focus,
  .title-bar-controls button[aria-label="Close"]:active {
    background-image: url('pictures/close_hover.png');
    /* Consistent hover image */
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px;
    box-shadow: none;
    background-color: transparent;
    border: 1px solid white;
    /* Adding a white frame */

  }

  /* Iframe styling */
  .section-iframe {
    width: 100%;
    /* Ensure the iframe takes up the full width */
    height: 100%;
    /* Adjust the height of the iframe */
  }


  .title-bar-controls button[aria-label="Maximise"] {
    background-image: url('pictures/maximise.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px;
    border: 1px solid white;
    /* Adding a white frame */

  }

  .title-bar-controls button[aria-label="Maximise"]:hover,
  .title-bar-controls button[aria-label="Maximise"]:focus,
  .title-bar-controls button[aria-label="Maximise"]:active {
    background-image: url('pictures/maximise_hover.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px;
    box-shadow: none;
    background-color: transparent;
    border: 1px solid white;
    /* Adding a white frame */
  }

  .title-bar-controls button[aria-label="Minimise"] {
    background-image: url('pictures/minimise.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px;
    border: 1px solid white;
    /* Adding a white frame */

  }

  .title-bar-controls button[aria-label="Minimise"]:hover,
  .title-bar-controls button[aria-label="Minimise"]:focus,
  .title-bar-controls button[aria-label="Minimise"]:active {
    background-image: url('pictures/minimise_hover.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px;
    box-shadow: none;
    background-color: transparent;
    border: 1px solid white;
    /* Adding a white frame */

  }

  .menu-bar {
    display: flex;
    background-color: #d4d4d4;
    /* Gray background */
    padding: 2px 4px;
    /* Padding around the menu items */
  }

  .menu-item {
    text-decoration: none;
    /* Remove underline from links */
    color: black;
    /* Text color */
    padding: 4px 8px;
    /* Padding inside each menu item */
    font-family: Arial, sans-serif;
    font-size: 12px;
    /* Font size */
    border-radius: 3px;
    /* Rounded corners for the hover effect */
    transition: background-color 0.3s;
    /* Smooth transition for the hover effect */
  }

  .menu-item:hover {
    background-color: #0078d7;
    /* Blue background on hover */
    color: white;
    /* White text on hover */
  }

  .menu-function-separator {
    height: 1px;
    /* Height of the separator */
    background-color: #808080;
    /* Dark gray color for the separator */
  }

  .ie__function_bar {
    height: 36px;
    display: flex;
    align-items: center;
    font-size: 11px;
    padding: 1px 3px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    background-color: #d4d4d4;
    /* Gray background */
  }

  .ie__function_bar__button {
    display: flex;
    align-items: center;
    height: 100%;
    border: 1px solid rgba(0, 0, 0, 0);
    border-radius: 3px;
    padding: 0 10px;
    /* Adjust padding for text and icon alignment */
    cursor: pointer;
    /* Pointer cursor on hover */
    background-color: #d4d4d4;
    /* Ensure the button background matches the bar */
  }

  .ie__function_bar__button:hover {
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.1);
    background-color: #c0c0c0;
    /* Lighter gray on hover */
  }

  .ie__function_bar__button:active {
    border: 1px solid rgb(185, 185, 185);
    background-color: #a9a9a9;
    /* Even lighter gray on active */
    box-shadow: inset 0 -1px 1px rgba(255, 255, 255, 0.7);
    color: rgba(0, 0, 0, 0.85);
  }

  .ie__function_bar__icon--normalize {
    height: 22px;
    width: 22px;
    margin-right: 4px;
    /* Margin to separate icon from text */
  }

  .ie__function_bar__icon--arrow {
    height: 5px;
    /* Reduced height for the smaller arrow icon */
    width: 5px;
    /* Reduced width for the smaller arrow icon */
    margin-left: 5px;
    /* Margin to separate arrow icon from text */
    vertical-align: middle;
    /* Align the icon vertically with the text */
  }

  .ie__function_bar__text {
    color: black;
    /* Text color */
    margin-right: 4px;
    /* Margin between text and any following elements */
  }

  .ie__function_bar__separate {
    height: 70%;
    /* Adjusted height for visibility */
    width: 1px;
    /* Slightly thicker to ensure visibility */
    background-color: rgba(100, 100, 100, 0.5);
    /* Darker color for visibility */
    margin: 0 8px;
    /* Adjust margins around separator */
  }