@charset "UTF-8";
html {
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  -webkit-text-size-adjust: 100%;
}

body {
  overflow: visible;
  padding-bottom: 0px;
  height: 100%;
  width: 100%;
  background: transparent;
  color: #4c4c4c;
  font-family: Open Sans, Cantarell, Helvetica Neue, Roboto, sans-serif;
  font-weight: 400;
  font-size: 9pt;
  outline: 0;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  margin: 0;
  padding: 0;
}

box.card.gtk-pixbuf {
  max-width: min-content;
  overflow: hidden;
}
box.card > .header {
  align-items: center;
}
box.card > .header > svg.icon {
  width: unset;
  height: unset;
}
box.card > .header > img.icon {
  display: block;
}
box.card > frame.header, box.card > x-frame.header {
  display: flex;
  flex-grow: 1;
  align-items: center;
  justify-content: center;
}
box.card > frame.header svg, box.card > x-frame.header svg {
  fill: white;
}
box.card > box.content {
  width: -webkit-fill-available;
  width: -moz-fill-available;
  flex-direction: column;
  gap: 8px;
}
box.card > box.content > button {
  align-self: flex-start;
}

x-frame {
  display: flex;
  justify-content: center;
  align-items: center;
}

window {
  display: flex;
  flex-direction: column;
  position: fixed;
  right: 0px;
  left: 0px;
  top: 0px;
  bottom: 0px;
}
window.transparent {
  background-color: rgba(0, 0, 0, 0);
}

decoration {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
}

headerbar {
  display: flex;
  flex-direction: row;
  flex-shrink: 0;
  border-radius: 0 !important;
  -webkit-app-region: drag;
}
headerbar button {
  -webkit-app-region: no-drag;
}
headerbar button svg.icon {
  fill: #eeeeee;
}
headerbar > box {
  min-width: 0;
}
headerbar > box.left {
  flex-grow: 0;
  flex-direction: row;
}
headerbar > box.center {
  flex-grow: 1;
  justify-content: center;
}
headerbar > box.right {
  flex-grow: 0;
}
headerbar > box.controls {
  flex-grow: 0;
  width: auto;
  flex-direction: row-reverse;
}
headerbar > box.controls > button {
  margin-left: 6px;
}
headerbar > box.controls > separator {
  padding-left: 6px;
}

box {
  display: flex;
  flex-direction: row;
  min-width: 0;
  min-height: 0;
}
box > * {
  min-width: 0;
  min-height: 0;
}
box.vertical {
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
}
box.horizontal {
  align-items: center;
  flex-direction: row;
}
box.horizontal > separator {
  padding-left: 13px;
}

pre {
  overflow-wrap: break-word;
  white-space: normal;
}

widget {
  display: block;
}

widget[gtk-class=GtkLayout], widget[gtk-class=GtkFixed] {
  position: relative;
}
widget[gtk-class=GtkLayout] > *, widget[gtk-class=GtkFixed] > * {
  position: absolute;
}
widget[gtk-class=GtkLayout] > button, widget[gtk-class=GtkFixed] > button {
  box-sizing: border-box;
}

overlay {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}
overlay > :first-child {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
}
overlay > .gtk-overlay-child {
  position: absolute;
  z-index: 1;
}
overlay > .gtk-overlay-child.gtk-halign-start {
  left: 0;
}
overlay > .gtk-overlay-child.gtk-halign-end {
  right: 0;
}
overlay > .gtk-overlay-child.gtk-valign-start {
  top: 0;
}
overlay > .gtk-overlay-child.gtk-valign-end {
  bottom: 0;
}
overlay > .gtk-overlay-child.gtk-valign-fill {
  top: 0;
  bottom: 0;
}

stack {
  display: flex;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
}
stack > overlay,
stack > box {
  flex: 1 1 auto;
  align-self: stretch;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
}
stack > overlay {
  display: none;
}
stack > overlay:first-of-type {
  display: flex;
}

paned {
  display: flex;
  width: 100%;
  height: 100%;
}

box.page > box.card {
  height: auto;
}

row {
  display: flex;
  flex-direction: row;
}

