/* Keep the Life, screen styles: Toma's workstation: Ghidra, the Ollama UI, Konsole and virt-manager with its GNOME guest. */

/* ---------------------------------------------------------------- Ghidra, dark theme */

.ghidra {
  --g-chrome: #3c3f41;
  --g-panel: #313335;
  --g-code: #1f2022;
  --g-line: #4b4f52;
  --g-text: #bbbbbb;
  min-width: 860px;
  background: var(--g-chrome);
  color: var(--g-text);
  font: 400 var(--l-12px) / 1.5 var(--sans);
}

.g-title {
  background: #2b2d2f;
  color: var(--chrome-text);
  border-bottom: var(--l-1px) solid var(--ghidra-edge);
}
.g-wt {
  flex: 1;
}
.g-logo {
  width: var(--l-14px);
  height: var(--l-14px);
  border-radius: var(--l-3px);
  background: #d9534f;
  box-shadow: inset -4px -4px 0 #b03a2e;
}

.g-menu {
  display: flex;
  align-items: center;
  gap: var(--l-0-2rem);
  padding: var(--l-0-1rem) var(--l-0-4rem);
  border-bottom: var(--l-1px) solid var(--g-line);
}
.g-mi {
  padding: var(--l-0-1rem) var(--l-0-45rem);
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
}
.g-mi::first-letter {
  text-decoration: underline;
}
.g-mbtn {
  cursor: pointer;
  border-radius: var(--l-2px);
}
.g-mbtn:hover,
.g-mbtn[aria-expanded="true"] {
  background: var(--ghidra-select);
  color: var(--white);
}

.g-wm {
  position: relative;
}

.g-drop {
  position: absolute;
  top: var(--l-100pct);
  left: 0;
  z-index: 5;
  min-width: var(--l-16rem);
  padding: var(--l-0-25rem) 0;
  background: var(--g-panel);
  border: var(--l-1px) solid var(--ghidra-edge);
  box-shadow: 0 var(--l-6px) var(--l-18px) var(--shadow-strong);
}

.g-drop label {
  display: flex;
  align-items: center;
  gap: var(--l-0-5rem);
  padding: var(--l-0-2rem) var(--l-0-7rem);
  cursor: pointer;
  white-space: nowrap;
}
.g-drop label:hover {
  background: var(--ghidra-select);
  color: var(--white);
}
.g-drop input {
  accent-color: var(--ghidra-select);
  margin: 0;
}

/* the toolbar: Ghidra's buttons as icons from svg/ghidra/, in groups split
   by a thin rule, a small arrow beside the buttons that open a list */
.g-tools {
  display: flex;
  align-items: center;
  gap: var(--l-4px);
  padding: var(--l-4px) var(--l-0-6rem);
  border-bottom: var(--l-1px) solid var(--g-line);
}
.g-tb {
  display: block;
  flex: none;
  width: var(--l-16px);
  height: var(--l-16px);
}
.g-tb.g-tdd {
  width: auto;
  margin-left: calc(var(--l-3px) * -1);
}
.g-tsep {
  flex: none;
  width: var(--l-1px);
  height: var(--l-16px);
  margin-inline: var(--l-2px);
  background: var(--g-line);
}

.g-main {
  display: flex;
  gap: var(--l-3px);
  padding: var(--l-3px);
  height: 36rem;
}

.g-side {
  flex: 0 0 var(--l-12-5rem);
  display: flex;
  flex-direction: column;
  gap: var(--l-3px);
  min-width: 0;
}
.g-list {
  flex: 1.15 1 0;
}
.g-decs {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: var(--l-3px);
  min-width: 0;
}

.g-pane {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  background: var(--g-panel);
  border: var(--l-1px) solid var(--g-line);
}
.g-pane[hidden],
.g-side[hidden],
.g-decs[hidden] {
  display: none;
}
.g-trees {
  flex: 0 0 auto;
}
.g-symp,
.g-dec {
  flex: 1 1 0;
}

.g-ph {
  flex: none;
  display: flex;
  align-items: center;
  gap: var(--l-0-4rem);
  padding: var(--l-0-15rem) var(--l-0-2rem) var(--l-0-15rem) var(--l-0-45rem);
  background: #45494a;
  color: var(--ghidra-head-text);
  border-bottom: var(--l-1px) solid var(--g-line);
  white-space: nowrap;
}

.g-pt {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}
.g-dec .g-ph {
  background: #3d4a63;
}
.g-snap .g-ph {
  background: #4a4560;
}

