* {
  all: unset;
  font-size: 14px;
  font-family: "Ubuntu Nerd Font";
  transition: 200ms;
}

trough highlight {
  background: #cad3f5;
}

scale trough {
  margin: 0rem 1rem;
  background-color: #363a4f;
  min-height: 8px;
  min-width: 70px;
}

slider {
  background-color: #8aadf4;
}

/* ── Floating notifications ── */

.floating-notifications.background .notification-row .notification-background {
  box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.45);
  background-color: rgba(36, 39, 58, 0.92);
  border: 1px solid rgba(73, 77, 100, 0.6);
  border-radius: 16px;
  margin: 8px 10px;
  color: #cad3f5;
  padding: 0;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification {
  padding: 8px;
  border-radius: 16px;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification.critical {
  box-shadow: inset 0 0 0 1px rgba(237, 135, 150, 0.5);
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification
  .notification-content {
  margin: 7px;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification
  .notification-content
  .summary {
  color: #cad3f5;
  font-weight: 500;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification
  .notification-content
  .time {
  color: #6e738d;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification
  .notification-content
  .body {
  color: #a5adcb;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification
  > *:last-child
  > * {
  min-height: 3.4em;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification
  > *:last-child
  > *
  .notification-action {
  border-radius: 10px;
  color: #cad3f5;
  background-color: rgba(54, 58, 79, 0.7);
  border: 1px solid rgba(73, 77, 100, 0.5);
  margin: 6px;
  padding: 4px 8px;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification
  > *:last-child
  > *
  .notification-action:hover {
  background-color: rgba(73, 77, 100, 0.6);
  color: #cad3f5;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .notification
  > *:last-child
  > *
  .notification-action:active {
  background-color: rgba(198, 160, 246, 0.2);
  color: #cad3f5;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .close-button {
  margin: 7px;
  border-radius: 8px;
  color: #24273a;
  background-color: #ed8796;
  min-width: 24px;
  min-height: 24px;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .close-button:hover {
  background-color: #ee99a0;
  color: #24273a;
}

.floating-notifications.background
  .notification-row
  .notification-background
  .close-button:active {
  background-color: #ed8796;
  color: #24273a;
}

/* ── Control center ── */

.control-center {
  box-shadow: 0 8px 24px 0 rgba(0, 0, 0, 0.5);
  border-radius: 16px;
  border: 1px solid rgba(73, 77, 100, 0.5);
  margin: 8px;
  background-color: rgba(36, 39, 58, 0.94);
  color: #cad3f5;
  padding: 16px;
}

.control-center .widget-title > label {
  color: #cad3f5;
  font-size: 1.3em;
  font-weight: 500;
}

.control-center .widget-title button {
  border-radius: 10px;
  color: #a5adcb;
  background-color: rgba(54, 58, 79, 0.7);
  border: 1px solid rgba(73, 77, 100, 0.4);
  padding: 8px;
}

.control-center .widget-title button:hover {
  background-color: rgba(73, 77, 100, 0.5);
  color: #cad3f5;
}

.control-center .widget-title button:active {
  background-color: rgba(198, 160, 246, 0.2);
  color: #cad3f5;
}

/* ── Notifications inside control center ── */

.control-center .notification-row .notification-background {
  border-radius: 12px;
  color: #cad3f5;
  background-color: rgba(54, 58, 79, 0.6);
  border: 1px solid rgba(73, 77, 100, 0.3);
  margin-top: 10px;
}

.control-center .notification-row .notification-background .notification {
  padding: 7px;
  border-radius: 12px;
}

.control-center
  .notification-row
  .notification-background
  .notification.critical {
  box-shadow: inset 0 0 0 1px rgba(237, 135, 150, 0.5);
}

.control-center
  .notification-row
  .notification-background
  .notification
  .notification-content {
  margin: 7px;
}

.control-center
  .notification-row
  .notification-background
  .notification
  .notification-content
  .summary {
  color: #cad3f5;
  font-weight: 500;
}

.control-center
  .notification-row
  .notification-background
  .notification
  .notification-content
  .time {
  color: #6e738d;
}

.control-center
  .notification-row
  .notification-background
  .notification
  .notification-content
  .body {
  color: #a5adcb;
}

.control-center
  .notification-row
  .notification-background
  .notification
  > *:last-child
  > * {
  min-height: 3.4em;
}

.control-center
  .notification-row
  .notification-background
  .notification
  > *:last-child
  > *
  .notification-action {
  border-radius: 10px;
  color: #cad3f5;
  background-color: rgba(24, 25, 38, 0.6);
  border: 1px solid rgba(73, 77, 100, 0.3);
  margin: 6px;
  padding: 4px 8px;
}

.control-center
  .notification-row
  .notification-background
  .notification
  > *:last-child
  > *
  .notification-action:hover {
  background-color: rgba(54, 58, 79, 0.7);
  color: #cad3f5;
}

.control-center
  .notification-row
  .notification-background
  .notification
  > *:last-child
  > *
  .notification-action:active {
  background-color: rgba(198, 160, 246, 0.2);
  color: #cad3f5;
}

.control-center .notification-row .notification-background .close-button {
  margin: 7px;
  padding: 2px;
  border-radius: 8px;
  color: #24273a;
  background-color: #ed8796;
  min-width: 22px;
  min-height: 22px;
}

.close-button {
  border-radius: 8px;
}

.control-center .notification-row .notification-background .close-button:hover {
  background-color: #ee99a0;
  color: #24273a;
}

.control-center
  .notification-row
  .notification-background
  .close-button:active {
  background-color: #ed8796;
  color: #24273a;
}

.control-center .notification-row .notification-background:hover {
  background-color: rgba(73, 77, 100, 0.35);
  color: #cad3f5;
}

.control-center .notification-row .notification-background:active {
  background-color: rgba(198, 160, 246, 0.15);
  color: #cad3f5;
}

/* ── Progress bars ── */

.notification.critical progress {
  background-color: #ed8796;
}

.notification.low progress,
.notification.normal progress {
  background-color: #8aadf4;
}

/* ── DND toggle ── */

.control-center-dnd {
  margin-top: 5px;
  border-radius: 10px;
  background: rgba(54, 58, 79, 0.5);
  border: 1px solid rgba(73, 77, 100, 0.3);
  box-shadow: none;
}

.control-center-dnd:checked {
  background: rgba(198, 160, 246, 0.15);
}

.control-center-dnd slider {
  background: #494d64;
  border-radius: 8px;
}

.widget-dnd {
  margin: 0px;
  font-size: 1.1rem;
}

.widget-dnd > switch {
  font-size: initial;
  border-radius: 10px;
  background: rgba(54, 58, 79, 0.5);
  border: 1px solid rgba(73, 77, 100, 0.3);
  box-shadow: none;
}

.widget-dnd > switch:checked {
  background: rgba(198, 160, 246, 0.15);
}

.widget-dnd > switch slider {
  background: #6e738d;
  border-radius: 8px;
  border: none;
}

.widget-dnd > switch:checked slider {
  background: #c6a0f6;
}

/* ── MPRIS player ── */

.widget-mpris .widget-mpris-player {
  background: rgba(54, 58, 79, 0.5);
  border: 1px solid rgba(73, 77, 100, 0.3);
  border-radius: 12px;
  padding: 10px;
}

.widget-mpris .widget-mpris-title {
  font-size: 1.2rem;
  font-weight: 500;
}

.widget-mpris .widget-mpris-subtitle {
  font-size: 0.8rem;
  color: #a5adcb;
}

/* ── Menubar / label ── */

.widget-menubar > box > .menu-button-bar > button > label {
  font-size: 3rem;
  padding: 0.5rem 2rem;
}

.widget-menubar > box > .menu-button-bar > :last-child {
  color: #ed8796;
}

.power-buttons button:hover,
.powermode-buttons button:hover,
.screenshot-buttons button:hover {
  background: rgba(54, 58, 79, 0.6);
  border-radius: 10px;
}

.control-center .widget-label > label {
  color: #cad3f5;
  font-size: 2rem;
}

/* ── Buttons grid ── */

.widget-buttons-grid {
  padding-top: 1rem;
}

.widget-buttons-grid > flowbox > flowboxchild > button {
  border-radius: 12px;
  background: rgba(54, 58, 79, 0.4);
  border: 1px solid rgba(73, 77, 100, 0.25);
  padding: 8px;
}

.widget-buttons-grid > flowbox > flowboxchild > button label {
  font-size: 2.5rem;
}

.widget-buttons-grid > flowbox > flowboxchild > button:hover {
  background: rgba(73, 77, 100, 0.45);
}

.widget-buttons-grid > flowbox > flowboxchild > button.toggle:checked {
  background: rgba(198, 160, 246, 0.18);
  border: 1px solid rgba(198, 160, 246, 0.35);
}

.widget-buttons-grid > flowbox > flowboxchild > button.toggle:checked label {
  color: #c6a0f6;
}

/* ── Volume ── */

.widget-volume {
  padding-top: 1rem;
}

.widget-volume label {
  font-size: 1.5rem;
  color: #7dc4e4;
}

.widget-volume trough highlight {
  background: #7dc4e4;
}

/* ── Backlight ── */

.widget-backlight trough highlight {
  background: #eed49f;
}

.widget-backlight label {
  font-size: 1.5rem;
  color: #eed49f;
}

.widget-backlight .KB {
  padding-bottom: 1rem;
}

.notification-default-action .notification-content .image,
.notification .notification-content .image {
  -gtk-icon-size: 64px;
  min-width: 64px;
  min-height: 64px;
  margin-right: 8px;
}

.notification-default-action .notification-content .app-icon,
.notification .notification-content .app-icon {
  -gtk-icon-size: 24px;
  min-width: 24px;
  min-height: 24px;
}