stackswitcher.sidebar {
  z-index: 2;
}
stackswitcher.sidebar > button {
  position: relative;
  justify-content: flex-start;
  box-sizing: border-box;
  cursor: pointer;
}
stackswitcher.sidebar > button:before {
  border-right-width: 0;
}
stackswitcher.sidebar > button > svg {
  transition: fill 512ms ease;
  --webkit-transition: fill 512ms ease;
  fill: #c1c1c1;
  width: 24px;
  height: 24px;
}
stackswitcher.sidebar > button.\:checked > svg {
  fill: white;
}

html,
scrolledwindow {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html::-webkit-scrollbar,
scrolledwindow::-webkit-scrollbar {
  width: 0;
  height: 0;
}

html::-webkit-scrollbar-track,
scrolledwindow::-webkit-scrollbar-track {
  background: transparent;
}

html::-webkit-scrollbar-thumb,
scrolledwindow::-webkit-scrollbar-thumb {
  background-color: transparent;
}

html::-webkit-scrollbar-thumb:hover,
scrolledwindow::-webkit-scrollbar-thumb:hover {
  background-color: transparent;
}

html::-webkit-scrollbar-corner,
scrolledwindow::-webkit-scrollbar-corner {
  background: transparent;
}

viewport {
  display: flex;
  position: absolute;
  width: 100%;
  height: auto;
  min-height: 100%;
}

viewport > box {
  height: auto;
  width: 100%;
}

viewport > box.card {
  height: auto;
}

scrolledwindow {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  flex-grow: 1;
  overflow-y: scroll;
  overflow-x: hidden;
}

scrolledwindow.xui-sw {
  overflow: hidden;
  min-width: 0;
  min-height: 0;
}

scrolledwindow.xui-sw > sw-viewport {
  display: block;
  position: relative;
  min-width: 0;
  min-height: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  box-sizing: border-box;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

scrolledwindow.xui-sw > sw-viewport::-webkit-scrollbar {
  width: 0;
  height: 0;
}

scrolledwindow.xui-sw.axis-x > sw-viewport {
  overflow-x: auto;
  overflow-y: hidden;
}

scrolledwindow.xui-sw.axis-y > sw-viewport {
  overflow-x: hidden;
  overflow-y: auto;
}

scrolledwindow.xui-sw.axis-xy > sw-viewport {
  overflow: auto;
}

scrolledwindow.xui-sw > track {
  position: absolute;
  z-index: 10;
  opacity: 0;
  transition: opacity 160ms ease;
  pointer-events: none;
}

scrolledwindow.xui-sw:hover > track,
scrolledwindow.xui-sw.scrolling > track {
  opacity: 1;
  pointer-events: auto;
}

scrolledwindow.xui-sw > track.hidden {
  opacity: 0;
  pointer-events: none;
}

scrolledwindow.xui-sw > track > thumb {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(121, 121, 121, 0.9);
  border-radius: 0;
  will-change: transform;
}

scrolledwindow.xui-sw:hover > track > thumb {
  background-color: rgba(81, 81, 81, 0.95);
}

scrolledwindow.xui-sw > track.y {
  top: 5px;
  bottom: 5px;
  right: 0;
  width: 8px;
}

scrolledwindow.xui-sw > track.y > thumb {
  left: 2px;
  right: 2px;
  min-height: 24px;
}

scrolledwindow.xui-sw > track.x {
  left: 2px;
  right: 2px;
  bottom: 0;
  height: 8px;
}

scrolledwindow.xui-sw > track.x > thumb {
  top: 2px;
  bottom: 2px;
  min-width: 24px;
}

flowbox {
  display: grid;
  height: fit-content;
  box-sizing: border-box;
  grid-gap: 1.35rem;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  justify-content: center;
}
flowbox[max-children-per-line="1"] {
  grid-template-columns: 1fr;
}

flowboxchild {
  display: flex;
}
flowboxchild > * {
  width: 100%;
  height: fit-content;
}

toolbar {
  display: flex;
  flex-direction: row;
}

toolbar.horizontal entry {
  box-sizing: content-box;
}

toolitem {
  display: flex;
  flex-direction: row;
}

toolitem > box {
  flex-grow: 1;
}

button {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: inherit;
  background: none;
  border: none;
  box-sizing: content-box;
  cursor: default;
}
button.image-button {
  box-sizing: content-box;
}
button > * {
  margin-left: 4px;
}
button > *:first-child {
  margin-left: 0px;
}
button > img {
  width: 18px;
}
button > svg {
  width: 18px;
}

button[style*="width:"] {
  box-sizing: border-box;
  height: 27px;
  padding-left: 0;
  padding-right: 0;
}

button[style*="height:"] {
  box-sizing: border-box;
  padding-top: 0;
  padding-bottom: 0;
}

checkbutton {
  display: flex;
  align-items: center;
}
checkbutton > check {
  position: relative;
  box-sizing: content-box;
}

.xui-code {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-radius: 0;
  overflow: hidden;
}

pre.xui-code-block {
  margin: 0;
  padding: 12px 14px;
  border-radius: 0;
  background: #303030;
  color: #d8e0e8;
  font-family: ui-monospace, "JetBrains Mono", Menlo, Consolas, monospace;
  font-size: 13px;
  line-height: 1.55;
  overflow-x: auto;
  white-space: pre;
  tab-size: 4;
  user-select: text;
  -webkit-user-select: text;
  cursor: text;
}
pre.xui-code-block > code {
  display: block;
  background: transparent;
  padding: 0;
  font-family: inherit;
  font-size: inherit;
  user-select: text;
  -webkit-user-select: text;
}

headerbar.xui-code-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 5px 0 12px;
  border-radius: 0;
  border: 0;
  min-height: 32px;
}
headerbar.xui-code-head > .lang {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.7;
}
headerbar.xui-code-head > .copy {
  min-width: 48px;
  justify-content: center;
  padding: 0 6px;
}

code.xui-code-inline {
  background: #e9e9e9;
  color: #2c2c2c;
  padding: 1px 5px;
  border-radius: 4px;
  font: 0.92em ui-monospace, "JetBrains Mono", Menlo, Consolas, monospace;
}

h1 > code.xui-code-inline,
h1 code.xui-code-inline, h2 > code.xui-code-inline,
h2 code.xui-code-inline, h3 > code.xui-code-inline,
h3 code.xui-code-inline, h4 > code.xui-code-inline,
h4 code.xui-code-inline, h5 > code.xui-code-inline,
h5 code.xui-code-inline, h6 > code.xui-code-inline,
h6 code.xui-code-inline {
  background: transparent;
  padding: 0;
  border-radius: 0;
  color: inherit;
  font-weight: 700;
  font-size: 0.95em;
  font-family: ui-monospace, "JetBrains Mono", Menlo, Consolas, monospace;
}

pre.xui-code-block .t-kw, code.xui-code-inline .t-kw {
  color: #ff7b72;
}
pre.xui-code-block .t-str, code.xui-code-inline .t-str {
  color: #a5d6ff;
}
pre.xui-code-block .t-num, code.xui-code-inline .t-num {
  color: #79c0ff;
}
pre.xui-code-block .t-cmt, code.xui-code-inline .t-cmt {
  color: #6a737d;
  font-style: italic;
}
pre.xui-code-block .t-fn, code.xui-code-inline .t-fn {
  color: #d2a8ff;
}
pre.xui-code-block .t-cls, code.xui-code-inline .t-cls {
  color: #ffa657;
}
pre.xui-code-block .t-tag, code.xui-code-inline .t-tag {
  color: #7ee787;
}
pre.xui-code-block .t-attr, code.xui-code-inline .t-attr {
  color: #ffa657;
}

entry {
  display: flex;
  box-sizing: border-box;
}

entry > input {
  width: 100%;
  font-size: inherit;
  outline: none;
}

expander {
  display: flex;
  flex-direction: column;
}
expander > label {
  align-self: start;
}

.glass,
.xui-glass {
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

svg.icon {
  width: 16px;
  height: 16px;
  fill: #404040;
}

icon {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-size: 16px;
  background-repeat: no-repeat;
}

img {
  -webkit-user-drag: none;
  user-drag: none;
}

input {
  background: transparent;
  border: none;
  font-family: inherit;
  color: inherit;
}

label {
  display: flex;
  white-space: normal;
  align-items: center;
}

levelbar {
  display: flex;
  flex-direction: column;
}
levelbar > trough {
  display: flex;
  box-sizing: content-box;
  min-height: 3px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
levelbar > trough > block {
  height: inherit;
  width: 100%;
  display: inline-block;
}
levelbar > trough > block.filled {
  z-index: 1;
}
levelbar > trough > block.empty {
  z-index: 0;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
}

progressbar {
  display: flex;
  align-items: center;
  flex-direction: column;
}
progressbar text {
  display: block;
  padding: 2px;
}
progressbar trough {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
progressbar progress {
  display: block;
  position: absolute;
  top: -1px;
  bottom: -1px;
  box-sizing: content-box;
  height: 100%;
}
progressbar progress::-webkit-progress-bar {
  background-color: inherit;
  border-radius: inherit;
  border: inherit;
}
progressbar progress::-moz-progress-bar {
  background-color: transparent;
}

radiobutton {
  display: flex;
  align-items: center;
}
radiobutton > radio {
  position: relative;
  box-sizing: content-box;
}
radiobutton.flat {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 24px;
  min-width: 16px;
  padding: 5px 17px;
  border-radius: 6px;
  background-color: rgba(127, 127, 127, 0.1);
  font-weight: bold;
  cursor: pointer;
  user-select: none;
}
radiobutton.flat > label {
  cursor: inherit;
}
radiobutton.flat:hover {
  background-color: rgba(127, 127, 127, 0.17);
}
radiobutton.flat:active, radiobutton.flat.\:checked {
  background-color: rgba(127, 127, 127, 0.3);
}
radiobutton.flat.\:checked:hover {
  background-color: rgba(127, 127, 127, 0.35);
}

treeview {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 150px;
  min-width: 150px;
  overflow: hidden;
  z-index: 2;
  padding-left: 11px;
}
treeview.expander {
  padding-left: 11px;
}
treeview header {
  display: flex;
  flex-direction: row;
}
treeview header > button {
  flex-grow: 1;
  width: 100%;
}
treeview ol {
  display: none;
  padding: 0;
  margin: 0;
  padding: 0 0 0 15px;
}
treeview input {
  display: none;
}
treeview input + label {
  visibility: hidden;
  position: absolute;
  margin-left: -11px;
  height: 100%;
  width: 16px;
  height: 24px;
  z-index: 3;
}
treeview input + label::before {
  content: " ";
  width: 0;
  height: 0;
  margin-left: 6px;
  z-index: 3;
  border-top: 4.5px solid transparent;
  border-bottom: 4.5px solid transparent;
  border-left: 4.5px solid #4c4c4c;
}
treeview input:checked ~ ol {
  display: block;
}
treeview input:checked + label::before {
  content: " ";
  width: 0;
  height: 0;
  margin-left: 4px;
  z-index: 3;
  border-bottom: none;
  border-left: 4.5px solid transparent;
  border-right: 4.5px solid transparent;
  border-top: 4.5px solid #4c4c4c;
}
treeview li {
  position: relative;
  list-style: none;
}
treeview li.expander > input + label {
  visibility: visible;
}
treeview cell, treeview .cell {
  position: relative;
  display: flex;
  z-index: 2;
}
treeview cell::after, treeview .cell::after {
  content: "";
  z-index: 1;
  display: block;
  position: absolute;
  left: -50%;
  right: 0;
  height: 100%;
  background: inherit;
}
treeview column {
  display: flex;
  min-height: 16px;
  padding: 4px 0 4px 4px;
  align-items: center;
  z-index: 2;
}
treeview row {
  min-height: 24px;
  align-items: center;
}
treeview row > * {
  flex-grow: 1;
  width: 100%;
  margin-left: 4px;
}

scale {
  display: flex;
  align-items: center;
}
scale contents {
  display: block;
  width: 100%;
  height: 100%;
}
scale contents trough {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  height: 100%;
}
scale contents trough fill {
  display: block;
  position: relative;
  height: 100%;
}
scale contents trough highlight {
  display: block;
  position: absolute;
  height: 100%;
}
scale contents trough slider {
  display: block;
  position: relative;
}

separator {
  display: block;
  cursor: ew-resize;
  z-index: 3;
}

stackswitcher {
  display: flex;
  flex-direction: row;
  min-width: 42px;
  overflow: hidden;
  min-width: 36px;
  max-width: 36px;
}
stackswitcher.vertical {
  flex-direction: column;
}
stackswitcher > button {
  padding: 5px 15.5px 5px 15.5px;
  box-sizing: content-box;
}

switch {
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  cursor: pointer;
  user-select: none;
  position: relative;
  min-width: 38px;
}
switch > .xui-switch-symbol {
  position: absolute;
  margin-top: -1px;
  z-index: 0;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  pointer-events: none;
  color: var(--xui-switch-symbol-color, rgba(40, 40, 40, 0.6));
}
switch > .xui-switch-symbol.on {
  inset-inline-start: 8px;
}
switch > .xui-switch-symbol.off {
  inset-inline-end: 5px;
}
switch.\:checked > .xui-switch-symbol, switch:checked > .xui-switch-symbol {
  color: var(--xui-switch-symbol-checked-color, rgb(255, 255, 255));
}
switch > slider {
  display: block;
  box-sizing: border-box;
  transition-duration: 100ms !important;
  position: relative;
  z-index: 1;
}

iframe {
  display: flex;
  flex-direction: row;
  min-width: 42px;
  overflow: hidden;
  border: 0;
  width: 100%;
  height: 100%;
}

panel,
.panel {
  display: flex;
  flex-direction: row;
  min-width: 0;
  min-height: 0;
  padding: 12px;
}

panel > *,
.panel > * {
  min-width: 0;
  min-height: 0;
}

panel.vertical,
.panel.vertical {
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
}

panel.horizontal,
.panel.horizontal {
  align-items: center;
  flex-direction: row;
}

lockscreen {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9000;
  font-family: Open Sans, Cantarell, Helvetica Neue, Roboto, sans-serif;
  color: white;
  background: #303030;
  background-size: cover;
  background-position: center;
  transition: opacity 280ms ease;
}

lockscreen > .body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  min-width: 240px;
}

lockscreen .title {
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.92);
}

lockscreen .hint {
  font-size: 12px;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.5);
}

lockscreen entry.code,
lockscreen entry.code:focus,
lockscreen entry.code:focus-within,
lockscreen entry.code:hover {
  min-width: 220px;
  padding: 0;
  margin: 0;
  background: none;
  background-image: none;
  background-color: transparent;
  border: 0;
  border-radius: 0px;
  box-shadow: none;
  outline: 0;
  filter: none;
  color: inherit;
}

lockscreen entry.code > input,
lockscreen entry.code > input:focus,
lockscreen entry.code > input:hover {
  width: 220px;
  padding: 12px 14px;
  text-align: center;
  font-size: 22px;
  letter-spacing: 0.55em;
  font-weight: 500;
  color: white;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0px;
  box-shadow: none;
  outline: 0;
  caret-color: rgba(255, 255, 255, 0.85);
  transition: background-color 240ms ease, border-color 240ms ease;
}

lockscreen entry.code > input::placeholder {
  color: transparent;
}

lockscreen entry.code > input:focus {
  background: rgba(255, 255, 255, 0.09);
  border-color: rgba(255, 255, 255, 0.32);
}

lockscreen .pad {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 4px;
}

lockscreen .pad-row {
  display: flex;
  flex-direction: row;
  gap: 6px;
  justify-content: center;
}

lockscreen button.pad-key,
lockscreen button.pad-key:hover,
lockscreen button.pad-key:active,
lockscreen button.pad-key:checked,
lockscreen button.pad-key:focus,
lockscreen button.pad-key:focus-visible {
  box-sizing: border-box;
  position: relative;
  width: 60px;
  height: 48px;
  min-width: 60px;
  min-height: 48px;
  max-width: 60px;
  max-height: 48px;
  padding: 0;
  margin: 0;
  font-size: 19px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.85);
  background: transparent;
  background-image: none;
  border: 0;
  border-radius: 0px;
  box-shadow: none;
  outline: 0;
  text-shadow: none;
  filter: none;
  transition: color 200ms ease;
}