.g-x .ico {
  width: var(--l-10px);
  height: var(--l-10px);
}
.g-x {
  flex: none;
  display: grid;
  place-items: center;
  width: var(--l-1-3rem);
  height: var(--l-1-3rem);
  border: 0;
  border-radius: var(--l-2px);
  background: none;
  color: #c8c8c8;
  cursor: pointer;
  line-height: 1;
}
.g-x:hover {
  background: #c0392b;
  color: var(--white);
}

.g-ic {
  width: var(--l-11px);
  height: var(--l-11px);
  border-radius: var(--l-2px);
  flex: none;
  background: #8b8f93;
}
.g-ic-dec {
  background: #6ea4e0;
}
.g-ic-list {
  background: #b8b8b8;
}
.g-ic-bm {
  background: #e0b84c;
}
.g-ic-sym {
  background: #9b7fc4;
}

.g-tree,
.g-syms {
  list-style: none;
  margin: 0;
  padding: var(--l-0-3rem) var(--l-0-4rem);
  font-size: var(--l-11-5px);
  overflow: auto;
}
.g-syms {
  flex: 1;
  background: var(--g-code);
}
.g-tree li {
  padding-left: var(--l-1-1rem);
  position: relative;
}
.g-tree li::before {
  content: "";
  position: absolute;
  left: var(--l-0-3rem);
  top: var(--l-0-45em);
  width: var(--l-9px);
  height: var(--l-10px);
  border: var(--l-1px) solid #8f9396;
  border-radius: var(--l-1px);
}
.g-tree .g-root {
  padding-left: var(--l-0-2rem);
  font-weight: 600;
}
.g-tree .g-root::before {
  display: none;
}

.g-sym {
  display: flex;
  gap: var(--l-0-35rem);
  width: var(--l-100pct);
  padding: 0 var(--l-0-25rem);
  border: 0;
  background: none;
  color: #9cb4d8;
  font: inherit;
  text-align: left;
  cursor: pointer;
  white-space: nowrap;
}
.g-sym:hover {
  background: #3a3d40;
}
.g-sym.on {
  background: var(--ghidra-select);
  color: var(--white);
}
.g-f {
  color: #d77ad0;
  font-style: italic;
  font-weight: 600;
}

.g-code {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  background: var(--g-code);
  font: 400 var(--l-12px) / 1.55 var(--mono);
  padding-block: var(--l-0-3rem);
}

.gl,
.gd {
  white-space: pre;
  padding: 0 var(--l-0-6rem);
  min-height: 1.55em;
}

.gl-ban {
  color: #898989;
  padding-left: 4.2ch;
}
.gl-sig {
  color: #c9c9c9;
  padding-left: 4.2ch;
}
.gl-fn {
  padding-left: 4.2ch;
}
.g-fnname {
  color: var(--ghidra-function);
  font-weight: 600;
  display: inline-block;
  min-width: 26ch;
}
.g-xref {
  color: #808a92;
}
.gl-lab {
  padding-left: 13ch;
  color: var(--ghidra-label);
}
.gl-gap {
  min-height: var(--l-0-8em);
}

.gl-ins {
  cursor: default;
}
.gl-ins:hover {
  background: rgba(255, 255, 255, 0.04);
}

.g-bm {
  display: inline-block;
  width: 2.2ch;
}
.g-a {
  display: inline-block;
  width: 10ch;
  color: var(--ghidra-address);
}
.g-m {
  display: inline-block;
  width: 6ch;
  color: var(--ghidra-keyword);
}
.g-o {
  display: inline-block;
  min-width: 25ch;
  color: var(--code-text);
  padding-right: 1ch;
}
.g-c {
  color: var(--ghidra-comment);
}

.gl-mark {
  box-shadow: inset var(--l-2px) 0 0 var(--ghidra-label);
}
.gl-mark .g-bm::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: var(--l-9px);
  background: var(--ghidra-label);
  clip-path: polygon(
    0 0,
    var(--l-100pct) 0,
    var(--l-100pct) var(--l-100pct),
    var(--l-50pct) 72%,
    0 var(--l-100pct)
  );
}
.gl-ins.sel {
  background: #3b4a2c;
}
/* the address and the mnemonic grow lighter on the selected line, so they
   keep their contrast against its green */
.gl-ins.sel .g-a {
  color: #b5b5b5;
}
.gl-ins.sel .g-m {
  color: #90b4ff;
}
.g-lcode:focus-visible {
  outline: var(--l-1px) solid #a5c26b;
  outline-offset: -1px;
}

