      :root {
        --bg-main: #202020;
        --panel: #b0b0b0;
        --panel-dark: #808080;
        --panel-light: #e0e0e0;
        --border-dark: #404040;
        --border-light: #ffffff;
        --wave-bg: #000000;
        --wave-green: #00ff00;
        --wave-midline: #ff0000;
        --text-main: #000000;
        --text-invert: #ffffff;
        --btn-text: #000000;
        --btn-text-inactive: #404040;
        --font-ui: "MS Sans Serif", "Verdana", system-ui, sans-serif;
      }
  
      * { box-sizing: border-box; }
  
      html, body {
        margin: 0;
        padding: 0;
        height: 100%;
        background: #000;
        font-family: var(--font-ui);
        overflow: hidden; /* geen scroll, echte fullscreen */
      }
  
      .app-wrapper {
        position: fixed;
        inset: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #000;
      }
  
      /* Basisresolutie: 1024x576, alles is hierop afgestemd */
      .app {
        width: 1024px;
        height: 576px;
        background: var(--bg-main);
        color: var(--text-main);
        border: 2px solid #000;
        box-shadow: 0 0 20px #000;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        transform-origin: center center;  /* we schalen de hele app */
      }
  
      /* Top bar */
      .top-bar {
        height: 24px;
        background: #c0c0c0;
        border-bottom: 2px solid var(--border-dark);
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 2px 4px;
        font-size: 11px;
      }
  
      .menu-strip { display: flex; gap: 4px; }
  
      .menu-item {
        padding: 0 8px;
        border: 1px solid #808080;
        background: #c0c0c0;
        cursor: default;
      }
  
      .menu-item:active {
        border-top: 1px solid #404040;
        border-left: 1px solid #404040;
        border-bottom: 1px solid #ffffff;
        border-right: 1px solid #ffffff;
        background: #a0a0a0;
      }
  
      .clock {
        padding: 0 8px;
        border: 1px solid #808080;
        background: #c0c0c0;
        min-width: 48px;
        text-align: center;
      }
  
      /* Waveform area: vaste hoogte in de basis-resolutie */
      .wave-container {
        height: 352px; /* 576 - 24 - 176 = 376 -> iets marges */
        flex: 0 0 auto;
        background: var(--wave-bg);
        border-top: 2px solid #404040;
        border-bottom: 2px solid #404040;
        position: relative;
      }
  
      /* Let op: vaste width/height attribuut in HTML! */
      #waveCanvas {
        display: block;
        background: #000;
      }
  
      .wave-placeholder {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        pointer-events: none;
        color: #a0a0a0;
        font-size: 13px;
        text-align: center;
      }
  
      /* Onderste panelen: 176px zoals origineel */
      .bottom {
        height: 200px;
        background: #a0a0a0;
        display: grid;
        grid-template-columns: 80px 70px 1fr 62px 200px;
        gap: 4px;
        padding: 4px;
        flex: 0 0 auto;
      }
  
      .panel {
        background: var(--panel);
        border-top: 2px solid var(--border-light);
        border-left: 2px solid var(--border-light);
        border-bottom: 2px solid var(--border-dark);
        border-right: 2px solid var(--border-dark);
        padding: 4px;
        font-size: 11px;
      }
  
      .panel-title {
        /* font-weight: bold; */
        margin-bottom: 4px;
        background: #808080;
        color: var(--text-invert);
        padding: 1px 4px;
      }
  
      .btn {
        display: block;
        width: 100%;
        margin-bottom: 3px;
        padding: 2px 4px;
        font-size: 11px;
        text-align: center;
        background: var(--panel-light);
        border-top: 2px solid var(--border-light);
        border-left: 2px solid var(--border-light);
        border-bottom: 2px solid var(--border-dark);
        border-right: 2px solid var(--border-dark);
        cursor: pointer;
        color: var(--btn-text);
      }

      .zmbtn {
        display: block;
        width: 100%;
        margin-bottom: 3px;
        padding: 1px 3px;
        font-size: 6px;
        text-align: center;
        background: var(--panel-light);
        border-top: 1px solid var(--border-light);
        border-left: 1px solid var(--border-light);
        border-bottom: 1px solid var(--border-dark);
        border-right: 1px solid var(--border-dark);
        cursor: pointer;
        color: var(--btn-text);
      }

  
      .btn:active {
        border-top: 2px solid var(--border-dark);
        border-left: 2px solid var(--border-dark);
        border-bottom: 2px solid var(--border-light);
        border-right: 2px solid var(--border-light);
        background: #d0d0d0;
      }
  
	  .btn.active {
	    background: #ffd700;   /* goud */
	    color: black;
	    border-color: #ff0;
	  }
   
      .btn.disabled {
        color: var(--btn-text-inactive);
        cursor: default;
        background: #d8d8d8;
      }
  
      .info-grid {
        display: grid;
        grid-template-columns: 110px 1fr;
        row-gap: 2px;
        column-gap: 4px;
        margin-top: 4px;
        font-size: 11px;
      }
  
      .info-label {
        background: #808080;
        color: var(--text-invert);
        padding: 1px 4px;
        text-align: right;
      }
  
      .info-value {
        background: #d0d0d0;
        padding: 1px 4px;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
      }
  
      .right-buttons {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1px;
        margin-top: 0px;
      }
  
      .marker-buttons {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 35px;
        gap: 1px;
        margin-top: 0px;
      }
   
      .btn-small {
        font-size: 11px;
        text-align: center;
        padding: 1px 2px;
      }
  
      .status-line {
        margin-top: 4px;
        padding: 2px 4px;
        background: #d0d0d0;
        border: 1px inset #808080;
        font-size: 11px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }
  	
  	/* VERTICAL SLIDER */
      .rate-slider-container {
       width: 40px;
       background: #d0d0d0;
       border: 2px inset #fff;
       display: flex;
       justify-content: center;
       align-items: center;
  	}
  
  	.rate-slider {
       writing-mode: bt-lr;
       -webkit-appearance: slider-vertical;
       width: 20px;
       height: 140px;
       accent-color: #1E90FF;
  	}
  	
  	.sedit-logo img {
      image-rendering: smooth;  /* retro look */
      width: auto;
      height: 70px;                /* kies zelf hoogte */
  	}

	/* basis: ALLE overlays zijn onzichtbaar */
	.overlay {
	  position: fixed;
	  inset: 0;
	  background: rgba(0,0,0,0.55);
	  display: none;              /* 🔹 standaard verborgen */
	  align-items: center;
	  justify-content: center;
	  z-index: 999;
	}

	/* zichtbaar als .active erop staat */
	.overlay.active {
	  display: flex;
	}
  
  	/* Modal zelf */
  	.echo-modal {
  	  background: #c0c0c0;
  	  color: #000000;
  	  border-radius: 8px;
  	  padding: 16px 20px 18px;
  	  min-width: 340px;
  	  max-width: 420px;
  	  box-shadow: 0 20px 40px rgba(0,0,0,0.6);
  	  position: relative;
  	  border: 1px solid #374151;
  	  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  	}
  
  	.echo-modal h2 {
  	  margin: 0 0 6px;
  	  font-size: 18px;
  	  color: #000000;
  	}
  
  	.echo-modal p {
  	  margin: 0 0 14px;
  	  font-size: 13px;
  	  color: #000000;
  	}
  
  	/* Close button */
  	.echo-close {
  	  position: absolute;
  	  top: 6px;
  	  right: 8px;
  	  border: none;
  	  background: transparent;
  	  color: #000000;
  	  font-size: 18px;
  	  cursor: pointer;
  	}
  
  	.echo-close:hover {
  	  color: #e5e7eb;
  	}
  
  	/* Sliders layout */
  	.echo-sliders {
  	  display: flex;
  	  gap: 24px;
	  writing-mode: bt-lr;
  	  margin: 8px 0 12px;
  	}
  
  	.echo-slider-group {
  	  display: flex;
  	  flex-direction: column;
  	  align-items: center;
  	  min-width: 80px;
  	}
  
  	.echo-label {
  	  font-size: 13px;
  	  margin-bottom: 6px;
  	}
  
  	.echo-value {
  	  font-size: 12px;
  	  color: #000000;
  	}
  
  	/* Buttons */
  	.echo-buttons {
  	  display: flex;
  	  justify-content: flex-end;
  	  gap: 8px;
  	  margin-top: 6px;
  	}
  
  	.echo-buttons button {
  	  font-size: 13px;
  	  padding: 4px 10px;
  	  border-radius: 4px;
  	  border: 1px solid #4b5563;
  	  background: #1f2933;
  	  color: #e5e7eb;
  	  cursor: pointer;
  	}
  
  	.echo-buttons button:hover {
  	  background: #374151;
  	}

	.echo-tail {
	  display: flex;
	  align-items: center;
	  gap: 6px;
	  font-size: 12px;
	  color: #000000;
	  margin: 6px 0 4px;
	}

	.echo-tail input {
	  margin: 0;
	}  	
	
	/* Flanger modal basis (kleur evt. tweaken naar je theme) */
	.flanger-modal {
	  background: #111827;
	  color: #e5e7eb;
	  border-radius: 8px;
	  padding: 16px 20px 18px;
	  min-width: 360px;
	  max-width: 520px;
	  box-shadow: 0 20px 40px rgba(0,0,0,0.6);
	  position: relative;
	  border: 1px solid #374151;
	  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	}

	.flanger-modal h2 {
	  margin: 0 0 6px;
	  font-size: 18px;
	}

	.flanger-modal p {
	  margin: 0 0 14px;
	  font-size: 13px;
	  color: #9ca3af;
	}

	.flanger-close {
	  position: absolute;
	  top: 6px;
	  right: 8px;
	  border: none;
	  background: transparent;
	  color: #9ca3af;
	  font-size: 18px;
	  cursor: pointer;
	}

	.flanger-close:hover {
	  color: #e5e7eb;
	}

	.flanger-sliders {
	  display: flex;
	  flex-wrap: wrap;
	  gap: 18px;
	  justify-content: space-between;
	  margin: 8px 0 12px;
	}

	.flanger-slider-group {
	  display: flex;
	  flex-direction: column;
	  min-width: 120px;
	}

	.flanger-label {
	  font-size: 13px;
	  margin-bottom: 4px;
	}

	.flanger-value {
	  font-size: 12px;
	  color: #9ca3af;
	  margin-top: 2px;
	}

	.flanger-buttons {
	  display: flex;
	  justify-content: flex-end;
	  gap: 8px;
	  margin-top: 6px;
	}

	.flanger-buttons button {
	  font-size: 13px;
	  padding: 4px 10px;
	  border-radius: 4px;
	  border: 1px solid #4b5563;
	  background: #1f2933;
	  color: #e5e7eb;
	  cursor: pointer;
	}

	.flanger-buttons button:hover {
	  background: #374151;
	}

	.pitch-modal {
	  background: #111827;
	  color: #e5e7eb;
	  border-radius: 8px;
	  padding: 16px 20px 18px;
	  min-width: 360px;
	  max-width: 520px;
	  box-shadow: 0 20px 40px rgba(0,0,0,0.6);
	  position: relative;
	  border: 1px solid #374151;
	  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	}

	.pitch-modal h2 {
	  margin: 0 0 6px;
	  font-size: 18px;
	}

	.pitch-modal p {
	  margin: 0 0 14px;
	  font-size: 13px;
	  color: #9ca3af;
	}

	.pitch-close {
	  position: absolute;
	  top: 8px;
	  right: 10px;
	  border: none;
	  background: transparent;
	  color: #9ca3af;
	  font-size: 18px;
	  cursor: pointer;
	}

	.pitch-sliders {
	  margin-bottom: 12px;
	}

	.pitch-slider-group {
	  margin-bottom: 8px;
	}

	.pitch-label {
	  font-size: 13px;
	  margin-bottom: 4px;
	}

	.pitch-value {
	  font-size: 12px;
	  color: #9ca3af;
	  margin-top: 4px;
	}

	.pitch-buttons {
	  display: flex;
	  justify-content: flex-end;
	  gap: 8px;
	}

	#pitchApplyBtn,
	#pitchCancelBtn {
	  padding: 6px 12px;
	  border-radius: 6px;
	  border: 1px solid #4b5563;
	  background: #1f2937;
	  color: #e5e7eb;
	  cursor: pointer;
	}

	#pitchApplyBtn:hover {
	  background: #374151;
	}

	#pitchCancelBtn:hover {
	  background: #111827;
	}

	/* Zelfde overlay als echo gebruiken,
	   of je bestaande .overlay-styling hergebruiken */