lockscreen button.pad-key:hover {
  color: white;
}

lockscreen .pad-key.empty {
  visibility: hidden;
}

lockscreen button.unlock,
lockscreen button.unlock:hover,
lockscreen button.unlock:active,
lockscreen button.unlock:focus,
lockscreen button.unlock:focus-visible {
  box-sizing: border-box;
  position: relative;
  width: 220px;
  height: 40px;
  min-width: 220px;
  min-height: 40px;
  max-width: 220px;
  max-height: 40px;
  margin-top: 6px;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.92);
  background: transparent;
  background-image: none;
  border: 0;
  border-radius: 0px;
  box-shadow: none;
  outline: 0;
  text-shadow: none;
  filter: none;
  transition: color 240ms ease;
}

lockscreen button.unlock:hover {
  color: white;
}

lockscreen button.pad-key::before,
lockscreen button.unlock::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  border: 1px solid hsla(240, 0%, 100%, 0.5);
  mask-origin: border-box;
  mask-position: inherit;
  mask-size: inherit;
  mask-repeat: no-repeat;
  mask-image: radial-gradient(circle closest-side, white, transparent);
  -webkit-mask-origin: border-box;
  -webkit-mask-position: inherit;
  -webkit-mask-size: inherit;
  -webkit-mask-repeat: no-repeat;
}