.gd {
  display: flex;
  padding-left: 0;
  cursor: default;
}
.gd.sel {
  background: #3a3d2a;
}
.gd.sel .gd-n {
  color: #a4a7aa;
}
.gd-n {
  flex: none;
  width: 3.4ch;
  padding-right: 0.8ch;
  text-align: right;
  color: #85898c;
  border-right: var(--l-1px) solid #333;
  margin-right: 0.8ch;
}
.gd-t {
  color: var(--code-text);
}

.g-kw {
  color: var(--ghidra-keyword);
  font-weight: 600;
}
.g-ty {
  color: #4ec9b0;
}
.g-fn {
  color: var(--ghidra-function);
}
.g-va {
  color: var(--code-text);
}
.g-fd {
  color: #c792ea;
}
.g-nu {
  color: #b5cea8;
}
.g-co {
  color: var(--ghidra-label);
}
.g-cm {
  color: var(--ghidra-comment);
  font-style: italic;
}

.g-bottom {
  margin: 0 var(--l-3px) var(--l-3px);
}
.g-console {
  background: var(--g-code);
  font: var(--l-12px) / 1.6 var(--mono);
  padding: var(--l-0-2rem) var(--l-0-6rem);
  color: var(--ghidra-address);
}

.g-table {
  background: var(--g-code);
  font-size: var(--l-11-5px);
  overflow-x: auto;
}
.g-tr {
  display: grid;
  min-width: 40rem;
  grid-template-columns: 5rem var(--l-6rem) minmax(0, 1fr) var(--l-6rem);
  gap: var(--l-0-5rem);
  padding: var(--l-0-1rem) var(--l-0-6rem);
  white-space: nowrap;
}
.g-th {
  background: #3a3d3f;
  color: var(--ghidra-head-text);
}
.g-bmrow {
  background: var(--ghidra-select);
  color: var(--white);
}
.g-goto {
  border: 0;
  padding: 0;
  background: none;
  color: inherit;
  font: inherit;
  text-decoration: underline;
  cursor: pointer;
}

.g-status {
  display: flex;
  justify-content: flex-end;
  gap: var(--l-3px);
  padding: var(--l-3px);
  border-top: var(--l-1px) solid var(--g-line);
  font: var(--l-11-5px) var(--mono);
}
.g-status span {
  padding: 0 var(--l-0-6rem);
  border: var(--l-1px) solid var(--g-line);
  background: var(--g-panel);
}

