/* Work-around for regressions introduced in 0.9.15 */
* {
  all: unset;
}

/* Reset all styles */
* {
  border: none;
  border-radius: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
}

/* -----------------------------------------------------------------------------
 * Keyframes
 * -------------------------------------------------------------------------- */

@keyframes blink-warning {
  70% {
    color: white;
  }

  to {
    color: white;
    background-color: orange;
  }
}

@keyframes blink-critical {
  70% {
    color: white;
  }

  to {
    color: white;
    background-color: red;
  }
}

/* -----------------------------------------------------------------------------
 * Base styles
 * -------------------------------------------------------------------------- */

/* The whole bar */
#waybar {
  background: #323232;
  color: white;
  font-family:
    Cascadia Mono,
    monospace;
  font-size: 10px;
}

tooltip {
  /* CSS for hover menu */
  background-color: #323232;
}

/* Each module */
#battery,
#clock,
#cpu,
#custom-available_memory,
#custom-battery,
#custom-clock,
#custom-night_mode,
#custom-sound,
#custom-temperature,
#idle_inhibitor,
#memory,
#mode,
#network,
#pulseaudio,
#temperature,
#tray {
  padding-left: 10px;
  padding-right: 10px;
  border: 1px solid white;
}

/* -----------------------------------------------------------------------------
 * Module styles
 * -------------------------------------------------------------------------- */

#battery {
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}

#custom-battery.warning {
  color: orange;
}

#custom-battery.critical {
  color: red;
}

#battery.warning.discharging {
  animation-name: blink-warning;
  animation-duration: 3s;
}

#battery.critical.discharging {
  animation-name: blink-critical;
  animation-duration: 2s;
}

#clock {
  font-weight: bold;
}

#custom-clock {
  font-weight: bold;
}

#cpu {
  /* No styles */
}

#cpu.warning {
  color: orange;
}

#cpu.critical {
  color: red;
}

#memory {
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}

#memory.warning {
  color: orange;
}

#memory.critical {
  color: red;
  animation-name: blink-critical;
  animation-duration: 2s;
}

#mode {
  background: #64727d;
  border-top: 2px solid white;
  /* To compensate for the top border and still have vertical centering */
  padding-bottom: 2px;
}

#window {
  padding-left: 10px;
  padding-right: 10px;
}

#network {
  /* No styles */
}

#network.disconnected {
  color: orange;
}

#pulseaudio {
  /* No styles */
}

#pulseaudio.muted {
  /* No styles */
}

#custom-spotify {
  color: rgb(102, 220, 105);
}

#temperature {
  /* No styles */
}

#temperature.critical {
  color: red;
}

#tray {
  /* CSS rules for the tray (not the right-click or hover menu) */
}

/* #tray menu menuitem */
#tray menu {
  /* CSS for right click menu */
  background: #323232;
  padding: 5px;
  border: 1px solid white;
}
#tray menu menuitem {
  /* CSS for menu items in the right click menu */
}

#tray menu menuitem:hover {
  /* CSS for hovering over a right-click menu item. */
  background-color: #434343;
}

#window {
  font-weight: bold;
}

#workspaces button {
  border-top: 2px solid transparent;
  /* To compensate for the top border and still have vertical centering */
  padding-bottom: 2px;
  padding-left: 10px;
  padding-right: 10px;
  color: #888888;
}

#workspaces button.focused {
  border-color: #4c7899;
  color: white;
  background-color: #285577;
}

#workspaces button.urgent {
  border-color: #c9545d;
  color: #c9545d;
}