lockscreen > .body > * {
  opacity: 0;
  transform: translateY(6px);
  animation: lockscreen-cascade 420ms ease forwards;
}

lockscreen > .body > .title {
  animation-delay: 60ms;
}

lockscreen > .body > .hint {
  animation-delay: 120ms;
}

lockscreen > .body > entry.code {
  animation-delay: 180ms;
}

lockscreen > .body > .pad {
  animation-delay: 240ms;
}

lockscreen > .body > button.unlock {
  animation-delay: 300ms;
}

lockscreen .pad > .pad-row {
  opacity: 0;
  transform: translateY(6px);
  animation: lockscreen-cascade 360ms ease forwards;
}

lockscreen .pad > .pad-row:nth-child(1) {
  animation-delay: 260ms;
}

lockscreen .pad > .pad-row:nth-child(2) {
  animation-delay: 320ms;
}

lockscreen .pad > .pad-row:nth-child(3) {
  animation-delay: 380ms;
}

lockscreen .pad > .pad-row:nth-child(4) {
  animation-delay: 440ms;
}

lockscreen.unlocked {
  opacity: 0;
  pointer-events: none;
}

lockscreen.shake > .body {
  animation: lockscreen-shake 320ms ease;
}

@keyframes lockscreen-cascade {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes lockscreen-shake {
  0%, 100% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(-8px);
  }
  40% {
    transform: translateX(8px);
  }
  60% {
    transform: translateX(-6px);
  }
  80% {
    transform: translateX(6px);
  }
}
.text, p {
  -webkit-user-select: text;
}

