.loro-soundtrack-dock {
  position: fixed;
  z-index: 90;
  right: 22px;
  bottom: max(22px, env(safe-area-inset-bottom));
}

.loro-soundtrack-button {
  display: inline-grid;
  grid-template-columns: auto auto auto;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid rgba(184, 137, 62, 0.72);
  border-radius: 2px;
  background: rgba(7, 21, 22, 0.94);
  box-shadow: 0 12px 34px rgba(15, 85, 96, 0.22);
  color: #f2efe8;
  cursor: pointer;
  font: 700 9px/1.2 "Courier New", Courier, monospace;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  backdrop-filter: blur(12px);
  transition:
    border-color 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

.loro-soundtrack-button:hover {
  border-color: #c39a4d;
  color: #ddc382;
  transform: translateY(-2px);
}

.loro-soundtrack-button:focus-visible {
  outline: 2px solid #b8893e;
  outline-offset: 4px;
}

.loro-soundtrack-button[aria-pressed="true"] {
  border-color: #1aa5ad;
}

.loro-soundtrack-state {
  color: #c39a4d;
}

.loro-soundtrack-track {
  padding-left: 10px;
  border-left: 1px solid rgba(242, 239, 232, 0.16);
}

.loro-soundtrack-loop {
  color: #1aa5ad;
  font-size: 15px;
  line-height: 1;
}

@media (max-width: 640px) {
  .loro-soundtrack-dock {
    right: 14px;
    bottom: max(14px, env(safe-area-inset-bottom));
    left: 14px;
  }

  .loro-soundtrack-button {
    width: 100%;
    grid-template-columns: auto 1fr auto;
    font-size: 8px;
  }
}

@media print {
  .loro-soundtrack-dock {
    display: none !important;
  }
}