@media (max-width: 839px) {
  .ghidra {
    min-width: 0;
  }
  .g-main {
    flex-direction: column;
    height: auto;
  }
  .g-side {
    display: none;
  }
  .g-list {
    flex: none;
    height: 24rem;
  }
  .g-decs {
    flex: none;
  }
  .g-dec {
    flex: none;
    height: 20rem;
  }
  .g-menu {
    flex-wrap: wrap;
  }
  .g-status {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}

/* ---------------------------------------------------------------- Ollama UI */

.ollama {
  min-width: 640px;
  background: #212121;
  color: #ececec;
  font: 400 13.5px/1.55 var(--sans);
}
.o-title {
  background: var(--ollama-side);
  color: var(--ollama-dim);
  border-bottom: var(--l-1px) solid var(--ollama-line);
}
.o-title > span:first-child {
  flex: 1;
}

.o-main {
  display: grid;
  grid-template-columns: var(--l-12-5rem) minmax(0, 1fr);
  min-height: 23rem;
}

.o-side {
  background: var(--ollama-side);
  padding: var(--l-0-75rem) var(--l-0-6rem);
  display: flex;
  flex-direction: column;
  font-size: var(--l-12-5px);
}
.o-new {
  display: flex;
  align-items: center;
  gap: var(--l-0-45rem);
  padding: var(--l-0-4rem) var(--l-0-6rem);
  border-radius: var(--l-8px);
  background: #262626;
  margin-bottom: var(--l-0-75rem);
}
.o-h {
  margin: var(--l-0-4rem) var(--l-0-6rem) var(--l-0-2rem);
  color: var(--ollama-muted);
  font-size: var(--l-11-5px);
  font-weight: 600;
}
.o-side ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.o-side li {
  padding: var(--l-0-25rem) var(--l-0-6rem);
  border-radius: var(--l-6px);
  color: var(--ollama-item);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.o-side li.on {
  background: var(--ollama-raised);
  color: var(--white);
}
.o-side li.none {
  color: #818181;
  font-style: italic;
}
.o-set {
  margin-top: auto;
  padding: var(--l-0-4rem) var(--l-0-6rem);
  color: var(--dim-gray);
}

.o-chat {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: var(--l-1rem) var(--l-1-5rem);
  gap: var(--l-1rem);
}
.o-empty {
  margin: auto 0;
  text-align: center;
  font-size: var(--l-1-45rem);
  font-weight: 500;
  color: var(--c-f2f2f2);
}

.o-compose {
  position: relative;
  background: var(--ollama-raised);
  border-radius: var(--l-18px);
  padding: var(--l-0-6rem) var(--l-0-9rem);
  border: var(--l-1px) solid var(--ollama-chip);
}
.o-input {
  color: #989898;
  padding-bottom: var(--l-0-6rem);
}
.o-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.o-plus {
  width: var(--l-1-6rem);
  height: var(--l-1-6rem);
  display: grid;
  place-items: center;
  border-radius: var(--l-50pct);
  border: var(--l-1px) solid #4a4a4a;
  color: var(--ollama-dim);
}
.o-model {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: var(--l-0-3rem);
  font-size: var(--l-12-5px);
  color: #d6d6d6;
  padding: var(--l-0-2rem) var(--l-0-55rem);
  border-radius: var(--l-8px);
  background: var(--ollama-chip);
}

.o-pick {
  position: absolute;
  right: 0;
  bottom: calc(var(--l-100pct) + var(--l-0-4rem));
  list-style: none;
  margin: 0;
  padding: var(--l-0-3rem);
  min-width: 11.5rem;
  background: var(--dark-pill);
  border: var(--l-1px) solid #444;
  border-radius: var(--l-10px);
  box-shadow: 0 var(--l-8px) var(--l-24px) var(--shadow-strong);
}

.o-pick li {
  padding: var(--l-0-25rem) var(--l-0-55rem);
  border-radius: var(--l-6px);
  font: var(--l-12px) var(--mono);
  color: var(--ollama-item);
}
.o-pick li.on {
  background: var(--dark-gray);
  color: var(--white);
}
.o-pick li {
  display: flex;
  align-items: center;
  gap: var(--l-0-4rem);
}
.o-pick li.on .ico {
  color: #8fd18f;
  width: var(--l-14px);
  height: var(--l-14px);
}
.o-pick li:not(.on) {
  padding-left: calc(var(--l-0-55rem) + var(--l-14px) + var(--l-0-4rem));
}

.o-log {
  display: flex;
  flex-direction: column;
  gap: var(--l-1rem);
}
.o-user {
  align-self: flex-end;
  background: #303030;
  padding: var(--l-0-45rem) var(--l-0-9rem);
  border-radius: var(--l-16px);
}
.o-bot p + p,
.o-bot p + ol {
  margin-top: var(--l-0-6rem);
}
.o-name {
  font: 600 var(--l-11-5px) var(--mono);
  color: #a3a3a3;
}
.o-bot ol {
  margin: 0;
  padding-left: var(--l-1-4rem);
}
.o-bot code {
  font: var(--l-12px) var(--mono);
  background: var(--ollama-line);
  padding: var(--l-0-05rem) var(--l-0-35rem);
  border-radius: var(--l-4px);
}

.o-status {
  display: flex;
  flex-wrap: wrap;
  gap: 0 var(--l-1-2rem);
  padding: var(--l-0-3rem) var(--l-0-8rem);
  background: var(--ollama-side);
  color: var(--ollama-muted);
  font: var(--l-11-5px) var(--mono);
  border-top: var(--l-1px) solid var(--ollama-line);
}

@media (max-width: 599px) {
  .ollama {
    min-width: 0;
  }
  .o-main {
    grid-template-columns: minmax(0, 1fr);
  }
  .o-side {
    display: none;
  }
  .o-chat {
    padding: var(--l-1rem);
    min-height: var(--l-21rem);
  }
}

/* ---------------------------------------------------------------- Konsole, Breeze dark */

.konsole {
  background: #232627;
  color: var(--breeze-text);
}
.k-title {
  background: var(--breeze-window);
  color: var(--code-text);
  border-bottom: var(--l-1px) solid var(--breeze-edge);
}
.k-title > span:first-child {
  flex: 1;
  text-align: center;
}
.k-menu {
  display: flex;
  flex-wrap: wrap;
  gap: var(--l-0-2rem) var(--l-1rem);
  padding: var(--l-0-2rem) var(--l-0-7rem);
  background: var(--breeze-header);
  font: var(--l-12px) var(--sans);
  color: var(--chrome-text);
}

.k-screen {
  padding: var(--l-0-7rem) var(--l-0-8rem);
  font: 400 var(--l-12-5px) / 1.5 var(--mono);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.k-u {
  color: #1cdc9a;
  font-weight: 600;
}
.k-d {
  color: #1d99f3;
  font-weight: 600;
}
.k-cur {
  display: inline-block;
  width: var(--l-0-6em);
  height: var(--l-1-1em);
  vertical-align: text-bottom;
  background: var(--breeze-text);
  animation: blink var(--t-1-1s) steps(1) infinite;
}

/* ---------------------------------------------------------------- virt-manager with a GNOME guest */

.vmm {
  min-width: 620px;
  background: var(--breeze-window);
  color: var(--breeze-text);
  font: var(--l-13px) / 1.45 var(--sans);
}
.v-title {
  background: var(--breeze-header);
  color: var(--breeze-text);
  border-bottom: var(--l-1px) solid var(--breeze-edge);
}
.v-title > span:first-child {
  flex: 1;
  text-align: center;
  font-weight: 600;
}
.v-menu {
  display: flex;
  gap: var(--l-1rem);
  padding: var(--l-0-2rem) var(--l-0-7rem);
  font-size: var(--l-12-5px);
  color: #eff0f1;
}
.v-tools {
  display: flex;
  align-items: center;
  gap: var(--l-0-35rem);
  padding: var(--l-0-3rem) var(--l-0-6rem);
  border-bottom: var(--l-1px) solid var(--breeze-edge);
}
.v-btn {
  width: var(--l-1-9rem);
  height: var(--l-1-6rem);
  display: grid;
  place-items: center;
  border-radius: var(--l-4px);
  background: var(--breeze-header);
  border: var(--l-1px) solid #4d5357;
  color: var(--breeze-text);
}
.v-nic {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: var(--l-0-35rem);
  font: var(--l-11-5px) var(--mono);
  color: #f08a95;
  padding: var(--l-0-1rem) var(--l-0-5rem);
  border: var(--l-1px) solid #da4453;
  border-radius: var(--l-4px);
  background: rgba(218, 68, 83, 0.15);
}

/* guest screen: GNOME Shell in a normal session */

.gn {
  background-color: #7d8ce3;
  background-image: url("../../svg/gnome/wallpaper.svg");
  background-size: 52px 90px;
}

.gn-bar {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  height: var(--l-2rem);
  padding: 0 var(--l-0-4rem);
  background: #000;
  color: var(--white);
  font: 600 var(--l-12-5px) var(--sans);
}

.gn-act {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: var(--l-4px);
  padding: var(--l-6px) var(--l-9px);
  border-radius: var(--l-99px);
  background: var(--dark-pill);
}
.gn-act i {
  display: block;
  height: var(--l-6px);
  border-radius: var(--l-3px);
  background: var(--white);
}
.gn-act i:first-child {
  width: 22px;
}
.gn-act i + i {
  width: var(--l-6px);
  opacity: 0.55;
}

.gn-clock {
  padding: var(--l-0-15rem) var(--l-0-7rem);
}
.gn-tray {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: var(--l-0-55rem);
  padding: var(--l-0-3rem) var(--l-0-6rem);
  border-radius: var(--l-99px);
  background: var(--dark-pill);
}
.gn-tray .ico {
  width: var(--l-14px);
  height: var(--l-14px);
}

.gn-desk {
  padding: var(--l-1-5rem);
}

/* libadwaita windows */

.adw {
  background: var(--white);
  color: var(--adw-text);
  border-radius: var(--l-12px);
  overflow: hidden;
  box-shadow:
    0 0 0 var(--l-1px) rgba(0, 0, 0, 0.12),
    0 var(--l-10px) var(--l-28px) rgba(0, 0, 0, 0.32);
}

.adw-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--l-0-2rem);
  min-width: var(--l-2rem);
  height: var(--l-2rem);
  padding: 0 var(--l-0-5rem);
  border-radius: var(--l-6px);
  color: var(--adw-text);
}
.adw-btn.solid {
  background: var(--adw-button);
  font-weight: 600;
}
.adw-close {
  display: inline-grid;
  place-items: center;
  width: var(--l-1-5rem);
  height: var(--l-1-5rem);
  margin-left: var(--l-0-3rem);
  border-radius: var(--l-50pct);
  background: var(--adw-close);
  flex: none;
}
.adw-close .ico {
  width: var(--l-11px);
  height: var(--l-11px);
}

/* Files (Nautilus), list view */

.naut {
  display: grid;
  grid-template-columns: 13rem minmax(0, 1fr);
  min-height: var(--l-21rem);
}

.n-side {
  background: #ebebed;
  border-right: var(--l-1px) solid var(--adw-edge);
}
.n-shead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--l-0-35rem) var(--l-0-4rem);
  font-weight: 700;
}
.n-places {
  list-style: none;
  margin: 0;
  padding: 0 var(--l-0-4rem) var(--l-0-4rem);
}
.n-places li {
  display: flex;
  align-items: center;
  gap: var(--l-0-6rem);
  padding: var(--l-0-35rem) var(--l-0-6rem);
  border-radius: var(--l-6px);
}
.n-places .ico {
  color: var(--dark-gray);
}
.n-places .sep {
  height: var(--l-1px);
  padding: 0;
  margin: var(--l-0-3rem) var(--l-0-2rem);
  background: #d3d3d6;
}