p {
  white-space: normal;
  line-height: 1.5;
}

.xui-page p, .xui-page ul, .xui-page ol, .xui-page hr, .xui-page blockquote, .xui-page pre, .xui-page figure, .xui-page table, .xui-page .xui-code {
  margin-top: 0;
  margin-bottom: 0;
}
.xui-page p + p,
.xui-page p + ul, .xui-page p + ol,
.xui-page ul + p, .xui-page ol + p,
.xui-page ul + ul, .xui-page ol + ol, .xui-page ul + ol, .xui-page ol + ul,
.xui-page p + blockquote, .xui-page blockquote + p,
.xui-page p + pre, .xui-page pre + p,
.xui-page p + figure, .xui-page figure + p,
.xui-page p + table, .xui-page table + p,
.xui-page p + .xui-code, .xui-page .xui-code + p,
.xui-page ul + .xui-code, .xui-page .xui-code + ul,
.xui-page ol + .xui-code, .xui-page .xui-code + ol,
.xui-page .xui-code + .xui-code {
  margin-top: 12px;
}
.xui-page h1 + *, .xui-page h2 + *, .xui-page h3 + *, .xui-page h4 + *, .xui-page h5 + *, .xui-page h6 + * {
  margin-top: 0 !important;
}
.xui-page * + h1, .xui-page * + h2, .xui-page * + h3 {
  margin-top: 24px;
}
.xui-page * + h4, .xui-page * + h5, .xui-page * + h6 {
  margin-top: 18px;
}
.xui-page p + switch:not([classic]), .xui-page p + selector:not([classic]), .xui-page p + set, .xui-page p + button {
  margin-top: 18px !important;
}
.xui-page * + hr, .xui-page hr + * {
  margin-top: 18px !important;
}

