/* Toolbar */
.toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #2d2d2d;
  height: 50px;
  padding: 0 10px;
  border-bottom: 1px solid #3a3a3a;
  position: relative;
  z-index: 2000;
}

.toolbar-left,
.toolbar-center,
.toolbar-right {
  display: flex;
  align-items: center;
}

.toolbar-left {
  display: flex;
  align-items: center;
}

.logo-container {
  margin-right: 10px;
  display: flex;
  align-items: center;
}

.logo {
  height: 30px;
  width: auto;
}

.project-name {
  font-size: 14px;
  color: #e0e0e0;
  margin-right: 20px;
  display: flex;
  align-items: center;
  pointer-events: auto;
}

.toolbar button {
  --toolbar-button-bg: transparent;
  --toolbar-button-fg: #e0e0e0;
  background: transparent;
  border: none;
  background-color: var(--toolbar-button-bg);
  color: var(--toolbar-button-fg);
  margin: 0 5px;
  width: 28px;
  height: 28px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 3px;
  font-size: 14px;
  pointer-events: auto;
  transition:
    background-color 0.18s ease,
    color 0.18s ease,
    transform 0.12s ease,
    box-shadow 0.18s ease;
}

.toolbar button svg {
  transition: color 0.18s ease, fill 0.18s ease;
}

.toolbar button:hover {
  --toolbar-button-bg: #3a3a3a;
}

.toolbar button.active,
.toolbar .tool-button.active {
  --toolbar-button-bg: #e0e0e0;
  --toolbar-button-fg: #2d2d2d;
}

.toolbar button.tool-button.active {
  background-color: var(--toolbar-button-bg);
  color: var(--toolbar-button-fg);
}

.toolbar button.active:hover,
.toolbar .tool-button.active:hover {
  --toolbar-button-bg: #f0f0f0;
}

.toolbar button.active:active,
.toolbar .tool-button.active:active {
  --toolbar-button-bg: #d6d6d6;
}

.toolbar button:focus,
.toolbar button:focus-visible,
.toolbar .tool-button:focus,
.toolbar .tool-button:focus-visible {
  outline: none;
  box-shadow: none;
}

.toolbar button:disabled {
  color: #666;
  cursor: not-allowed;
}

.toolbar button:active {
  --toolbar-button-bg: #5a5a5a;
  transform: scale(0.95);
}

.record-btn {
  color: #ff4444;
}

.toolbar .record-button.active {
  --toolbar-button-bg: #ffd7d9;
  --toolbar-button-fg: #d9363e;
}

.toolbar .record-button.active:hover {
  --toolbar-button-bg: #ffc4c7;
  --toolbar-button-fg: #c92d35;
}

.toolbar .record-button.active:active {
  --toolbar-button-bg: #ffb0b4;
  --toolbar-button-fg: #b8242d;
}

.toolbar-separator {
  width: 1px;
  height: 20px;
  background-color: #555;
  margin: 0 10px;
}

.transport-control {
  display: flex;
  align-items: center;
  margin: 0 10px;
  pointer-events: auto;
}

.transport-item {
  margin: 0 5px;
  padding: 2px 2px;
  background-color: #3a3a3a;
  border-radius: 3px;
  font-size: 12px;
}

/* Fixed-width font for time display to prevent layout shifts */
.current-time {
  font-family: 'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-weight: normal;
  letter-spacing: 0.5px;
  padding: 2px 4px;
}

/* Clickable BPM styling */
.current-bpm {
  font-family: 'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-weight: normal;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  padding: 2px 4px;
  border-radius: 2px;
}

.current-bpm:hover {
  background-color: #4a4a4a;
  color: #fff;
}

/* Clickable time signature styling */
.current-time-signature {
  font-family: 'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-weight: normal;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  padding: 2px 4px;
  border-radius: 2px;
}

.current-time-signature:hover {
  background-color: #4a4a4a;
  color: #fff;
}

.current-key-signature {
  font-family: 'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-weight: normal;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  padding: 2px 4px;
  border-radius: 2px;
}

.current-key-signature:hover {
  background-color: #4a4a4a;
  color: #fff;
}

.export-dropdown .quant-dropdown {
  width: 250px;
  left: 0;
}

.key-signature-dropdown .quant-dropdown {
  width: 100px;
  left: 0;
}

/* Clickable zoom styling */
.current-zoom {
  font-family: 'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-weight: normal;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  padding: 2px 4px;
  border-radius: 2px;
}

.current-zoom:hover {
  background-color: #4a4a4a;
  color: #fff;
}

.zoom-slider-popup {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #2d2d2d;
  border: 1px solid #444;
  border-radius: 3px;
  padding: 8px 12px;
  z-index: 10000;
  display: flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  white-space: nowrap;
  margin-top: 2px;
}

.zoom-slider-popup input[type="range"] {
  width: 120px;
}

.zoom-slider-label {
  font-family: 'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
  font-size: 12px;
  color: #e0e0e0;
  min-width: 20px;
  text-align: center;
}