.n-main {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.n-head {
  display: flex;
  align-items: center;
  gap: var(--l-0-2rem);
  padding: var(--l-0-35rem) var(--l-0-5rem);
}
.n-nav {
  color: var(--dim-gray);
}
.n-path {
  flex: 1;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: var(--l-0-35rem);
  height: var(--l-2rem);
  padding: 0 var(--l-0-3rem) 0 var(--l-0-6rem);
  border-radius: var(--l-6px);
  background: var(--adw-button);
  font-weight: 600;
  min-width: 0;
  white-space: nowrap;
}
.n-path .crumb {
  color: var(--adw-dim);
  font-weight: 400;
}
.n-path .slash {
  color: var(--dim-gray);
  font-weight: 400;
}
.n-path .kebab {
  margin-left: auto;
}

.n-files {
  flex: 1;
  padding: 0 var(--l-0-75rem) var(--l-0-75rem);
}
.n-files table {
  width: var(--l-100pct);
  border-collapse: collapse;
  font-size: var(--l-13px);
}
.n-files th {
  text-align: left;
  font-weight: 600;
  color: var(--adw-dim);
  font-size: var(--l-12px);
  padding: var(--l-0-4rem) var(--l-0-5rem);
  border-bottom: var(--l-1px) solid #e6e6e6;
}
.n-files td {
  padding: var(--l-0-35rem) var(--l-0-5rem);
  white-space: nowrap;
}
.n-files td:not(:first-child) {
  color: var(--adw-dim);
}
.n-name {
  display: flex;
  align-items: center;
  gap: var(--l-0-6rem);
}
.n-name .ico {
  width: var(--l-28px);
  height: var(--l-28px);
}

/* Text editor (gedit) */

.ge-head {
  display: flex;
  align-items: center;
  gap: var(--l-0-3rem);
  padding: var(--l-0-35rem) var(--l-0-5rem);
  background: var(--adw-button);
  border-bottom: var(--l-1px) solid var(--adw-edge);
}
.ge-name {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.2;
  font-weight: 600;
}
.ge-name small {
  color: var(--adw-dim);
  font-size: var(--l-11px);
  font-weight: 400;
}
.ge-text {
  padding-block: var(--l-0-5rem);
  font: 400 var(--l-13px) / 1.6 var(--mono);
  min-height: var(--l-16rem);
}
.ge-l {
  display: flex;
  white-space: pre-wrap;
}
.ge-n {
  flex: none;
  width: 3.2ch;
  padding-right: 0.8ch;
  margin-right: 1ch;
  text-align: right;
  color: #757575;
}
.ge-l:first-child {
  background: #f0f3f9;
}
.ge-status {
  display: flex;
  justify-content: flex-end;
  gap: var(--l-1-2rem);
  padding: var(--l-0-3rem) var(--l-0-8rem);
  background: #f6f5f4;
  border-top: var(--l-1px) solid var(--adw-close);
  font-size: var(--l-11-5px);
  color: #5e5e5e;
}

@media (max-width: 599px) {
  .vmm {
    min-width: 0;
  }
  .naut {
    grid-template-columns: minmax(0, 1fr);
  }
  .n-side {
    display: none;
  }
  .gn-desk {
    padding: var(--l-0-75rem) var(--l-0-5rem);
  }
  .n-files td:nth-child(3),
  .n-files th:nth-child(3) {
    display: none;
  }
  .n-head .find,
  .n-path .kebab,
  .n-nav {
    display: none;
  }
  .n-files {
    overflow-x: auto;
  }
}