a {
  color: rgb(42, 88, 133);
  text-decoration: inherit;
}
a:hover {
  text-decoration: underline;
}

a.link·check {
  display: none;
}
a.link·check[href$=".html"] {
  display: initial;
}

b, strong {
  color: rgb(96, 96, 96);
  font-weight: 700;
  white-space: normal;
}

.xui-page ul {
  padding-left: 6px;
  list-style-type: none;
  list-style-position: outside;
}
.xui-page ul ul {
  padding: 0;
  margin: 0 0 0 11px !important;
}
.xui-page ul li {
  padding: 0;
}
.xui-page ul li:not(:first-child) {
  padding-top: 3px;
}
.xui-page ul li:not(:last-child) {
  padding-bottom: 3px;
}
.xui-page ul li::before {
  position: relative;
  content: " ";
  background: rgb(128, 128, 128);
  border-right: 3px solid;
  border-bottom: 3px solid;
  top: 6.5px;
  left: -4px;
  vertical-align: text-top;
  margin: 0 1px 0 4px;
  font-size: 1px;
  line-height: 100%;
  color: rgb(128, 128, 128);
}
.xui-page ol {
  padding-left: 22px;
  list-style-position: outside;
}
.xui-page ol ol {
  padding-left: 22px;
  margin: 0 !important;
}
.xui-page ol li {
  padding: 0;
}
.xui-page ol li:not(:first-child) {
  padding-top: 3px;
}
.xui-page ol li:not(:last-child) {
  padding-bottom: 3px;
}
.xui-page ol li::marker {
  color: rgb(128, 128, 128);
  font-weight: 600;
}

hr {
  height: 1px;
  color: #aaa;
  border: 0;
}
hr::before {
  display: block;
  content: " ";
  border-top: 1px dashed rgb(192, 192, 192);
}

hr.vertical, card.line > hr, *.card·line > card > hr {
  width: 1px;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 10px;
  margin-left: 10px;
}
hr.vertical::before, card.line > hr::before, *.card·line > card > hr::before {
  position: absolute;
  top: 0;
  height: 100%;
  border-top: none;
  border-left: 1px solid #e9e9eb;
  width: 100%;
}

figure.md-image {
  margin-left: 0;
  margin-right: 0;
}

figure.md-image > img {
  display: block;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

figure.md-image > figcaption {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.35;
  text-align: center;
  opacity: 0.72;
}

check.\:checked::after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  display: block;
  mask-image: url("/usr/share/themes/xui/assets/x164897429344252-symbolic.svg");
  -webkit-mask-image: url("/usr/share/themes/xui/assets/x164897429344252-symbolic.svg");
  background-image: unset;
  background-color: white;
  background-size: cover;
  -webkit-mask-size: 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
}

radio.\:checked::after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  display: block;
  mask-image: url("/usr/share/themes/xui/assets/x164897529748266-symbolic.svg");
  -webkit-mask-image: url("/usr/share/themes/xui/assets/x164897529748266-symbolic.svg");
  background-image: unset;
  background-color: white;
  background-size: cover;
  -webkit-mask-size: 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
}

.gtk-halign > flowbox,
expander > flowbox.gtk-halign {
  grid-template-columns: repeat(auto-fit, minmax(200px, max-content));
  width: fit-content;
  width: -moz-available;
  max-width: 100%;
}
.gtk-halign > flowbox.gtk-halign-start, .gtk-halign > flowbox.gtk-halign-end,
expander > flowbox.gtk-halign.gtk-halign-start,
expander > flowbox.gtk-halign.gtk-halign-end {
  width: fit-content;
}

.gtk-halign-start > flowbox {
  justify-content: start;
}

.gtk-halign-center > flowbox {
  justify-content: center;
}

.gtk-halign-end > flowbox {
  justify-content: end;
}

@media (max-width: 900px) {
  flowbox.adaptive, .gtk-halign > flowbox.adaptive, expander > flowbox.gtk-halign.adaptive {
    width: 100%;
    max-width: -webkit-fill-available;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  }
}
.selectable {
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

[width] {
  --gtk-width: attr(width number, 0);
  min-width: calc(var(--gtk-width) * 1px);
}

[height] {
  --gtk-height: attr(height number, 0);
  min-height: calc(var(--gtk-height) * 1px);
}

[width-chars] {
  --gtk-width-chars: attr(width-chars number, 0);
  min-inline-size: calc(var(--gtk-width-chars) * 1ch);
}

[max-width-chars] {
  --gtk-max-width-chars: attr(max-width-chars number, 0);
  max-inline-size: calc(var(--gtk-max-width-chars) * 1ch);
}

[margin-start] {
  --gtk-margin-start: attr(margin-start number, 0);
  margin-left: calc(var(--gtk-margin-start) * 1px);
}

[margin-end] {
  --gtk-margin-end: attr(margin-end number, 0);
  margin-right: calc(var(--gtk-margin-end) * 1px);
}

[margin-top] {
  --gtk-margin-top: attr(margin-top number, 0);
  margin-top: calc(var(--gtk-margin-top) * 1px);
}

[margin-bottom] {
  --gtk-margin-bottom: attr(margin-bottom number, 0);
  margin-bottom: calc(var(--gtk-margin-bottom) * 1px);
}

label[weight=bold i] {
  font-weight: 700;
}

[wrap=true i] {
  white-space: normal;
  overflow-wrap: anywhere;
}

[wrap=false i] {
  white-space: nowrap;
}

[valign=fill i] {
  align-self: stretch;
}

[hexpand=true i] {
  flex-grow: 1;
}

[vexpand=true i] {
  flex-grow: 1;
}

:is(box, row, headerbar, toolbar):not([orientation=vertical]) > [pack-type=end i],
:is(box, row, headerbar, toolbar).horizontal > [pack-type=end i] {
  margin-inline-start: auto;
}

:is(box, row, headerbar, toolbar)[orientation=vertical] > [pack-type=end i],
:is(box, row, headerbar, toolbar).vertical > [pack-type=end i] {
  margin-block-start: auto;
}

window > headerbar + * {
  flex-grow: 1;
}

overlay > * {
  flex-grow: 1;
}

stackswitcher.sidebar > button {
  border: none;
}
stackswitcher.sidebar > button::before {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  border: 1px solid hsla(240, 0%, 100%, 0.5);
  mask-origin: border-box;
  mask-position: inherit;
  mask-size: inherit;
  mask-repeat: no-repeat;
  -webkit-mask-origin: border-box;
  -webkit-mask-position: inherit;
  -webkit-mask-size: inherit;
  -webkit-mask-repeat: no-repeat;
  mask-image: radial-gradient(circle closest-side, white, transparent);
}
stackswitcher.sidebar > button:first-child::before {
  top: 0px;
}
stackswitcher.sidebar > button:hover::before {
  background-color: hsla(240, 0%, 50%, 0.2);
}
stackswitcher.sidebar > button.placeholder:hover::before {
  background-color: unset;
}

.effects·reveal·menu > menu label {
  border: none;
}
.effects·reveal·menu > menu label::before {
  border-top-width: 0px;
}
.effects·reveal·menu > menu label:first-of-type::before {
  border-top-width: 1px;
}
.effects·reveal·menu > menu > label:last-of-type::before {
  border-bottom-width: 1px;
}