:root {
  color-scheme: light;
  --desktop-a: #008080;
  --desktop-b: #008080;
  --paper: #f5f1df;
  --ink: #121417;
  --muted: #5d6568;
  --chrome: #c0c0c0;
  --chrome-light: #ffffff;
  --chrome-dark: #808080;
  --line: #000000;
  --blue: #000080;
  --blue-soft: #dbe7ff;
  --red: #b83030;
  --amber: #d79a1d;
  --green: #197b53;
  --violet: #6950a1;
  --panel: #fffdf2;
  --shadow: rgba(0, 0, 0, 0.35);
  --radius: 6px;
  font-family: Tahoma, "MS Sans Serif", Geneva, Verdana, Arial, sans-serif;
}

* {
  box-sizing: border-box;
}

html,
body,
#app {
  height: 100%;
  min-height: 100%;
}

body {
  margin: 0;
  overflow: hidden;
  color: var(--ink);
  background: var(--desktop-a);
}

button,
input,
textarea,
select {
  font: inherit;
}

button,
a {
  color: inherit;
}

.desktop {
  height: 100vh;
  min-height: 100vh;
  position: relative;
  background: var(--desktop-a);
  overflow: hidden;
}

.desktop::before {
  display: none;
}

.boot-badge {
  position: absolute;
  right: 24px;
  top: 22px;
  color: rgba(255, 255, 255, 0.82);
  text-align: right;
  font-size: 12px;
  line-height: 1.35;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
}

.boot-badge strong {
  display: block;
  font-size: 22px;
  color: #fff;
}

.icon-grid {
  position: absolute;
  inset: 0 0 34px 0;
  display: block;
  z-index: 2;
  pointer-events: none;
}

.desktop-icon {
  position: absolute;
  width: 86px;
  min-height: 78px;
  border: 1px solid transparent;
  background: transparent;
  color: #fff;
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: 8px 4px;
  cursor: default;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.55);
  touch-action: none;
  user-select: none;
  -webkit-user-select: none;
  pointer-events: auto;
  -webkit-user-drag: none;
}

.desktop-icon:hover,
.desktop-icon:focus-visible,
.desktop-icon.dragging {
  outline: none;
  border-color: rgba(255, 255, 255, 0.55);
  background: rgba(0, 0, 128, 0.45);
}

.desktop-icon.dragging {
  z-index: 120;
  opacity: 0.9;
  cursor: move;
}

.desktop-icon span:last-child {
  font-size: 12px;
  line-height: 1.15;
  text-align: center;
  padding: 1px 3px;
}

.desktop-icon img {
  width: 48px;
  height: 48px;
  object-fit: contain;
  filter: drop-shadow(1px 2px 0 rgba(0, 0, 0, 0.4));
  image-rendering: auto;
  pointer-events: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}

.desktop-icon span {
  pointer-events: none;
}

.desktop-readme-note {
  position: absolute;
  right: 18px;
  bottom: 48px;
  width: min(360px, calc(100vw - 36px));
  max-height: min(360px, calc(100vh - 130px));
  z-index: 3;
  overflow: hidden;
  background: var(--chrome);
  border: 1px solid #000;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #808080,
    2px 2px 0 rgba(0, 0, 0, 0.42);
  padding: 3px;
  font-family: "Courier New", Courier, monospace;
}

.desktop-readme-title {
  min-height: 20px;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 2px 5px;
  color: #fff;
  background: linear-gradient(90deg, #000080, #1084d0);
  font-family: Tahoma, "MS Sans Serif", Geneva, Verdana, Arial, sans-serif;
  font-size: 12px;
}

.desktop-readme-title b {
  flex: 1;
}

.desktop-readme-close {
  margin-left: auto;
}

.readme-file-icon {
  width: 14px;
  height: 16px;
  display: inline-block;
  border: 1px solid #111;
  background:
    linear-gradient(135deg, #cfe4ff 0 30%, transparent 30%),
    repeating-linear-gradient(0deg, #fff 0 3px, #dbe8ff 3px 4px);
  box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.35);
}

.desktop-readme-body {
  max-height: calc(min(360px, calc(100vh - 130px)) - 26px);
  overflow: auto;
  padding: 9px 10px;
  border: 2px inset #fff;
  background: #fff;
  color: #111;
  font-size: 12px;
  line-height: 1.35;
}

.desktop-readme-body p {
  margin: 0 0 8px;
}

.desktop-readme-body p:last-child {
  margin-bottom: 0;
}

.desktop-readme-built {
  font-weight: 800;
}

.icon-art {
  width: 42px;
  height: 38px;
  position: relative;
  display: block;
  filter: drop-shadow(1px 2px 0 rgba(0, 0, 0, 0.35));
}

.icon-art::before,
.icon-art::after {
  content: "";
  position: absolute;
}

.icon-ask::before {
  inset: 2px 4px 10px 4px;
  background: #fff;
  border: 2px solid #1d2024;
}

.icon-ask::after {
  width: 15px;
  height: 12px;
  right: 3px;
  bottom: 2px;
  border-left: 8px solid #fff;
  border-bottom: 8px solid transparent;
}

.icon-launch::before {
  left: 11px;
  top: 0;
  width: 19px;
  height: 34px;
  background: #d8362d;
  border: 2px solid #1b1b1b;
  clip-path: polygon(50% 0, 100% 48%, 78% 100%, 22% 100%, 0 48%);
}

.icon-launch::after {
  left: 16px;
  top: 9px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #fff2a6;
  border: 2px solid #1b1b1b;
}

.icon-player::before {
  inset: 4px 1px 3px;
  background: #24262c;
  border: 2px solid #101114;
}

.icon-player::after {
  left: 8px;
  right: 8px;
  bottom: 9px;
  height: 8px;
  background: repeating-linear-gradient(90deg, #2cc36b 0 4px, #f4d24d 4px 8px, #e6573d 8px 12px);
}

.icon-shop::before {
  inset: 8px 3px 4px;
  background: #f4d24d;
  border: 2px solid #171717;
}

.icon-shop::after {
  left: 11px;
  top: 2px;
  width: 20px;
  height: 18px;
  border: 3px solid #171717;
  border-bottom: 0;
  border-radius: 10px 10px 0 0;
}

.icon-explorer::before {
  inset: 8px 2px 3px;
  background: #f0c85d;
  border: 2px solid #161616;
}

.icon-explorer::after {
  left: 5px;
  top: 3px;
  width: 20px;
  height: 10px;
  background: #ffe083;
  border: 2px solid #161616;
  border-bottom: 0;
}

.icon-graph::before {
  inset: 3px;
  border: 2px solid #111;
  background: #f5f5ff;
}

.icon-graph::after {
  left: 8px;
  top: 8px;
  width: 25px;
  height: 20px;
  background:
    radial-gradient(circle at 2px 2px, #d63b3b 0 3px, transparent 4px),
    radial-gradient(circle at 22px 6px, #225fc8 0 3px, transparent 4px),
    radial-gradient(circle at 13px 18px, #208a54 0 3px, transparent 4px),
    linear-gradient(30deg, transparent 0 45%, #111 46% 52%, transparent 53%),
    linear-gradient(145deg, transparent 0 45%, #111 46% 52%, transparent 53%);
}

.icon-rag::before {
  inset: 2px 6px;
  background: #fff;
  border: 2px solid #161616;
}

.icon-rag::after {
  left: 12px;
  top: 9px;
  width: 18px;
  height: 18px;
  border: 3px solid #6950a1;
  border-radius: 50%;
  box-shadow: 0 0 0 4px #fff inset;
}

.icon-disabled::before {
  inset: 5px;
  background: #aeb2b0;
  border: 2px solid #161616;
}

.icon-disabled::after {
  left: 11px;
  top: 10px;
  width: 20px;
  height: 16px;
  border-top: 3px solid #555;
  border-bottom: 3px solid #555;
}

.window {
  position: absolute;
  background: var(--chrome);
  border: 1px solid var(--line);
  box-shadow:
    inset 1px 1px 0 var(--chrome-light),
    inset -1px -1px 0 var(--chrome-dark),
    2px 2px 0 rgba(0, 0, 0, 0.42);
  min-width: 320px;
  min-height: 220px;
  display: grid;
  padding: 3px;
  grid-template-rows: 22px minmax(0, 1fr);
}

.resize-handle {
  position: absolute;
  right: 3px;
  bottom: 3px;
  width: 14px;
  height: 14px;
  cursor: nwse-resize;
  background:
    linear-gradient(135deg, transparent 0 42%, #808080 43% 49%, transparent 50%),
    linear-gradient(135deg, transparent 0 62%, #808080 63% 69%, transparent 70%),
    linear-gradient(135deg, transparent 0 82%, #808080 83% 89%, transparent 90%);
  z-index: 2;
}

.window.active {
  box-shadow:
    inset 1px 1px 0 #ffffff,
    inset -1px -1px 0 #555,
    3px 3px 0 rgba(0, 0, 0, 0.48);
}

.titlebar {
  display: flex;
  align-items: center;
  gap: 5px;
  height: 20px;
  padding: 2px 2px 2px 4px;
  color: #fff;
  background: linear-gradient(90deg, #000080, #1084d0);
  cursor: move;
  user-select: none;
}

.window:not(.active) .titlebar {
  background: linear-gradient(90deg, #808080, #b5b5b5);
}

.titlebar-name {
  font-weight: 700;
  font-size: 12px;
  flex: 1;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.titlebar-icon {
  width: 16px;
  height: 16px;
  object-fit: contain;
  flex: 0 0 auto;
}

.titlebar-controls {
  display: flex;
  align-items: center;
  gap: 2px;
  height: 16px;
  margin-left: auto;
  flex: 0 0 auto;
}

.titlebar-controls .win-control {
  border: 0;
}

.win-control,
.retro-button,
.tab-button,
.task-button,
.start-button,
.icon-button {
  border: 2px solid var(--line);
  background: var(--chrome);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
  cursor: pointer;
}

.win-control {
  position: relative;
  width: 16px;
  height: 14px;
  padding: 0;
  display: block;
  flex: 0 0 16px;
  color: #111;
  line-height: 1;
  background-color: transparent;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 16px 14px;
  box-shadow: none;
  image-rendering: pixelated;
}

.win-control::before,
.win-control::after {
  content: none;
  position: absolute;
  background: #111;
}

.win-minimize {
  background-image: url("./assets/ui/win95-control-min.png");
}

.win-minimize:active {
  background-image: url("./assets/ui/win95-control-min-active.png");
}

.win-maximize {
  background-image: url("./assets/ui/win95-control-max.png");
}

.win-maximize:active {
  background-image: url("./assets/ui/win95-control-max-active.png");
}

.win-restore {
  background-image: url("./assets/ui/win95-control-restore.png");
}

.win-restore:active {
  background-image: url("./assets/ui/win95-control-restore-active.png");
}

.win-close {
  background-image: url("./assets/ui/win95-control-close.png");
}

.win-close:active {
  background-image: url("./assets/ui/win95-control-close-active.png");
}

.win-minimize::before {
  left: 4px;
  right: 4px;
  bottom: 3px;
  height: 2px;
}

.win-maximize::before {
  left: 3px;
  top: 3px;
  width: 8px;
  height: 6px;
  background: transparent;
  border: 1px solid #111;
  border-top-width: 2px;
}

.win-restore::before {
  left: 5px;
  top: 2px;
  width: 7px;
  height: 5px;
  background: var(--chrome);
  border: 1px solid #111;
  border-top-width: 2px;
}

.win-restore::after {
  left: 2px;
  top: 5px;
  width: 7px;
  height: 5px;
  background: var(--chrome);
  border: 1px solid #111;
  border-top-width: 2px;
}

.win-close::before,
.win-close::after {
  left: 3px;
  top: 6px;
  width: 10px;
  height: 2px;
  transform: rotate(45deg);
  transform-origin: center;
}

.win-close::after {
  transform: rotate(-45deg);
}

.retro-button,
.tab-button,
.task-button,
.start-button {
  min-height: 30px;
  padding: 5px 10px;
  font-weight: 700;
}

.retro-button:active,
.tab-button.active,
.task-button.active,
.start-button.active,
.win-control:active {
  box-shadow:
    inset -1px -1px 0 #fff,
    inset 1px 1px 0 var(--chrome-dark);
}

.titlebar-controls .win-control:active {
  box-shadow: none;
}

.window.maximized .resize-handle {
  display: none;
}

.window-body {
  min-height: 0;
  overflow: auto;
  padding: 6px;
  background: var(--chrome);
}

.window[data-app="skills"] .window-body {
  overflow: hidden;
}

.workspace-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 10px;
  min-height: 100%;
}

.workspace-grid.three {
  grid-template-columns: 180px minmax(0, 1fr) 260px;
}

.ask-grid {
  grid-template-columns: minmax(360px, 0.95fr) minmax(320px, 1.05fr);
}

.ask-workspace {
  display: grid;
  gap: 10px;
  min-height: 100%;
}

.ask-search-panel,
.ask-article,
.evidence-dock {
  background: var(--panel);
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #b3a985;
  padding: 12px;
}

.ask-search-panel {
  background: #f4f2e7;
}

.ask-search-panel.is-working {
  background: #f7f3dc;
}

.ask-brand-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.ask-butler {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  color: #fff;
  background: #17408f;
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #7fa1f0,
    inset -1px -1px 0 #09245e;
  font-size: 28px;
  font-weight: 900;
  font-family: Georgia, serif;
}

.ask-kicker {
  color: #5c5f63;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.ask-brand-row h2 {
  margin: 1px 0 0;
  font-size: 20px;
  line-height: 1.15;
}

.ask-search-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 88px;
  gap: 8px;
}

.ask-input {
  width: 100%;
  min-height: 46px;
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 #777,
    inset -1px -1px 0 #fff;
  padding: 9px 11px;
  font-size: 17px;
}

.ask-submit {
  min-height: 46px;
  border: 2px solid var(--line);
  background: var(--chrome);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
  font-weight: 800;
}

.ask-submit:disabled,
.ask-suggestions button:disabled {
  color: #777;
  text-shadow: 1px 1px 0 #fff;
  cursor: wait;
}

.ask-working {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  position: relative;
  margin-top: 10px;
  padding: 8px 10px 16px;
  min-height: 58px;
  overflow: hidden;
  background: #fffef6;
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #8f8f8f;
}

.ask-working b,
.ask-working span {
  display: block;
}

.ask-working b {
  font-size: 13px;
}

.ask-working span {
  color: #3f4247;
  font-size: 12px;
}

.ask-hourglass {
  position: relative;
  width: 24px;
  height: 28px;
  border: 2px solid var(--line);
  background: #dfe8ff;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #789;
  animation: hourglassFlip 1.2s steps(2, end) infinite;
}

.ask-hourglass::before,
.ask-hourglass::after {
  content: "";
  position: absolute;
  left: 5px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
}

.ask-hourglass::before {
  top: 4px;
  border-top: 8px solid #17408f;
}

.ask-hourglass::after {
  bottom: 4px;
  border-bottom: 8px solid #17408f;
}

.ask-progress {
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 6px;
  height: 8px;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: inset 1px 1px 0 #777;
}

.ask-progress::before {
  content: "";
  position: absolute;
  inset: 1px auto 1px 1px;
  width: 36%;
  background: repeating-linear-gradient(
    90deg,
    #17408f 0 8px,
    #2f63c7 8px 16px
  );
  animation: askProgress 1.1s steps(12, end) infinite;
}

.ask-suggestions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.ask-article {
  background: #fffef8;
}

.ask-article.answer-stale {
  position: relative;
  opacity: 0.82;
}

.answer-stale-badge {
  margin: -2px 0 8px;
  padding: 5px 7px;
  color: #333;
  background: #fff7c6;
  border: 1px solid #8c7932;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.ask-article-meta,
.evidence-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.ask-article-meta {
  color: #5c5f63;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.ask-article-meta b {
  color: #17408f;
}

.ask-article-meta .mini-button {
  min-height: 21px;
  padding: 1px 6px;
  text-transform: none;
}

.ask-article h2 {
  margin: 7px 0 5px;
  font-size: 24px;
  line-height: 1.12;
}

.ask-dek {
  max-width: 74ch;
  margin: 0;
  color: #3f4247;
  line-height: 1.42;
}

.ask-takeaway {
  margin: 12px 0;
  padding: 10px;
  background: #fff7c6;
  border: 2px solid #8c7932;
}

.ask-takeaway b,
.ask-takeaway p {
  display: block;
}

.ask-takeaway p {
  margin: 4px 0 0;
  line-height: 1.45;
}

.window[data-app="notes"] .window-body {
  overflow: hidden;
}

.notepad-app {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: 245px minmax(0, 1fr);
  gap: 6px;
}

.notepad-list,
.notepad-editor {
  min-height: 0;
  overflow: hidden;
  padding: 6px;
}

.notepad-list {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 6px;
}

.notepad-toolbar,
.notepad-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
}

.notepad-toolbar .classic-button,
.notepad-menu .classic-button {
  min-height: 25px;
  padding: 3px 8px;
  font-size: 12px;
}

.notepad-count {
  border: 1px solid #808080;
  background: #fff;
  padding: 4px 6px;
  color: var(--muted);
  font-size: 11px;
}

.notepad-note-list {
  overflow: auto;
  border: 1px solid #808080;
  background: #fff;
}

.notepad-note-item {
  width: 100%;
  min-height: 58px;
  display: block;
  border: 0;
  border-bottom: 1px solid #d0d0d0;
  background: #fff;
  padding: 6px;
  text-align: left;
  cursor: pointer;
}

.notepad-note-item.active,
.notepad-note-item:hover {
  color: #fff;
  background: var(--blue);
}

.notepad-note-item b,
.notepad-note-item span,
.notepad-note-item em {
  display: block;
}

.notepad-note-item b {
  font-size: 12px;
}

.notepad-note-item span {
  margin: 2px 0;
  opacity: 0.74;
  font-size: 10px;
}

.notepad-note-item em {
  overflow: hidden;
  color: inherit;
  opacity: 0.82;
  font-size: 11px;
  font-style: normal;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.notepad-editor {
  display: grid;
  grid-template-rows: auto auto auto auto minmax(0, 1fr) auto;
  gap: 5px;
}

.notepad-menu {
  border-bottom: 1px solid #808080;
  padding-bottom: 5px;
}

.notepad-menu span {
  margin-left: auto;
  color: var(--muted);
  font-size: 11px;
}

.notepad-download-strip {
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: 24px;
  border: 1px solid #808080;
  background: #ffffd7;
  padding: 3px 6px;
  font-size: 11px;
}

.notepad-download-strip span {
  color: var(--muted);
}

.notepad-download-strip a {
  overflow: hidden;
  color: #000080;
  font-weight: 800;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.notepad-title-label {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.notepad-title {
  width: 100%;
  box-sizing: border-box;
  min-height: 27px;
  border: 2px solid var(--line);
  background: #fff;
  padding: 3px 6px;
  box-shadow: inset 1px 1px 0 #808080, inset -1px -1px 0 #fff;
  color: #000;
  font: inherit;
  overflow: auto;
  white-space: nowrap;
  outline: none;
}

.notepad-body {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  min-height: 0;
  overflow: auto;
  resize: none;
  border: 2px solid var(--line);
  background: #fff;
  padding: 8px;
  box-shadow: inset 1px 1px 0 #808080, inset -1px -1px 0 #fff;
  font-family: "Courier New", monospace;
  font-size: 13px;
  line-height: 1.45;
  white-space: pre-wrap;
  outline: none;
}

.notepad-title:focus,
.notepad-body:focus {
  outline: 1px dotted #000;
  outline-offset: -4px;
}

.notepad-status {
  min-height: 22px;
  display: flex;
  gap: 0;
  border: 1px solid #808080;
  background: var(--chrome);
}

.notepad-status span {
  padding: 3px 7px;
  border-right: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff;
  color: var(--muted);
  font-size: 11px;
}

.notepad-empty {
  height: 100%;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 8px;
  text-align: center;
}

.notepad-empty h3,
.notepad-empty p {
  margin: 0;
}

.notepad-empty p {
  color: var(--muted);
}

.ask-article-section {
  padding-top: 10px;
  margin-top: 10px;
  border-top: 1px solid #d4ccb0;
}

.ask-article-section h3 {
  margin: 0 0 5px;
  font-size: 15px;
}

.ask-article-section p {
  max-width: 78ch;
  margin: 0;
  line-height: 1.5;
}

.citation-link {
  display: inline-block;
  margin-left: 3px;
  border: 0;
  color: #17408f;
  background: transparent;
  font-size: 12px;
  font-weight: 900;
  text-decoration: underline;
  cursor: pointer;
}

.evidence-dock {
  background: #f7f3df;
}

.evidence-header {
  margin-bottom: 8px;
}

.evidence-header h3 {
  margin: 0;
  font-size: 13px;
  text-transform: uppercase;
}

.evidence-header span {
  color: #5c5f63;
  font-size: 11px;
  font-weight: 800;
}

.rag-status {
  margin: -2px 0 8px;
  color: #5c5f63;
  font-size: 11px;
}

.evidence-list {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.ask-loading {
  margin-top: 0;
}

@keyframes askProgress {
  0% {
    left: 1px;
  }
  50% {
    left: calc(64% - 1px);
  }
  100% {
    left: 1px;
  }
}

@keyframes hourglassFlip {
  50% {
    transform: rotate(180deg);
  }
}

.launch-grid {
  grid-template-columns: minmax(340px, 0.9fr) minmax(320px, 1.1fr);
}

.launch-workbench {
  display: grid;
  gap: 10px;
}

.launch-search-panel,
.launch-plan-article,
.launch-empty {
  background: var(--panel);
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #b3a985;
  padding: 12px;
}

.launch-search-panel {
  background: #f4f2e7;
}

.launch-search-panel.is-working {
  background: #f7f3dc;
}

.launch-badge {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  color: #fff;
  background: #197b53;
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #8fd5b3,
    inset -1px -1px 0 #0b4c32;
  font-size: 16px;
  font-weight: 900;
}

.launch-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 118px;
  gap: 8px;
  align-items: stretch;
}

.launch-input {
  width: 100%;
  min-height: 78px;
  max-height: 160px;
  resize: vertical;
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 #777,
    inset -1px -1px 0 #fff;
  padding: 9px 11px;
  font-size: 15px;
  line-height: 1.35;
}

.launch-submit {
  min-height: 78px;
}

.launch-submit:disabled {
  color: #777;
  text-shadow: 1px 1px 0 #fff;
  cursor: wait;
}

.launch-working {
  background: #fffef2;
}

.launch-empty {
  color: #3f4247;
  line-height: 1.45;
}

.launch-plan-article {
  background: #fffef8;
}

.launch-plan-article.answer-stale {
  position: relative;
  opacity: 0.82;
}

.launch-plan-article h2 {
  margin: 7px 0 5px;
  font-size: 23px;
  line-height: 1.14;
}

.launch-summary {
  max-width: 78ch;
  margin: 0;
  color: #3f4247;
  line-height: 1.45;
}

.launch-command-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0;
}

.launch-command-grid div,
.launch-experiment-card,
.launch-risk-card {
  background: #fff;
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #9a9a9a;
  padding: 8px;
}

.launch-command-grid b,
.launch-command-grid span,
.launch-risk-card b,
.launch-risk-card span {
  display: block;
}

.launch-command-grid b {
  color: #17408f;
  font-size: 12px;
  text-transform: uppercase;
}

.launch-command-grid span,
.launch-risk-card span {
  margin-top: 5px;
  color: #454b4f;
  line-height: 1.35;
}

.launch-plan-section {
  padding-top: 11px;
  margin-top: 11px;
  border-top: 1px solid #d4ccb0;
}

.launch-plan-section h3 {
  margin: 0 0 7px;
  font-size: 15px;
}

.launch-plan-section p {
  max-width: 78ch;
  margin: 0;
  line-height: 1.5;
}

.launch-checklist {
  display: grid;
  gap: 6px;
  padding: 8px;
  background: #fff7c6;
  border: 2px solid #8c7932;
}

.launch-checklist label {
  display: flex;
  gap: 7px;
  line-height: 1.35;
}

.launch-experiment-list,
.launch-timeline,
.launch-risk-grid {
  display: grid;
  gap: 8px;
}

.launch-experiment-card header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.launch-experiment-card ol,
.launch-phase ul,
.launch-kill-list {
  margin: 7px 0 0;
  padding-left: 20px;
  line-height: 1.45;
}

.launch-metric {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: 8px;
  padding: 6px 7px;
  background: #edf7ee;
  border: 1px solid #6ca17f;
}

.launch-metric b {
  color: #197b53;
  font-size: 12px;
  text-transform: uppercase;
}

.launch-phase {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 8px;
  padding: 8px;
  background: #eef3ff;
  border-left: 4px solid #17408f;
}

.launch-week {
  display: grid;
  place-items: center;
  min-height: 36px;
  color: #fff;
  background: #17408f;
  border: 2px solid var(--line);
  box-shadow: inset 1px 1px 0 #7fa1f0, inset -1px -1px 0 #09245e;
  font-size: 12px;
  font-weight: 900;
}

.launch-phase b {
  display: block;
  margin-bottom: 4px;
}

.launch-risk-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.launch-risk-card {
  border-left: 4px solid var(--red);
  background: #fff4ef;
}

.launch-kill-list {
  padding-top: 8px;
  padding-bottom: 8px;
  background: #fffef6;
  border: 2px solid #8d835c;
}

.launch-evidence-dock {
  background: #f7f3df;
}

.launch-source-strip,
.citation-stack {
  display: grid;
  gap: 7px;
}

.launch-source-strip {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.source-card {
  border: 2px solid var(--line);
  background: #fffef6;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #9a9a9a;
  padding: 8px;
  text-align: left;
}

.source-card strong,
.source-card span {
  display: block;
}

.source-card span {
  margin-top: 5px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.25;
}

.win-explorer95 {
  height: 100%;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  gap: 3px;
  color: #000;
  background: #c0c0c0;
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #404040;
  padding: 3px;
}

.explorer-menu95 {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 20px;
  padding: 2px 6px;
  font-size: 12px;
  background: #c0c0c0;
}

.explorer-address95 {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 5px;
  padding: 3px;
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #777;
  font-size: 12px;
}

.explorer-address95 b {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 3px 6px;
  background: #fff;
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #777, inset -1px -1px 0 #fff;
}

.explorer-shell {
  min-height: 0;
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #777, inset -1px -1px 0 #fff;
  overflow: hidden;
}

.explorer-folder-pane,
.explorer-content-pane {
  min-width: 0;
  min-height: 0;
  background: #fff;
}

.explorer-folder-pane {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  border-right: 2px groove #c0c0c0;
}

.explorer-pane-title,
.explorer-content-title {
  min-height: 22px;
  padding: 4px 6px;
  background: #d7d7d7;
  border-bottom: 1px solid #808080;
  font-size: 12px;
}

.explorer-content-pane {
  display: grid;
  grid-template-rows: auto minmax(142px, 0.78fr) minmax(180px, 1fr);
}

.explorer-tree95 {
  overflow: auto;
  padding: 6px 4px 8px;
  font-size: 12px;
}

.tree-node-row95 {
  height: 22px;
  display: flex;
  align-items: center;
  gap: 3px;
}

.tree-label95 {
  flex: 1;
  min-width: 0;
  height: 22px;
  min-height: 22px;
  display: flex;
  align-items: center;
  gap: 4px;
  border: 0;
  background: transparent;
  color: #000;
  text-align: left;
  font: inherit;
  cursor: pointer;
}

.tree-label95 span {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.tree-label95:hover span,
.tree-label95.active span {
  color: #fff;
  background: #000080;
  outline: 1px dotted #fff;
}

.tree-expander,
.tree-spacer {
  width: 11px;
  height: 11px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  background: #fff;
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #777;
  font-style: normal;
  line-height: 1;
  font-size: 10px;
  padding: 0;
  color: #000;
  cursor: pointer;
}

.tree-spacer {
  visibility: hidden;
  cursor: default;
}

.tree-children95 {
  margin-left: 17px;
  padding-left: 8px;
}

.explorer-icon95 {
  position: relative;
  width: 18px;
  height: 18px;
  display: inline-block;
  flex: 0 0 auto;
  color: #000080;
  font-size: 7px;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

img.explorer-icon95 {
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 0;
  max-width: 18px;
  max-height: 18px;
  display: block;
  flex: 0 0 18px;
  object-fit: contain;
  image-rendering: pixelated;
}

.explorer-icon95.explorer-kind-folder::before,
.explorer-icon95.explorer-kind-applications::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 3px;
  width: 8px;
  height: 4px;
  background: #f7dd56;
  border: 1px solid #8a760c;
  border-bottom: 0;
  box-shadow: inset 1px 1px 0 #fff7a9;
}

.explorer-icon95.explorer-kind-folder::after,
.explorer-icon95.explorer-kind-applications::after {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 18px;
  height: 11px;
  background:
    linear-gradient(#fff191 0 1px, transparent 1px),
    linear-gradient(135deg, #ffe871 0 52%, #e6bd29 53% 100%);
  border: 1px solid #8a760c;
  box-shadow: inset 1px 1px 0 #fff8b8, inset -1px -1px 0 #b99918;
}

.explorer-icon95.explorer-kind-applications::after {
  background:
    linear-gradient(90deg, #e43f32 0 50%, #22a23c 50% 100%) 4px 3px / 9px 7px no-repeat,
    linear-gradient(#fff191 0 1px, transparent 1px),
    linear-gradient(135deg, #ffe871 0 52%, #e6bd29 53% 100%);
}

.explorer-icon95.explorer-kind-desktop::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 1px;
  width: 14px;
  height: 11px;
  background:
    linear-gradient(#8fd5e0 0 65%, #208690 65% 100%);
  border: 1px solid #202020;
  box-shadow: inset 1px 1px 0 #e8fbff;
}

.explorer-icon95.explorer-kind-desktop::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 13px;
  width: 7px;
  height: 4px;
  background: #c0c0c0;
  border: 1px solid #404040;
  box-shadow: inset 1px 1px 0 #fff;
}

.explorer-icon95.explorer-kind-computer::before {
  content: "";
  position: absolute;
  left: 1px;
  top: 2px;
  width: 11px;
  height: 10px;
  background: #dadada;
  border: 1px solid #202020;
  box-shadow: inset 2px 2px 0 #7fcbd4, inset -1px -1px 0 #808080;
}

.explorer-icon95.explorer-kind-computer::after {
  content: "";
  position: absolute;
  right: 1px;
  top: 5px;
  width: 6px;
  height: 12px;
  background:
    radial-gradient(circle at 4px 9px, #2bc84a 0 1px, transparent 2px),
    linear-gradient(#e8e8e8, #9a9a9a);
  border: 1px solid #202020;
  box-shadow: inset 1px 1px 0 #fff;
}

.explorer-icon95.explorer-kind-drive::before {
  content: "";
  position: absolute;
  left: 1px;
  top: 5px;
  width: 16px;
  height: 10px;
  background:
    radial-gradient(circle at 13px 7px, #20c541 0 1px, transparent 2px),
    linear-gradient(#f2f2f2 0 45%, #b0b0b0 46% 100%);
  border: 1px solid #202020;
  box-shadow: inset 1px 1px 0 #fff;
}

.explorer-icon95.explorer-kind-drive::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 8px;
  width: 8px;
  height: 1px;
  background: #404040;
  box-shadow: 0 3px 0 #777;
}

.explorer-icon95.explorer-kind-markdown,
.explorer-icon95.explorer-kind-transcript {
  width: 20px;
  height: 22px;
  display: inline-grid;
  place-items: end center;
  padding-bottom: 3px;
  background:
    repeating-linear-gradient(#fff 0 4px, #dcdcdc 4px 5px) 3px 7px / 11px 8px no-repeat,
    #fff;
  border: 1px solid #202020;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #a0a0a0;
}

.explorer-icon95.explorer-kind-markdown::after,
.explorer-icon95.explorer-kind-transcript::after {
  content: "";
  position: absolute;
  right: -1px;
  top: -1px;
  border-left: 6px solid #dcdcdc;
  border-bottom: 6px solid transparent;
  box-shadow: -1px 1px 0 #808080;
}

.file-name95 {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.explorer-file-table {
  overflow: auto;
  background: #fff;
}

.explorer-row95 {
  width: 100%;
  min-height: 24px;
  display: grid;
  grid-template-columns: minmax(210px, 1fr) 72px 140px 88px;
  gap: 8px;
  align-items: center;
  padding: 2px 6px;
  border: 0;
  background: #fff;
  color: #000;
  text-align: left;
  font-size: 12px;
  cursor: pointer;
}

.explorer-row95.header {
  position: sticky;
  top: 0;
  z-index: 2;
  min-height: 22px;
  background: #c0c0c0;
  cursor: default;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #808080;
}

.explorer-row95.header span {
  min-height: 18px;
  padding: 2px 4px;
  border-right: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff;
}

.explorer-row95:not(.header):hover,
.explorer-row95.selected {
  color: #fff;
  background: #000080;
}

.explorer-row95.selected .explorer-icon95.explorer-kind-markdown,
.explorer-row95.selected .explorer-icon95.explorer-kind-transcript,
.explorer-row95:hover .explorer-icon95.explorer-kind-markdown,
.explorer-row95:hover .explorer-icon95.explorer-kind-transcript {
  color: #000080;
}

.mini-app-icon95 {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  image-rendering: pixelated;
  object-fit: contain;
}

.explorer-empty-row {
  padding: 10px;
  font-size: 12px;
}

.explorer-preview95 {
  overflow: auto;
  padding: 8px;
  background: #c0c0c0;
  border-top: 2px groove #c0c0c0;
}

.doc-preview-toolbar95 {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  margin-bottom: 6px;
  padding: 4px;
  background: #c0c0c0;
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #777;
  font-size: 12px;
}

.doc-preview-toolbar95 > span {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.doc-preview-toolbar95 div {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  justify-content: flex-end;
}

.doc-render-paper {
  min-height: 150px;
  padding: 14px 16px;
  background: #fff;
  border: 2px solid #808080;
  box-shadow: inset 1px 1px 0 #777, inset -1px -1px 0 #fff;
}

.doc-render-paper header {
  border-bottom: 3px double #000080;
  margin-bottom: 9px;
  padding-bottom: 7px;
}

.doc-render-paper header span {
  color: #000080;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.doc-render-paper h2 {
  margin: 3px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 20px;
  line-height: 1.16;
}

.doc-render-paper header p,
.doc-lede,
.doc-sections-preview p {
  line-height: 1.45;
}

.doc-sections-preview article {
  padding: 8px 0;
  border-top: 1px solid #d5d5d5;
}

.doc-sections-preview h4 {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0 0 5px;
  font-size: 13px;
}

.doc-sections-preview p {
  margin: 0;
}

.folder-preview95 {
  min-height: 170px;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 8px;
  padding: 18px;
  background: #fff;
  border: 2px solid #808080;
  box-shadow: inset 1px 1px 0 #777, inset -1px -1px 0 #fff;
  text-align: center;
}

.folder-preview95 .explorer-icon95.large {
  width: 48px;
  height: 42px;
  transform: scale(1.9);
  transform-origin: center;
  margin: 8px 0 12px;
}

.folder-preview95 h3,
.folder-preview95 p {
  margin: 0;
}

.folder-preview95 span {
  font-size: 12px;
  color: #303030;
}

.explorer-statusbar95 {
  display: grid;
  grid-template-columns: 105px 130px minmax(0, 1fr);
  min-height: 22px;
  gap: 2px;
  font-size: 12px;
}

.explorer-statusbar95 span {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 3px 5px;
  background: #c0c0c0;
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #777;
}

.ie-shell {
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  gap: 4px;
  height: 100%;
  background: #d6d2bd;
  border: 2px solid #808080;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #777;
  padding: 6px;
}

.ie-toolbar,
.ie-address {
  display: flex;
  align-items: center;
  gap: 5px;
}

.ie-toolbar {
  padding: 4px;
  background: var(--chrome);
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #777;
}

.ie-address {
  font-size: 12px;
}

.ie-address span {
  color: #3f4247;
}

.ie-address b {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 4px 6px;
  background: #fff;
  border: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #777, inset -1px -1px 0 #fff;
}

.ie-page {
  overflow: auto;
  background: #fff;
  border: 2px solid #111;
  box-shadow: inset 1px 1px 0 #777, inset -1px -1px 0 #fff;
  padding: 14px;
}

.ie-page header {
  border-bottom: 3px double #17408f;
  padding-bottom: 9px;
  margin-bottom: 10px;
}

.ie-page header span {
  color: #17408f;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.ie-page h2 {
  margin: 4px 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 25px;
  line-height: 1.15;
}

.ie-page header p,
.ie-summary p,
.ie-transcript p {
  line-height: 1.48;
}

.ie-summary {
  padding: 10px;
  background: #f4f2e7;
  border: 1px solid #b8ad86;
}

.ie-transcript h3 {
  margin: 14px 0 8px;
  color: #17408f;
}

.ie-transcript article {
  padding: 9px 0;
  border-top: 1px solid #d4ccb0;
}

.ie-transcript h4 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 5px;
  font-size: 13px;
}

.ie-transcript p {
  margin: 0;
}

.pane {
  background: var(--panel);
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #b3a985;
  padding: 10px;
  min-width: 0;
}

.pane.tight {
  padding: 0;
}

.pane-title {
  margin: 0 0 8px;
  font-size: 13px;
  text-transform: uppercase;
  color: #303336;
}

.classic-menu {
  height: 22px;
  padding: 3px 8px;
  margin: -2px -2px 6px;
  background: var(--chrome);
  border-bottom: 1px solid #8d8d86;
  font-size: 12px;
}

.player-menu {
  color: #f4f4f4;
  background: #2c2c33;
  border-bottom-color: #050505;
}

.player-toolbar {
  color: #f4f4f4;
  background: #24242b;
  border-color: #070707;
  box-shadow: inset 1px 1px 0 #595963, inset -1px -1px 0 #000;
}

.player-toolbar .tool-button {
  color: #f4f4f4;
  background: #2c2c33;
  border-color: #070707;
  box-shadow: inset 1px 1px 0 #73737d, inset -1px -1px 0 #000;
}

.toolbar-strip {
  min-height: 38px;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 4px;
  margin-bottom: 8px;
  background: #deddd3;
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #8d8d86;
}

.toolbar-spacer {
  flex: 1;
}

.tool-button {
  min-height: 26px;
  padding: 3px 8px;
  border: 1px solid #85857c;
  background: #d6d5cb;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #777;
  font-weight: 700;
  font-size: 12px;
}

.status-chip,
.address-label {
  color: #303336;
  font-size: 12px;
}

.address-bar {
  flex: 1;
  min-width: 120px;
  border: 2px solid var(--line);
  background: #fff;
  padding: 5px 8px;
  box-shadow:
    inset 1px 1px 0 #777,
    inset -1px -1px 0 #fff;
  font-size: 12px;
}

.inspector-note {
  padding: 7px;
  margin: 0 0 8px;
  color: #454b4f;
  background: #f1ecd8;
  border: 1px solid #b9af8e;
  font-size: 12px;
  line-height: 1.35;
}

.form-row {
  display: flex;
  gap: 7px;
  align-items: center;
}

.form-row.stack {
  align-items: stretch;
  flex-direction: column;
}

.text-input,
.textarea,
.select-input {
  width: 100%;
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 #777,
    inset -1px -1px 0 #fff;
  padding: 8px;
  min-height: 32px;
}

.textarea {
  min-height: 112px;
  resize: vertical;
  line-height: 1.35;
}

.answer-box {
  margin-top: 10px;
  background: #fffffb;
  border: 1px solid #c8c0a0;
  padding: 10px;
  line-height: 1.42;
  font-size: 14px;
}

.answer-box p {
  margin: 0 0 8px;
}

.decision-brief {
  padding-top: 0;
}

.brief-header {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin: -10px -10px 10px;
  padding: 6px 9px;
  color: #fff;
  background: #163d8f;
  font-weight: 800;
}

.brief-header b {
  color: #fff3b6;
  font-size: 12px;
}

.recommendation-box {
  display: grid;
  gap: 4px;
  padding: 8px;
  margin: 8px 0;
  background: #fff7c6;
  border: 2px solid #8c7932;
  line-height: 1.35;
}

.query-route {
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto 1fr auto;
  align-items: center;
  gap: 6px;
  margin: 9px 0;
  color: #303336;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.query-route i {
  height: 2px;
  background: repeating-linear-gradient(90deg, #666 0 6px, transparent 6px 10px);
}

.move-list,
.source-list,
.playlist,
.tree-list,
.mini-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.move-list li {
  padding: 8px;
  background: #edf5e9;
  border-left: 4px solid var(--green);
  line-height: 1.35;
}

.source-row,
.episode-row,
.tree-item,
.mini-item {
  border: 1px solid #c7bea0;
  background: #fffef6;
  padding: 8px;
}

.tree-item {
  width: 100%;
  text-align: left;
}

.source-row button,
.episode-row button,
.tree-item button,
.mini-item button {
  width: 100%;
  text-align: left;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
}

.source-row strong,
.episode-row strong,
.mini-item strong {
  display: block;
  line-height: 1.25;
  font-size: 13px;
}

.source-heading {
  display: block;
  margin-top: 3px;
  color: #17408f;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
}

.source-desc {
  display: block;
  color: #454b4f;
  font-size: 12px;
  line-height: 1.35;
  margin-top: 5px;
}

.meta-line {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 8px;
  color: var(--muted);
  font-size: 11px;
  margin-top: 5px;
}

.tag-row {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 7px;
}

.tag {
  border: 1px solid #9b936f;
  background: #f3ead1;
  color: #2d2b24;
  padding: 2px 6px;
  font-size: 11px;
  line-height: 1.2;
}

.wizard-summary {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.wizard-summary div {
  background: #fff;
  border: 2px solid var(--line);
  padding: 8px;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #9a9a9a;
}

.wizard-summary b,
.wizard-summary span {
  display: block;
}

.wizard-summary span {
  color: #454b4f;
  margin-top: 5px;
  line-height: 1.3;
}

.checklist-box {
  display: grid;
  gap: 6px;
  background: #fffef6;
  border: 2px solid #8d835c;
  padding: 8px;
}

.checklist-box label {
  line-height: 1.32;
}

.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 9px;
}

.tab-button {
  min-height: 28px;
  padding: 4px 8px;
  font-size: 12px;
}

.metric-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.metric-box {
  border: 2px solid var(--line);
  background: #fff;
  padding: 8px;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #9a9a9a;
}

.metric-box b {
  display: block;
  font-size: 18px;
}

.metric-box span {
  color: var(--muted);
  font-size: 11px;
}

.launch-plan {
  display: grid;
  gap: 8px;
}

.plan-field {
  border-left: 4px solid var(--blue);
  background: #eef3ff;
  padding: 8px;
  line-height: 1.35;
}

.plan-field.green {
  border-left-color: var(--green);
  background: #edf7ee;
}

.plan-field.amber {
  border-left-color: var(--amber);
  background: #fff3d5;
}

.plan-field.red {
  border-left-color: var(--red);
  background: #ffe7e0;
}

.window[data-app="player"] {
  background: #191a24;
  border-color: #050506;
  box-shadow:
    inset 1px 1px 0 #6e7080,
    inset -1px -1px 0 #050506,
    3px 3px 0 rgba(0, 0, 0, 0.55);
}

.window[data-app="player"] .titlebar {
  background: linear-gradient(90deg, #202042, #343f87 52%, #797634);
}

.window-body.winamp {
  background: #101117;
  color: #d8d6bc;
  border-color: #070707;
  padding: 5px;
  box-shadow:
    inset 1px 1px 0 #343641,
    inset -1px -1px 0 #000;
}

.winamp-app {
  display: grid;
  grid-template-columns: 330px minmax(300px, 1fr);
  gap: 6px;
  min-height: 100%;
}

.winamp-left-stack {
  display: grid;
  gap: 6px;
  align-content: start;
}

.winamp-main-unit,
.winamp-eq-unit,
.winamp-playlist,
.winamp-transcript-popup {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.08), transparent 22%),
    linear-gradient(135deg, #424452, #242630 46%, #111218);
  border: 2px solid #050505;
  box-shadow:
    inset 1px 1px 0 #767887,
    inset -1px -1px 0 #000;
  padding: 7px;
}

.winamp-chrome-title,
.playlist-titlebar,
.winamp-eq-title,
.winamp-transcript-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 19px;
  margin-bottom: 5px;
  padding: 2px 5px;
  color: #f1ec99;
  background:
    linear-gradient(90deg, #12131b, #282d45 58%, #525022);
  border: 1px solid #050505;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.winamp-face {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 6px;
}

.winamp-side-leds {
  display: grid;
  place-items: center;
  color: #6b6f7b;
  background: #151620;
  border: 1px solid #050505;
  font-size: 8px;
  font-weight: 900;
}

.winamp-lcd {
  min-width: 0;
  padding: 6px;
  color: #4cff40;
  background: #040704;
  border: 2px solid #020302;
  box-shadow:
    inset 1px 1px 0 #111f12,
    inset -1px -1px 0 #000,
    inset 0 0 18px rgba(76, 255, 64, 0.14);
}

.winamp-time-line,
.winamp-meta-led {
  display: flex;
  align-items: center;
  gap: 7px;
}

.winamp-play-led {
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #1a5d18;
}

.winamp-play-led.on {
  border-left-color: #2cff20;
  filter: drop-shadow(0 0 4px rgba(44, 255, 32, 0.75));
}

.winamp-elapsed {
  color: #39ff2f;
  font-family: "Courier New", monospace;
  font-size: 27px;
  letter-spacing: 0;
  line-height: 1;
}

.winamp-track-no {
  margin-left: auto;
  color: #f4df45;
  font-size: 10px;
  font-weight: 900;
}

.winamp-title-marquee {
  margin: 4px 0;
  padding: 2px 4px;
  overflow: hidden;
  white-space: nowrap;
  color: #f4df45;
  background: #061006;
  border: 1px solid #183818;
  font-size: 11px;
  text-transform: uppercase;
}

.winamp-title-marquee strong {
  display: inline-block;
  min-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.winamp-meta-led {
  color: #67dd60;
  font-size: 9px;
  text-transform: uppercase;
}

.winamp-meta-led span {
  padding: 1px 4px;
  background: #101510;
  border: 1px solid #264526;
}

.winamp-visualizer {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  height: 38px;
  margin-top: 5px;
  padding: 3px;
  background: #050605;
  border: 1px solid #1b301b;
}

.winamp-visualizer span {
  width: 8px;
  min-height: 3px;
  background:
    linear-gradient(
      180deg,
      #ffea45 0 20%,
      #ff9d2b 20% 36%,
      #39ff2f 36% 100%
    );
  border: 1px solid #102e10;
  transition: height 70ms linear;
  transform-origin: bottom;
}

.winamp-visualizer.playing span {
  box-shadow: 0 0 4px rgba(57, 255, 47, 0.28);
}

.winamp-visualizer span.hot {
  background:
    linear-gradient(
      180deg,
      #fff276 0 22%,
      #ff9d2b 22% 40%,
      #39ff2f 40% 100%
    );
  box-shadow: 0 0 6px rgba(255, 234, 69, 0.45);
}

.winamp-seek {
  width: 100%;
  height: 12px;
  margin-top: 5px;
  accent-color: #f4df45;
}

.winamp-control-strip {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 7px;
}

.winamp-transport-button,
.winamp-shuffle,
.winamp-eq-preset,
.winamp-transcript-title button {
  min-height: 22px;
  color: #e8e2b3;
  background: linear-gradient(#5d6172, #282b35);
  border: 1px solid #050505;
  box-shadow:
    inset 1px 1px 0 #989aa5,
    inset -1px -1px 0 #000;
  font-weight: 800;
}

.winamp-transport-button {
  position: relative;
  width: 32px;
  height: 24px;
  padding: 0;
  display: grid;
  place-items: center;
  border-radius: 2px;
}

.winamp-transport-button.eject {
  margin-left: 4px;
}

.winamp-transport-button:active {
  box-shadow:
    inset 1px 1px 0 #000,
    inset -1px -1px 0 #777889;
  transform: translate(1px, 1px);
}

.winamp-icon {
  position: relative;
  display: block;
  width: 17px;
  height: 14px;
}

.winamp-icon::before,
.winamp-icon::after,
.winamp-icon i::before,
.winamp-icon i::after {
  content: "";
  position: absolute;
  display: block;
}

.winamp-icon.play::before {
  left: 5px;
  top: 1px;
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 9px solid #d9d6b5;
  filter: drop-shadow(1px 1px 0 #000);
}

.winamp-icon.pause::before,
.winamp-icon.pause::after {
  top: 1px;
  width: 4px;
  height: 12px;
  background: #d9d6b5;
  box-shadow: 1px 1px 0 #000;
}

.winamp-icon.pause::before {
  left: 4px;
}

.winamp-icon.pause::after {
  right: 4px;
}

.winamp-icon.stop::before {
  left: 4px;
  top: 2px;
  width: 10px;
  height: 10px;
  background: #d9d6b5;
  box-shadow: 1px 1px 0 #000;
}

.winamp-icon.prev::before,
.winamp-icon.prev::after,
.winamp-icon.next::before,
.winamp-icon.next::after {
  top: 2px;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  filter: drop-shadow(1px 1px 0 #000);
}

.winamp-icon.prev::before,
.winamp-icon.prev::after {
  border-right: 7px solid #d9d6b5;
}

.winamp-icon.prev::before {
  left: 3px;
}

.winamp-icon.prev::after {
  left: 8px;
}

.winamp-icon.prev i::before,
.winamp-icon.next i::before {
  top: 2px;
  width: 2px;
  height: 10px;
  background: #d9d6b5;
  box-shadow: 1px 1px 0 #000;
}

.winamp-icon.prev i::before {
  left: 1px;
}

.winamp-icon.next::before,
.winamp-icon.next::after {
  border-left: 7px solid #d9d6b5;
}

.winamp-icon.next::before {
  left: 2px;
}

.winamp-icon.next::after {
  left: 7px;
}

.winamp-icon.next i::before {
  right: 1px;
}

.winamp-icon.eject::before {
  left: 4px;
  top: 1px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 7px solid #d9d6b5;
  filter: drop-shadow(1px 1px 0 #000);
}

.winamp-icon.eject::after {
  left: 3px;
  bottom: 2px;
  width: 12px;
  height: 3px;
  background: #d9d6b5;
  box-shadow: 1px 1px 0 #000;
}

.winamp-shuffle {
  padding: 2px 7px;
  font-size: 10px;
}

.winamp-shuffle.active {
  color: #101014;
  background: #f4df45;
}

.winamp-slider-row {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 38px 58px;
  gap: 5px;
  align-items: center;
  margin-top: 7px;
  color: #bfc5bd;
  font-size: 10px;
  font-weight: 800;
}

.winamp-slider-row input {
  accent-color: #f4df45;
}

.winamp-duration {
  color: #66d85f;
}

.native-player {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.winamp-eq-grid {
  display: grid;
  grid-template-columns: 38px repeat(10, minmax(18px, 1fr));
  gap: 5px;
  align-items: end;
  min-height: 118px;
  color: #dcd7ad;
  background: #1a1b25;
  border: 1px solid #050505;
  padding: 7px 6px 5px;
}

.eq-preamp,
.eq-band {
  display: grid;
  justify-items: center;
  gap: 4px;
  font-size: 9px;
  font-weight: 800;
}

.eq-preamp input,
.eq-band input {
  writing-mode: vertical-lr;
  direction: rtl;
  width: 18px;
  height: 74px;
  accent-color: #f2d230;
}

.eq-preamp b,
.eq-band b {
  color: #8df484;
  font-size: 9px;
}

.eq-band span {
  color: #f1ec99;
}

.empty-state.dark {
  color: #d6d6dc;
  background: #222229;
  border-color: #3b3b45;
}

.topic-switcher {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 6px;
}

.player-topic-switcher {
  max-height: 56px;
  overflow: auto;
}

.winamp-playlist .tab-button {
  min-height: 22px;
  padding: 2px 6px;
  color: #cfd5c8;
  background: #22232b;
  border-color: #050505;
}

.winamp-playlist .tab-button.active {
  color: #101014;
  background: #9dffb4;
}

.winamp-find-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 4px;
  margin-bottom: 6px;
}

.winamp-find-form input {
  min-height: 24px;
  color: #39ff2f;
  background: #050805;
  border: 1px solid #050505;
  box-shadow: inset 1px 1px 0 #000, inset -1px -1px 0 #334033;
  padding: 3px 5px;
  font-size: 11px;
}

.winamp-find-form button {
  color: #f1ec99;
  background: #22232b;
  border: 1px solid #050505;
  font-weight: 900;
}

.winamp-rec-box {
  display: grid;
  gap: 3px;
  margin-bottom: 6px;
  padding: 5px;
  color: #39ff2f;
  background: #040704;
  border: 1px solid #050505;
  font-size: 11px;
}

.winamp-rec-box.loading {
  color: #f1ec99;
}

.winamp-rec-box b {
  color: #f1ec99;
  text-transform: uppercase;
}

.winamp-rec-box button {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 3px 6px;
  color: #39ff2f;
  background: transparent;
  border: 0;
  padding: 3px 2px;
  text-align: left;
}

.winamp-rec-box button:hover {
  color: #101014;
  background: #39ff2f;
}

.winamp-rec-box strong {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.winamp-rec-box em {
  grid-column: 2;
  color: inherit;
  font-size: 10px;
  font-style: normal;
  line-height: 1.25;
}

.playlist-current {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 5px;
  padding: 3px 5px;
  color: #101014;
  background: #39ff2f;
  border: 1px solid #050505;
  font-size: 11px;
  font-weight: 900;
}

.winamp-playlist .playlist {
  gap: 2px;
  max-height: 450px;
  overflow: auto;
  padding-right: 2px;
  background: #050805;
  border: 1px solid #050505;
}

.episode-row {
  background: #050805;
  border-color: #050505;
  padding: 0;
}

.episode-row button {
  width: 100%;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 52px;
  gap: 6px;
  align-items: center;
  color: #39ff2f;
  border: 0;
  background: transparent;
  padding: 3px 6px;
  font-family: "Courier New", monospace;
  font-size: 11px;
  text-align: left;
}

.episode-row strong {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.playlist-index,
.playlist-duration {
  color: #f1ec99;
  font-size: 11px;
  font-weight: 800;
}

.episode-row.active button {
  color: #101014;
  background: #1e31dc;
}

.episode-row.active .playlist-index,
.episode-row.active .playlist-duration {
  color: #fff;
}

.winamp-transcript-popup {
  color: #d6d6dc;
}

.transcript-now {
  display: grid;
  gap: 3px;
  margin-bottom: 6px;
  color: #101014;
  background: #f1ec99;
  border: 1px solid #050505;
  padding: 6px;
  font-size: 11px;
}

.transcript-lines {
  display: grid;
  gap: 5px;
  max-height: 210px;
  overflow: auto;
}

.transcript-lines article {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 6px;
  padding: 5px;
  background: #111218;
  border: 1px solid #050505;
}

.transcript-lines button,
.ie-transcript h4 button {
  color: #39ff2f;
  background: #050805;
  border: 1px solid #233823;
  font-size: 10px;
  font-weight: 900;
}

.transcript-lines p {
  margin: 0;
  line-height: 1.35;
  font-size: 11px;
}

.lennyzon95 {
  min-height: 100%;
  color: #111;
  background: #fff;
  font-family: Georgia, "Times New Roman", serif;
  border: 1px solid #7f7f7f;
}

.lz-tabs {
  display: flex;
  align-items: end;
  gap: 2px;
  min-height: 28px;
  padding: 0 8px;
  color: #fff;
  background: #006699;
  border-bottom: 4px solid #004b73;
}

.lz-tabs b,
.lz-tabs button {
  min-height: 24px;
  padding: 5px 10px 4px;
  border: 1px solid #6d5f23;
  border-bottom: 0;
  color: #122;
  background: #efe8b5;
  border-radius: 7px 7px 0 0;
  font: 700 10px Tahoma, sans-serif;
  text-transform: uppercase;
  cursor: pointer;
}

.lz-tabs b,
.lz-tabs button.active {
  color: #fff;
  background: #006699;
  border-color: #006699;
}

.lz-masthead {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px 12px;
  border-bottom: 1px solid #e3dfbd;
  background: #fff;
}

.lz-box-logo {
  display: grid;
  place-items: center;
  width: 52px;
  height: 38px;
  color: #6a3900;
  background: #f0b72e;
  border: 2px solid #8a5b00;
  transform: rotate(-8deg);
  box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.14);
  font: 900 15px Tahoma, sans-serif;
}

.lz-logo-copy strong {
  display: block;
  font: 700 32px Arial, Helvetica, sans-serif;
  letter-spacing: -1px;
}

.lz-logo-copy span {
  display: block;
  color: #cc6600;
  font: 700 12px Arial, Helvetica, sans-serif;
}

.lz-masthead i {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  margin-left: auto;
  color: #8a4d00;
  border: 2px solid #d89c22;
  border-radius: 50%;
  font: 700 11px Arial, sans-serif;
  text-align: center;
}

.lz-layout {
  display: grid;
  grid-template-columns: 128px minmax(0, 1fr) 178px;
  gap: 10px;
  padding: 8px;
}

.lz-left,
.lz-right {
  display: grid;
  align-content: start;
  gap: 9px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
}

.lz-main {
  min-width: 0;
  padding: 2px 0 18px;
}

.lz-side-box,
.lz-top-list,
.lz-selected,
.lz-ad-box {
  border: 1px solid #9d9d73;
  background: #ffffec;
}

.lz-side-box h3,
.lz-top-list h3,
.lz-selected h3 {
  margin: 0;
  padding: 3px 5px;
  color: #fff;
  background: #006699;
  font: 700 11px Arial, Helvetica, sans-serif;
  text-transform: uppercase;
}

.lz-search-box form {
  display: grid;
  gap: 4px;
  padding: 5px;
}

.lz-search-box input {
  width: 100%;
  min-width: 0;
  border: 1px solid #666;
  padding: 2px 3px;
  font: 11px Arial, sans-serif;
}

.lz-search-box button,
.lz-browse button,
.lz-community button,
.lz-row-links button,
.lz-top-list button,
.lz-selected button,
.lz-row-title,
.lz-cover-button {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #003399;
  text-align: left;
  text-decoration: underline;
  cursor: pointer;
  font: inherit;
}

.lz-search-box button {
  width: max-content;
  padding: 2px 8px;
  color: #111;
  background: #ffcc33;
  border: 1px solid #7a6200;
  text-decoration: none;
  font-weight: 700;
}

.lz-browse {
  list-style: square;
  margin: 0;
  padding: 6px 6px 7px 18px;
}

.lz-browse li + li {
  margin-top: 5px;
}

.lz-browse b {
  display: block;
}

.lz-browse span {
  display: block;
  color: #333;
  font-size: 10px;
  line-height: 1.15;
  text-decoration: none;
}

.lz-community {
  padding-bottom: 6px;
}

.lz-community a,
.lz-community button {
  display: block;
  margin: 5px 6px 0;
}

.lz-hello {
  display: grid;
  gap: 5px;
  margin-bottom: 12px;
  color: #cc6600;
  font-family: Arial, Helvetica, sans-serif;
}

.lz-hello b {
  font-size: 16px;
}

.lz-hello span {
  color: #222;
  line-height: 1.3;
}

.lz-results-bar {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 4px 0;
  border-bottom: 1px solid #c8c18f;
  color: #003399;
  font-family: Arial, Helvetica, sans-serif;
}

.lz-results-bar strong {
  font-size: 13px;
  text-decoration: underline;
}

.lz-results-bar span {
  color: #555;
  font-size: 11px;
}

.lz-results-bar em {
  color: #8a4d00;
  font-size: 11px;
  font-style: normal;
}

.lz-results-bar button {
  margin-left: auto;
  padding: 2px 7px;
  color: #111;
  background: #ffcc33;
  border: 1px solid #7a6200;
  font: 700 11px Arial, Helvetica, sans-serif;
  cursor: pointer;
}

.lz-products {
  display: grid;
  gap: 10px;
  padding-top: 8px;
}

.lz-product-row {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 10px;
  padding: 4px 4px 10px;
  border-bottom: 1px solid #ece6bf;
}

.lz-product-row.active {
  background: #fff8ce;
  outline: 1px solid #e1b336;
}

.lz-cover-button {
  display: block;
  text-decoration: none;
}

.product-image-frame.lz-cover {
  width: 62px;
  height: 84px;
  margin: 0 auto;
  border-width: 1px;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.18);
}

.product-image-frame.lz-detail-cover {
  width: 76px;
  height: 104px;
  margin: 6px auto;
  border-width: 1px;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.2);
}

.lz-product-copy {
  min-width: 0;
  line-height: 1.22;
}

.lz-row-title {
  display: inline;
  color: #003399;
  font: 700 15px Georgia, "Times New Roman", serif;
}

.lz-product-copy p {
  margin: 3px 0;
  font-size: 12px;
}

.lz-row-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 5px 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
}

.lz-row-links a {
  color: #003399;
  font-weight: 700;
}

.lz-topic-line {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  color: #555;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
}

.lz-topic-line span {
  padding: 1px 3px;
  background: #ece8c4;
  border: 1px solid #c5bc7f;
}

.lz-topic-line i {
  font-style: normal;
}

.lz-ad-box {
  display: grid;
  gap: 5px;
  padding: 7px;
  background: #fff;
  text-align: center;
}

.lz-ad-box b {
  color: #003399;
}

.lz-top-list h3 {
  color: #003399;
  background: #efe8b5;
}

.lz-top-list ol {
  margin: 0;
  padding: 6px 6px 7px 24px;
}

.lz-top-list li + li {
  margin-top: 4px;
}

.lz-selected {
  display: grid;
  gap: 5px;
  padding-bottom: 7px;
  text-align: center;
}

.lz-selected b,
.lz-selected span,
.lz-selected p {
  display: block;
  margin: 0 6px;
}

.lz-selected a {
  display: block;
  margin: 3px 8px;
  padding: 4px;
  color: #111;
  background: #ffcc33;
  border: 1px solid #7a6200;
  font-weight: 700;
  text-decoration: none;
}

.lz-selected button {
  margin: 0 auto;
  text-align: center;
}

.lz-selected p {
  color: #333;
  font-size: 10px;
  line-height: 1.25;
}

.store-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 286px;
  gap: 10px;
  min-height: 100%;
}

.store-header {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: -2px -2px 8px;
  padding: 8px 10px;
  color: #111;
  background: linear-gradient(90deg, #f6c949, #e89f22);
  border: 2px solid #111;
  box-shadow:
    inset 1px 1px 0 #fff7c8,
    inset -1px -1px 0 #905d10;
}

.store-header strong {
  font-size: 22px;
}

.store-header span {
  font-size: 12px;
}

.store-promo {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin: 0 0 10px;
  padding: 8px;
  background: #e8f0ff;
  border: 1px solid #8fa0c8;
  line-height: 1.3;
}

.store-promo span {
  color: #3d4750;
  font-size: 12px;
}

.product-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(145px, 1fr));
  gap: 10px;
}

.product-tile {
  border: 2px solid var(--line);
  background: #fffdf2;
  padding: 8px;
  cursor: pointer;
  min-height: 208px;
  display: grid;
  grid-template-rows: 118px auto;
  gap: 8px;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #c8bea0;
}

.product-tile.active {
  outline: 3px solid var(--amber);
}

.product-image-frame,
.cover {
  width: 82px;
  height: 112px;
  margin: 0 auto;
}

.product-image-frame {
  display: block;
  overflow: hidden;
  background-color: #deddd3;
  background-image: var(--fallback-image);
  background-size: cover;
  background-position: center;
  border: 2px solid #141414;
  box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.22);
}

.product-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cover {
  display: grid;
  place-items: center;
  text-align: center;
  padding: 8px;
  color: #fff;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.22) 0 10px, transparent 10px),
    hsl(var(--hue), 58%, 39%);
  border: 2px solid #141414;
  box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.22);
  font-weight: 800;
  font-size: 11px;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.cover.media {
  width: 96px;
  background:
    radial-gradient(circle at 50% 34%, rgba(255, 255, 255, 0.22) 0 22px, transparent 23px),
    hsl(var(--hue), 54%, 34%);
}

.cover.tool {
  background:
    repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 0 5px, transparent 5px 10px),
    hsl(var(--hue), 58%, 35%);
}

.product-title {
  font-weight: 800;
  line-height: 1.2;
  font-size: 13px;
}

.product-creator {
  color: var(--muted);
  line-height: 1.25;
  font-size: 12px;
  margin-top: 4px;
}

.detail-cover {
  width: 132px;
  height: 184px;
  margin-bottom: 10px;
}

.detail-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin: 10px 0;
}

.cart-box {
  display: grid;
  gap: 5px;
  margin: 10px 0;
  padding: 8px;
  background: #fff7d8;
  border: 2px solid #8c7932;
}

.cart-meter {
  height: 13px;
  background: #fff;
  border: 1px solid #111;
  box-shadow: inset 1px 1px 0 #777;
}

.cart-meter i {
  display: block;
  height: 100%;
  background: repeating-linear-gradient(90deg, #ffb02e 0 8px, #ffe69a 8px 12px);
}

.file-table {
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 #777,
    inset -1px -1px 0 #fff;
  overflow: auto;
  max-height: 430px;
}

.file-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 86px 86px;
  gap: 8px;
  align-items: center;
  min-height: 28px;
  padding: 4px 7px;
  border: 0;
  border-bottom: 1px solid #ece7d3;
  background: #fff;
  text-align: left;
  cursor: pointer;
  font-size: 12px;
}

.file-row.header {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #d6d5cb;
  border-bottom: 2px solid #85857c;
  font-weight: 800;
  cursor: default;
}

.file-row.selected,
.file-row:hover:not(.header) {
  background: #163d8f;
  color: #fff;
}

.graph-wrap {
  min-height: 380px;
  background: #10151c;
  border: 2px solid #06080a;
  overflow: hidden;
}

.graph-svg {
  display: block;
  width: 100%;
  height: 420px;
}

.graph-edge {
  stroke: rgba(255, 255, 255, 0.22);
  stroke-width: 1;
}

.graph-node {
  cursor: pointer;
}

.graph-label {
  fill: #f4f7ff;
  font-size: 11px;
  pointer-events: none;
  paint-order: stroke;
  stroke: #10151c;
  stroke-width: 4px;
}

.embedding-app {
  height: 100%;
  min-height: 510px;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  color: #111;
  background: var(--chrome);
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
  overflow: hidden;
}

.embedding-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 7px 8px;
  background: #d6d2c8;
  border-bottom: 2px solid var(--line);
}

.embedding-title strong {
  display: block;
  font-size: 14px;
}

.embedding-title span,
.embedding-toolbar span {
  color: #4f5357;
  font-size: 11px;
}

.embedding-view-tabs,
.embedding-toolbar {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
}

.embedding-view-tabs button,
.embedding-toolbar button {
  min-height: 25px;
  border: 2px solid var(--line);
  background: var(--chrome);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
  font-weight: 700;
  cursor: pointer;
}

.embedding-view-tabs button {
  padding: 3px 9px;
}

.embedding-view-tabs button.active,
.embedding-toolbar button.active {
  color: #fff;
  background: var(--blue);
  box-shadow:
    inset -1px -1px 0 #7288d8,
    inset 1px 1px 0 #000044;
}

.embedding-toolbar {
  padding: 5px 8px;
  border-bottom: 1px solid #808080;
  background: #c8c8c8;
}

.embedding-toolbar button {
  padding: 2px 8px;
  font-size: 11px;
}

.embedding-toolbar span {
  margin-left: auto;
}

.embedding-stage {
  min-height: 0;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 6px;
  padding: 7px;
}

.embedding-screen {
  position: relative;
  min-height: 390px;
  overflow: hidden;
  background: #071113;
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #062f35,
    inset -1px -1px 0 #000;
  cursor: grab;
}

.embedding-screen.dragging {
  cursor: grabbing;
}

.embedding-svg {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 390px;
  font-family: "Courier New", monospace;
}

.embedding-bg {
  fill: transparent;
}

.embedding-edge text {
  fill: #d8fffb;
  font-size: 11px;
  paint-order: stroke;
  stroke: #071113;
  stroke-width: 3px;
}

.embedding-edge line {
  stroke: #e8fff9;
  stroke-width: 1;
  opacity: 0.17;
}

.embedding-edge.selected line {
  stroke: #fff1a8;
  stroke-width: 1.8;
  opacity: 0.72;
}

.embedding-edge text {
  fill: #fff1a8;
  font-size: 10px;
}

.embedding-point {
  cursor: pointer;
}

.embedding-halo {
  fill: url("#embeddingGlow");
  opacity: 0.15;
}

.embedding-dot {
  fill: var(--point-color);
  stroke: #ffffff;
  stroke-width: 1;
  filter: drop-shadow(0 0 4px rgba(255, 255, 255, 0.22));
}

.embedding-point.selected .embedding-dot {
  stroke: #fff1a8;
  stroke-width: 3;
}

.embedding-point.major .embedding-label,
.embedding-point:hover .embedding-label,
.embedding-point.selected .embedding-label {
  opacity: 1;
}

.embedding-label {
  fill: #f6fffe;
  font-size: 11px;
  opacity: 0;
  pointer-events: none;
  paint-order: stroke;
  stroke: #071113;
  stroke-width: 4px;
}

.embedding-popover {
  position: absolute;
  width: min(340px, 44%);
  max-height: 86%;
  overflow: auto;
  transform: translate(-8%, -4%);
  padding: 9px;
  background: #fffef0;
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #b1ac88,
    4px 4px 0 rgba(0, 0, 0, 0.36);
  z-index: 3;
}

.embedding-popover-close {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 19px;
  height: 17px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 2px solid var(--line);
  background: var(--chrome);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
  font: 700 11px Tahoma, sans-serif;
  cursor: pointer;
}

.embedding-popover header {
  display: grid;
  gap: 4px;
  margin-bottom: 7px;
  padding-right: 24px;
}

.embedding-popover header span,
.embedding-clusters span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.embedding-popover header span {
  width: max-content;
  max-width: 100%;
  color: #4b4d52;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.embedding-popover i,
.embedding-clusters i {
  display: inline-block;
  width: 10px;
  height: 10px;
  flex: 0 0 auto;
  background: var(--cluster-color);
  border: 1px solid #000;
}

.embedding-popover h3 {
  margin: 0;
  font-size: 15px;
  line-height: 1.15;
}

.embedding-popover p {
  margin: 0 0 8px;
  color: #33383b;
  font-size: 12px;
  line-height: 1.35;
}

.embedding-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 7px;
}

.embedding-meta b {
  padding: 3px 5px;
  background: #e6e2cf;
  border: 1px solid #9a9580;
  font-size: 11px;
}

.embedding-examples {
  display: grid;
  gap: 4px;
  margin-top: 8px;
}

.embedding-examples button {
  display: grid;
  gap: 2px;
  width: 100%;
  padding: 6px;
  text-align: left;
  background: #fff;
  border: 1px solid #777;
  cursor: pointer;
}

.embedding-examples strong,
.embedding-examples span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.embedding-examples span {
  color: #5d6568;
  font-size: 11px;
}

.embedding-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 9px;
}

.embedding-actions .retro-button {
  min-height: 26px;
  padding: 3px 8px;
  font-size: 11px;
}

.embedding-dock {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  align-items: start;
  min-height: 58px;
}

.embedding-clusters {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.embedding-clusters span,
.embedding-readout span {
  min-height: 22px;
  padding: 4px 6px;
  background: #e4e1d8;
  border: 1px solid #858585;
  font-size: 11px;
}

.embedding-clusters b {
  color: #4f5357;
}

.embedding-readout {
  display: grid;
  gap: 3px;
  min-width: 190px;
}

.embedding-readout b {
  color: var(--blue);
}

.embedding-empty {
  display: grid;
  place-content: center;
  gap: 8px;
  min-height: 360px;
  margin: 8px;
  padding: 20px;
  text-align: center;
  background: #fffef0;
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #b1ac88;
}

.embedding-empty p {
  max-width: 420px;
  margin: 0;
  color: #4f5357;
}

.embedding-progress {
  display: block;
  width: 260px;
  height: 18px;
  overflow: hidden;
  background: #fff;
  border: 2px solid #000;
  box-shadow: inset 1px 1px 0 #808080;
}

.embedding-progress::before {
  content: "";
  display: block;
  width: 42%;
  height: 100%;
  background: repeating-linear-gradient(90deg, #000080 0 12px, #1084d0 12px 24px);
  animation: askProgress 1s steps(8) infinite;
}

.prim9-app {
  min-height: 100%;
  display: grid;
  grid-template-rows: 30px minmax(0, 1fr);
  color: #bdf8a4;
  background: #080b08;
  border: 2px solid #050505;
  box-shadow: inset 1px 1px 0 #334333, inset -1px -1px 0 #000;
}

.prim9-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 6px 10px;
  color: #dfffbd;
  background: #101910;
  border-bottom: 1px solid #2f552f;
  font-family: "Courier New", monospace;
  font-size: 12px;
}

.prim9-header span {
  color: #78c56f;
}

.prim9-layout {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 295px;
}

.prim9-screen {
  min-width: 0;
  overflow: hidden;
  background:
    linear-gradient(rgba(58, 255, 112, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(58, 255, 112, 0.035) 1px, transparent 1px),
    #050705;
  background-size: 18px 18px;
  border-right: 1px solid #234523;
}

.prim9-svg {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 470px;
  font-family: "Courier New", monospace;
}

.prim9-bg {
  fill: transparent;
}

.prim9-gridline,
.prim9-axis,
.prim9-trace {
  fill: none;
  stroke: #41ff6a;
  stroke-width: 1.1;
  opacity: 0.42;
}

.prim9-axis.faint,
.prim9-trace {
  opacity: 0.18;
}

.prim9-point circle {
  fill: #72ff70;
  stroke: #e9ffd8;
  stroke-width: 0.7;
}

.prim9-point circle.hot {
  fill: #ffef72;
}

.prim9-point text,
.prim9-readout,
.prim9-corner {
  fill: #dfffbd;
  font-size: 11px;
  paint-order: stroke;
  stroke: #050705;
  stroke-width: 3px;
}

.prim9-controls {
  overflow: auto;
  padding: 10px;
  background: #0d120d;
  border-left: 1px solid #050505;
  font-family: "Courier New", monospace;
}

.prim9-controls h3 {
  margin: 0 0 8px;
  color: #ffef72;
  font-size: 12px;
  text-transform: uppercase;
}

.prim9-coordinate-bank,
.prim9-mode-buttons {
  display: grid;
  gap: 5px;
  margin-bottom: 12px;
}

.prim9-mode-buttons button {
  min-height: 25px;
  color: #bdf8a4;
  background: #111b11;
  border: 1px solid #356c35;
  box-shadow: inset 1px 1px 0 #264826, inset -1px -1px 0 #000;
  font: inherit;
}

.prim9-mode-buttons button.active {
  color: #050705;
  background: #72ff70;
}

.prim9-ops {
  grid-template-columns: 1fr 1fr;
}

.prim9-variable {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px;
  padding: 3px;
  background: #050705;
  border: 1px solid #254c25;
}

.prim9-variable.active {
  border-color: #ffef72;
  box-shadow: inset 0 0 0 1px #5f5d25;
}

.prim9-var-name {
  min-width: 0;
  display: grid;
  gap: 2px;
  color: #bdf8a4;
  background: transparent;
  border: 0;
  padding: 0;
  font: inherit;
  text-align: left;
}

.prim9-var-name b {
  color: #ffef72;
  font-size: 11px;
}

.prim9-var-name span {
  color: #78c56f;
  font-size: 9px;
}

.prim9-axis-picks {
  display: flex;
  gap: 3px;
}

.prim9-axis-picks button {
  width: 21px;
  height: 21px;
  color: #bdf8a4;
  background: #111b11;
  border: 1px solid #356c35;
  box-shadow: inset 1px 1px 0 #264826, inset -1px -1px 0 #000;
  font: 700 10px "Courier New", monospace;
}

.prim9-axis-picks button.active {
  color: #050705;
  background: #ffef72;
  border-color: #e9ffd8;
}

.prim9-stats {
  display: grid;
  gap: 6px;
  margin-bottom: 12px;
}

.prim9-stats span,
.prim9-observations button {
  display: block;
  color: #bdf8a4;
  background: #050705;
  border: 1px solid #2f552f;
  padding: 7px;
}

.prim9-stats b,
.prim9-observations strong {
  color: #ffef72;
}

.prim9-observations {
  display: grid;
  gap: 6px;
}

.prim9-observations button {
  width: 100%;
  text-align: left;
  cursor: pointer;
}

.prim9-point {
  cursor: pointer;
}

.prim9-point.masked {
  opacity: 0.18;
  pointer-events: none;
}

.prim9-point.pinned circle {
  fill: #ffef72;
  stroke: #fff;
  stroke-width: 2;
}

.prim9-ghost {
  fill: #183618;
  opacity: 0.35;
}

.prim9-mask-slab {
  fill: rgba(255, 239, 114, 0.08);
  stroke: #ffef72;
  stroke-width: 1;
  stroke-dasharray: 6 5;
}

.prim9-label {
  fill: #dfffbd;
  font: 11px "Courier New", monospace;
  paint-order: stroke;
  stroke: #050705;
  stroke-width: 3px;
  pointer-events: none;
}

.prim9-pinned {
  display: grid;
  gap: 4px;
  margin-bottom: 12px;
  padding: 8px;
  color: #050705;
  background: #ffef72;
  border: 1px solid #e9ffd8;
}

.prim9-pinned span {
  color: #283428;
  font-size: 11px;
}

.prim9-coordinate-readout {
  display: grid;
  gap: 3px;
  margin-top: 6px;
}

.prim9-coordinate-readout span {
  position: relative;
  min-height: 15px;
  overflow: hidden;
  padding: 2px 4px;
  color: #dfffbd;
  background: #050705;
  border: 1px solid #3b5f3b;
}

.prim9-coordinate-readout i {
  position: absolute;
  inset: 0 auto 0 0;
  z-index: 0;
  display: block;
  min-width: 2px;
  background: rgba(65, 255, 106, 0.45);
}

.prim9-coordinate-readout span {
  isolation: isolate;
}

.prim9-observations span {
  display: block;
  margin-top: 4px;
  color: #78c56f;
  font-size: 11px;
}

.rag-pipeline {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 8px;
}

.pipeline-step {
  border: 2px solid var(--line);
  background: #fff;
  padding: 10px;
  min-height: 130px;
}

.pipeline-step b {
  display: block;
  margin-bottom: 8px;
}

.pipeline-step p {
  margin: 0;
  color: var(--muted);
  line-height: 1.35;
  font-size: 13px;
}

.window[data-app="rag"] .window-body {
  overflow: hidden;
}

.rag-console-app {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) minmax(136px, 0.68fr) 20px;
  gap: 6px;
}

.rag-command-pane {
  padding: 6px;
}

.rag-command-row {
  display: grid;
  grid-template-columns: auto minmax(220px, 1fr) 78px;
  align-items: center;
  gap: 6px;
}

.rag-command-row label {
  font-weight: 800;
  font-size: 12px;
}

.rag-command-row input {
  height: 28px;
  border: 2px solid var(--line);
  background: #fff;
  padding: 3px 6px;
  box-shadow: inset 1px 1px 0 #808080, inset -1px -1px 0 #fff;
}

.rag-switchboard {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 6px;
}

.rag-toggle {
  min-height: 24px;
  border: 2px solid var(--line);
  background: var(--chrome);
  padding: 2px 7px;
  font-size: 11px;
  font-weight: 800;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #808080;
}

.rag-toggle.active {
  color: #fff;
  background: var(--blue);
  box-shadow: inset 1px 1px 0 #000, inset -1px -1px 0 #bfc6ff;
}

.rag-switch-divider {
  width: 2px;
  min-height: 24px;
  background: #808080;
  box-shadow: 1px 0 0 #fff;
}

.rag-examples {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 6px;
}

.rag-health-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
}

.rag-metric {
  min-height: 42px;
  border: 2px solid var(--line);
  background: #fff;
  padding: 5px 8px;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #808080;
}

.rag-metric b {
  display: block;
  font-size: 16px;
}

.rag-metric span {
  display: block;
  color: var(--muted);
  font-size: 11px;
}

.rag-workbench {
  min-height: 0;
  display: grid;
  grid-template-columns: 255px minmax(0, 1fr);
  gap: 6px;
}

.rag-flow,
.rag-results,
.rag-inspector {
  min-height: 0;
  overflow: hidden;
  padding: 6px;
}

.rag-flow {
  overflow: auto;
}

.rag-pane-heading {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  margin-bottom: 5px;
  padding-bottom: 4px;
  border-bottom: 1px solid #808080;
}

.rag-pane-heading b {
  font-size: 12px;
}

.rag-pane-heading span {
  color: var(--muted);
  font-size: 11px;
}

.rag-step-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 4px;
}

.rag-step-list li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 5px;
  border: 1px solid #808080;
  background: #fff;
  padding: 4px;
}

.rag-step-list li > span {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  color: #fff;
  background: var(--blue);
  font-weight: 800;
  font-size: 11px;
}

.rag-step-list b,
.rag-step-list em,
.rag-step-list p {
  display: block;
}

.rag-step-list b {
  font-size: 11px;
}

.rag-step-list em {
  color: #1a5c3d;
  font-size: 10px;
  font-style: normal;
}

.rag-step-list p {
  margin: 2px 0 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.25;
}

.rag-corpus-health {
  margin-top: 6px;
  display: grid;
  gap: 2px;
  color: var(--muted);
  font-size: 10px;
}

.rag-corpus-health b {
  color: var(--ink);
  font-size: 11px;
}

.rag-table {
  height: calc(100% - 26px);
  min-height: 0;
  overflow: auto;
  border: 1px solid #808080;
  background: #fff;
}

.rag-table-head,
.rag-table-row {
  display: grid;
  grid-template-columns: 44px minmax(180px, 1.25fr) 70px minmax(160px, 1fr);
  align-items: stretch;
}

.rag-table-head {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--chrome);
  border-bottom: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff;
  font-size: 11px;
  font-weight: 800;
}

.rag-table-head span,
.rag-table-row > span {
  padding: 4px 5px;
  border-right: 1px solid #b0b0b0;
}

.rag-table-row {
  width: 100%;
  min-height: 44px;
  border: 0;
  border-bottom: 1px solid #d0d0d0;
  background: #fff;
  text-align: left;
  font-size: 11px;
  cursor: pointer;
}

.rag-table-row.active,
.rag-table-row:hover {
  color: #fff;
  background: var(--blue);
}

.rag-source-cell b,
.rag-source-cell em {
  display: block;
}

.rag-source-cell em {
  margin-top: 2px;
  color: inherit;
  opacity: 0.75;
  font-style: normal;
}

.rag-score {
  font-family: "Courier New", monospace;
  font-weight: 800;
}

.rag-why {
  line-height: 1.25;
}

.rag-empty,
.rag-inspector-empty {
  padding: 12px;
  color: var(--muted);
}

.rag-inspector {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}

.rag-inspector-tabs {
  display: flex;
  gap: 4px;
  margin-bottom: 5px;
}

.rag-inspector-tabs .tab-button {
  min-height: 24px;
  padding: 3px 8px;
  text-transform: capitalize;
}

.rag-evidence-detail {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 150px;
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 6px;
  overflow: hidden;
}

.rag-evidence-detail h3 {
  margin: 0 0 4px;
  font-size: 14px;
}

.rag-evidence-detail p {
  max-height: 66px;
  margin: 0;
  overflow: auto;
  line-height: 1.35;
  font-size: 12px;
}

.rag-actions {
  display: grid;
  align-content: start;
  gap: 5px;
}

.rag-packet-list {
  grid-column: 1 / -1;
  display: flex;
  gap: 4px;
  overflow: auto;
}

.rag-packet-list span {
  flex: 0 0 auto;
  border: 1px solid #8f8566;
  background: #fff9cc;
  padding: 3px 5px;
  font-size: 11px;
}

.rag-score-detail {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr) minmax(180px, 0.8fr);
  gap: 8px;
  min-height: 0;
}

.rag-score-total {
  border: 2px solid var(--line);
  background: #fff;
  padding: 10px;
}

.rag-score-total b {
  display: block;
  font-size: 24px;
}

.rag-score-total span {
  color: var(--muted);
  font-size: 11px;
}

.rag-score-bars {
  display: grid;
  gap: 4px;
}

.rag-score-bars span {
  position: relative;
  display: grid;
  grid-template-columns: 86px minmax(80px, 1fr) 44px;
  align-items: center;
  gap: 5px;
  font-size: 11px;
}

.rag-score-bars i {
  height: 12px;
  display: block;
  background: #1a5c3d;
  border: 1px solid #0d2a1d;
}

.rag-score-bars em {
  font-style: normal;
  text-align: right;
  font-family: "Courier New", monospace;
}

.rag-why-list {
  display: grid;
  gap: 4px;
  overflow: auto;
}

.rag-why-list span {
  border: 1px solid #808080;
  background: #fff;
  padding: 4px 5px;
  font-size: 11px;
}

.rag-pre {
  height: 100%;
  margin: 0;
  overflow: auto;
  border: 1px solid #808080;
  background: #fff;
  padding: 7px;
  font-family: "Courier New", monospace;
  font-size: 11px;
  line-height: 1.35;
  white-space: pre-wrap;
}

.rag-statusbar {
  display: flex;
  align-items: center;
  gap: 0;
  min-height: 20px;
  border: 1px solid #808080;
  background: var(--chrome);
  overflow: hidden;
}

.rag-statusbar span {
  padding: 2px 7px;
  border-right: 1px solid #808080;
  box-shadow: inset 1px 1px 0 #fff;
  font-size: 11px;
  white-space: nowrap;
}

.rag-error {
  border-color: var(--red);
  background: #fff2f2;
}

.classic-button {
  min-height: 28px;
  border: 2px solid var(--line);
  background: var(--chrome);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
  padding: 4px 10px;
  font-weight: 700;
  cursor: pointer;
}

.classic-button:active {
  box-shadow:
    inset -1px -1px 0 #fff,
    inset 1px 1px 0 var(--chrome-dark);
}

.skill-studio {
  display: grid;
  grid-template-columns: minmax(315px, 0.72fr) minmax(0, 1.28fr);
  gap: 10px;
  min-height: 100%;
  height: 100%;
}

.skill-browser,
.skill-workbench {
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow: hidden;
  background: var(--chrome);
}

.skill-workbench {
  overflow: auto;
}

.skill-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px;
  border: 2px solid var(--line);
  background: #e7e7e7;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
}

.skill-brand img {
  width: 42px;
  height: 42px;
  image-rendering: pixelated;
}

.skill-brand h3 {
  margin: 0;
  font-size: 18px;
  line-height: 1.05;
}

.skill-brand span,
.skill-search-label {
  color: #333;
  font-size: 12px;
  line-height: 1.25;
}

.skill-search-label {
  font-weight: 800;
}

.skill-search {
  width: 100%;
  min-height: 28px;
  padding: 4px 6px;
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 var(--chrome-dark),
    inset -1px -1px 0 #fff;
}

.skill-category-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.skill-category-strip span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 5px;
  border: 1px solid #7d7d7d;
  background: #fffdf0;
  font-size: 11px;
  line-height: 1.2;
}

.skill-category-strip b {
  color: var(--blue);
}

.skill-list {
  flex: 1;
  min-height: 0;
  overflow: auto;
  display: grid;
  align-content: start;
  gap: 6px;
  padding: 6px;
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 var(--chrome-dark),
    inset -1px -1px 0 #fff;
}

.skill-row {
  width: 100%;
  min-height: 104px;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
  align-items: start;
  gap: 5px 9px;
  padding: 8px 7px;
  border: 1px solid #d5d5d5;
  background: #fff;
  text-align: left;
  cursor: pointer;
}

.skill-row:hover,
.skill-row:focus-visible {
  border-color: #000080;
  outline: 1px dotted #111;
}

.skill-row.active {
  color: #fff;
  border-color: #fff;
  background: #000080;
}

.skill-row-icon {
  grid-row: 1 / span 2;
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  align-self: start;
  border: 2px solid var(--line);
  background: #fff1a8;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #987a20;
  color: #111;
  font-weight: 800;
  font-size: 11px;
}

.skill-row-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.skill-row-copy b,
.skill-row-copy em,
.skill-row i {
  display: block;
}

.skill-row-copy b {
  overflow: hidden;
  overflow-wrap: anywhere;
  line-height: 1.2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.skill-row-copy em {
  overflow: hidden;
  color: var(--muted);
  font-style: normal;
  line-height: 1.3;
  font-size: 11px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.skill-row.active .skill-row-copy em {
  color: #dce6ff;
}

.skill-row i {
  grid-column: 2;
  justify-self: start;
  color: #164c85;
  font-style: normal;
  font-size: 10px;
  line-height: 1.2;
  padding: 2px 5px;
  border: 1px solid #8aa5bd;
  background: #eef6ff;
}

.skill-row.active i {
  color: #fff6ae;
  border-color: #c8d4ff;
  background: rgba(255, 255, 255, 0.12);
}

.skill-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding: 7px;
  border: 2px solid var(--line);
  background: #f0f0f0;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
}

.skill-title-block {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.skill-title-block img {
  width: 32px;
  height: 32px;
  image-rendering: pixelated;
}

.skill-title-block h2 {
  margin: 0;
  font-size: 19px;
  line-height: 1.05;
}

.skill-title-block p {
  margin: 4px 0 0;
  color: #333;
  line-height: 1.3;
}

.skill-copybar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 4px;
  flex: 0 0 350px;
}

.skill-copybar .classic-button {
  white-space: nowrap;
}

.skill-meta,
.skill-default {
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 var(--chrome-dark),
    inset -1px -1px 0 #fff;
}

.skill-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  padding: 5px;
  font-size: 12px;
}

.skill-meta span {
  padding: 2px 5px;
  border: 1px solid #777;
  background: #eef3ff;
}

.skill-meta code {
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 2px 4px;
  font-family: Consolas, Monaco, "Courier New", monospace;
  color: #111;
}

.skill-default {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 6px;
  padding: 6px;
  line-height: 1.35;
}

.skill-default b {
  color: #000080;
}

.skill-tabs {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  min-height: 31px;
  padding-top: 2px;
  border-bottom: 2px solid var(--line);
}

.skill-tabs button {
  min-height: 29px;
  padding: 4px 12px;
  border: 2px solid var(--line);
  border-bottom: 0;
  background: #d5d5d5;
  box-shadow: inset 1px 1px 0 #fff;
  font-weight: 800;
  cursor: pointer;
}

.skill-tabs button.active {
  min-height: 31px;
  background: #fff;
  transform: translateY(2px);
}

.skill-tabs span {
  margin-left: auto;
  padding: 3px 6px;
  border: 1px solid #5b7d3b;
  background: #edffd8;
  color: #214d08;
  font-size: 12px;
}

.skill-panel {
  flex: 1;
  min-height: 0;
  overflow: auto;
  padding: 10px;
  border: 2px solid var(--line);
  border-top: 0;
  background: #fff;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #9a9a9a;
}

.skill-description {
  margin-bottom: 10px;
  padding: 8px;
  border: 1px solid #888;
  background: #fffdf0;
}

.skill-description h3,
.skill-inspect-grid h3,
.skill-export-head h3,
.skill-export-grid h4,
.skill-preview-grid h4 {
  margin: 0 0 6px;
}

.skill-description p {
  margin: 0;
  line-height: 1.38;
}

.skill-inspect-grid,
.skill-export-grid,
.skill-preview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.75fr);
  gap: 10px;
}

.skill-inspect-grid section,
.skill-export-grid > div,
.skill-preview-grid section,
.skill-install-note {
  min-width: 0;
  border: 2px solid var(--line);
  background: #f8f8f8;
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #b0b0b0;
  padding: 8px;
}

.skill-steps,
.skill-checklist,
.skill-install-steps,
.skill-preview-grid ul {
  margin: 0;
  padding-left: 22px;
  line-height: 1.38;
}

.skill-steps li,
.skill-checklist li,
.skill-install-steps li,
.skill-preview-grid li {
  margin-bottom: 7px;
}

.skill-checklist {
  padding-left: 0;
  list-style: none;
}

.skill-checklist li {
  position: relative;
  padding-left: 22px;
}

.skill-checklist li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1px;
  width: 13px;
  height: 13px;
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 var(--chrome-dark),
    inset -1px -1px 0 #fff;
}

.skill-install-note {
  display: grid;
  gap: 4px;
  margin-top: 10px;
  background: #eef8ff;
  line-height: 1.35;
}

.skill-install-note b {
  color: #000080;
}

.skill-export-head p {
  margin: 0 0 8px;
  color: var(--muted);
}

.skill-export-text,
.skill-code {
  width: 100%;
  min-height: 315px;
  margin: 0;
  padding: 8px;
  border: 2px solid var(--line);
  background: #fff;
  box-shadow:
    inset 1px 1px 0 var(--chrome-dark),
    inset -1px -1px 0 #fff;
  color: #111;
  font-family: Consolas, Monaco, "Courier New", monospace;
  font-size: 12px;
  line-height: 1.35;
  white-space: pre-wrap;
  resize: vertical;
}

.skill-code {
  overflow: auto;
  min-height: 160px;
}

.skill-file-list {
  display: grid;
  gap: 5px;
  margin-bottom: 10px;
}

.skill-file-row {
  display: grid;
  grid-template-columns: 20px 94px minmax(0, 1fr);
  gap: 6px;
  align-items: center;
  padding: 5px;
  border: 1px solid #777;
  background: #fff;
}

.skill-file-row code {
  min-width: 0;
  overflow-wrap: anywhere;
  font-family: Consolas, Monaco, "Courier New", monospace;
}

.skill-file-row em {
  grid-column: 3;
  color: var(--muted);
  font-style: normal;
  font-size: 12px;
}

.file-glyph {
  width: 16px;
  height: 18px;
  border: 1px solid #111;
  background:
    linear-gradient(135deg, #d7e8ff 0 28%, transparent 28%),
    repeating-linear-gradient(0deg, #fff 0 4px, #dce8ff 4px 5px);
  box-shadow: 1px 1px 0 #8a8a8a;
}

.skill-empty {
  padding: 12px;
  border: 1px dashed #777;
  color: var(--muted);
  background: #fffdf0;
  line-height: 1.35;
}

.skill-empty.large {
  min-height: 100%;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 8px;
  text-align: center;
}

.skill-empty.large img {
  width: 56px;
  height: 56px;
}

.breakout-header {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: -2px -2px 8px;
  padding: 5px 9px;
  color: #dff8ff;
  background:
    linear-gradient(180deg, #283555 0, #07101f 45%, #02040a 100%);
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #7a8dc6,
    inset -1px -1px 0 #000,
    0 0 14px rgba(76, 166, 255, 0.18);
  font-weight: 800;
  font-family: "Courier New", monospace;
  text-transform: uppercase;
}

.breakout-logo {
  color: #f3fbff;
  font-size: 18px;
  letter-spacing: 0;
  text-shadow:
    1px 1px 0 #234ed4,
    2px 2px 0 #0a1b62,
    0 0 9px #61d7ff;
}

.breakout-header .retro-button {
  min-height: 26px;
  padding: 3px 8px;
}

.breakout-layout {
  display: grid;
  grid-template-columns: minmax(430px, 1fr) 265px;
  gap: 10px;
  min-height: calc(100% - 52px);
}

.breakout-cabinet {
  min-width: 0;
  padding: 10px;
  background:
    radial-gradient(circle at 18% 0, rgba(97, 215, 255, 0.2), transparent 26%),
    linear-gradient(90deg, #0d1022, #242944 4%, #111522 8%, #07080e 50%, #111522 92%, #242944 96%, #0d1022);
  border: 3px solid #050505;
  box-shadow:
    inset 3px 3px 0 #7e84b0,
    inset -3px -3px 0 #000,
    0 0 22px rgba(33, 87, 255, 0.24);
}

.breakout-stage {
  display: block;
  width: 100%;
  min-height: 440px;
  background:
    radial-gradient(circle at 50% 110%, rgba(47, 117, 255, 0.18), transparent 34%),
    #000;
  border: 3px solid #050505;
  box-shadow:
    inset 18px 0 22px rgba(130, 128, 255, 0.42),
    inset -18px 0 22px rgba(130, 128, 255, 0.42),
    inset 0 0 34px rgba(64, 180, 255, 0.1);
  cursor: default;
  touch-action: none;
  user-select: none;
}

.breakout-bg {
  fill: #000;
}

.breakout-rail {
  fill: url("#breakoutRail");
}

.breakout-score-watermark {
  fill: #cfefff;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: -1px;
  opacity: 0.85;
  paint-order: stroke;
  stroke: #1237a8;
  stroke-width: 2px;
}

.breakout-brick-svg {
  transition: opacity 0.12s ease-out, transform 0.12s ease-out;
}

.breakout-brick-main {
  fill: var(--brick-fill);
  stroke: rgba(255, 255, 255, 0.65);
  stroke-width: 1.6;
  filter:
    drop-shadow(0 0 4px color-mix(in srgb, var(--brick-fill) 70%, transparent))
    drop-shadow(2px 2px 0 rgba(0, 0, 0, 0.78));
}

.breakout-brick-shine {
  fill: rgba(255, 255, 255, 0.72);
}

.breakout-brick-power-dot {
  fill: #fff;
  stroke: #000;
  stroke-width: 1;
}

.breakout-brick-svg.damaged .breakout-brick-main {
  opacity: 0.58;
  stroke: #fff;
  stroke-dasharray: 3 2;
}

.breakout-brick-svg.cleared {
  opacity: 0;
  pointer-events: none;
  transform: scale(0.82);
  transform-box: fill-box;
  transform-origin: center;
}

.breakout-drop rect {
  fill: var(--drop-color);
  stroke: #fff;
  stroke-width: 1.5;
  filter: drop-shadow(0 0 7px var(--drop-color));
}

.breakout-drop text {
  fill: #050505;
  font-family: "Arial Black", Impact, sans-serif;
  font-size: 9px;
  font-weight: 900;
  text-anchor: middle;
  paint-order: stroke;
  stroke: rgba(255, 255, 255, 0.4);
  stroke-width: 0.6px;
}

.breakout-ball-halo {
  fill: rgba(255, 255, 255, 0.28);
  filter: drop-shadow(0 0 8px #fff);
}

.breakout-ball {
  fill: #f5f7ff;
  stroke: #b9dcff;
  stroke-width: 1.4;
  filter:
    drop-shadow(0 0 5px #f6fbff)
    drop-shadow(0 0 10px #5cbcff);
}

.breakout-ball-shine {
  fill: #ffffff;
}

.breakout-paddle {
  fill: url("#breakoutPaddle");
  stroke: #92f6ff;
  stroke-width: 1.5;
  filter: drop-shadow(0 0 8px #61d7ff);
}

.breakout-paddle-cap {
  fill: #2ff8ff;
  stroke: #081026;
  stroke-width: 1.5;
  filter: drop-shadow(0 0 7px #2ff8ff);
}

.breakout-status {
  fill: #e7f9ff;
  font-family: "Courier New", monospace;
  font-size: 13px;
  font-weight: 800;
  paint-order: stroke;
  stroke: #000;
  stroke-width: 4px;
}

.breakout-lives {
  color: #ff3bca;
  letter-spacing: 2px;
  text-shadow: 0 0 7px #ff3bca;
}

.breakout-side {
  overflow: auto;
  color: #dff8ff;
  background:
    linear-gradient(180deg, #111827, #05070d);
  border-color: #000;
  box-shadow: inset 1px 1px 0 #47546c, inset -1px -1px 0 #000;
}

.breakout-side .pane-title {
  color: #fff;
  border-color: #1d79ff;
  background: #050810;
  text-shadow: 0 0 7px #25bfff;
}

.breakout-mini-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
  margin-bottom: 8px;
}

.breakout-mini-stats span {
  min-width: 0;
  padding: 6px;
  border: 1px solid #2e5fab;
  background: #000;
  color: #9fdfff;
  font-size: 11px;
  text-transform: uppercase;
}

.breakout-mini-stats b {
  display: block;
  color: #fff;
  font-size: 14px;
}

.breakout-level-picker {
  display: grid;
  gap: 4px;
  margin-bottom: 8px;
}

.breakout-level-picker button {
  min-height: 28px;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  border: 1px solid #2e5fab;
  background: #070d1c;
  color: #dff8ff;
  box-shadow: inset 1px 1px 0 #324b76;
  text-align: left;
}

.breakout-level-picker button.active {
  color: #000;
  background: #ffe845;
  box-shadow: 0 0 9px rgba(255, 232, 69, 0.58);
}

.breakout-level-picker b {
  display: grid;
  place-items: center;
  min-height: 20px;
  background: #000;
  color: #fff;
}

.breakout-level-picker button.active b {
  background: #111;
}

.growth-clue-panel {
  display: grid;
  gap: 5px;
}

.growth-clue-panel div,
.decoded-loop {
  display: grid;
  gap: 4px;
  padding: 7px;
  background: #070d1c;
  border: 1px solid #2e5fab;
  line-height: 1.35;
}

.breakout-power-list div {
  grid-template-columns: minmax(0, 1fr) 44px;
  align-items: center;
  border-color: var(--power-color);
  box-shadow: inset 3px 0 0 var(--power-color);
}

.breakout-power-list b {
  color: #fff;
}

.breakout-power-list span {
  display: grid;
  place-items: center;
  min-height: 18px;
  color: #000;
  background: var(--power-color);
  font-size: 10px;
  font-weight: 900;
}

.decoded-loop span {
  color: #afc8ef;
}

.decoded-loop {
  margin-top: 10px;
  background: #02050c;
  border-color: #314e86;
}

.decoded-loop b {
  color: #fff;
}

.recycle-bin-app {
  min-height: 100%;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 8px;
  background: var(--chrome);
}

.bin-toolbar {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 7px;
  border: 2px solid var(--line);
  background: #ededed;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #808080;
}

.bin-toolbar div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.bin-toolbar b,
.bin-toolbar span {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.bin-toolbar span {
  color: var(--muted);
  font-size: 11px;
}

.bin-table {
  max-height: none;
  min-height: 0;
}

.bin-header,
.bin-row {
  grid-template-columns: minmax(180px, 1.25fr) minmax(160px, 0.9fr) 104px 128px;
}

.bin-header {
  background: #d6d5cb;
  border-bottom: 2px solid #85857c;
  font-weight: 800;
}

.bin-row {
  cursor: default;
}

.bin-row > span {
  min-width: 0;
}

.bin-row b,
.bin-row em {
  display: block;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.bin-row em {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}

.bin-row:hover em {
  color: #dce6ff;
}

.bin-actions {
  display: flex;
  gap: 4px;
}

.bin-empty {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  min-height: 240px;
  border: 2px inset #fff;
  background: #fff;
  text-align: center;
}

.bin-empty img {
  width: 58px;
  height: 58px;
  object-fit: contain;
}

.bin-empty span {
  color: var(--muted);
  font-size: 12px;
}

.mini-button {
  min-height: 22px;
  padding: 2px 5px;
  border: 1px solid var(--line);
  background: var(--chrome);
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 var(--chrome-dark);
  font-size: 11px;
}

.taskbar {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 34px;
  background: var(--chrome);
  border-top: 2px solid #fff;
  box-shadow:
    inset 0 1px 0 #fff,
    inset 0 2px 0 #dfdfdf;
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr) 58px 88px;
  align-items: center;
  gap: 4px;
  padding: 3px;
  z-index: 1000;
  overflow: hidden;
}

.start-button {
  width: 78px;
  min-width: 78px;
  height: 28px;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 8px 2px 5px;
  border: 0;
  background: transparent url("./assets/ui/win95-start-button.png") 0 0 / 78px 28px no-repeat;
  color: #111;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  box-shadow: none;
  image-rendering: pixelated;
}

.start-button.active,
.start-button:active {
  padding: 1px 7px 1px 6px;
  background-image: url("./assets/ui/win95-start-button-active.png");
  box-shadow: none;
}

.start-mark {
  position: relative;
  width: 20px;
  height: 17px;
  display: inline-block;
  flex: 0 0 20px;
  background: transparent url("./assets/ui/win95-start-flag.png") 0 0 / 20px 17px no-repeat;
  image-rendering: pixelated;
}

.start-mark i {
  display: none;
}

.task-buttons {
  display: flex;
  align-items: center;
  gap: 3px;
  min-width: 0;
  height: 100%;
  overflow: auto;
}

.shell-switch {
  width: 58px;
  min-width: 58px;
  height: 27px;
  padding: 2px 7px;
  border: 2px solid var(--line);
  background: var(--chrome);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 var(--chrome-dark);
  font-size: 12px;
  font-weight: 700;
}

.shell-switch:active {
  box-shadow:
    inset -1px -1px 0 #fff,
    inset 1px 1px 0 var(--chrome-dark);
}

.tray-clock {
  width: 88px;
  min-width: 88px;
  height: 27px;
  padding: 2px 6px;
  border: 1px solid #808080;
  background: var(--chrome);
  box-shadow:
    inset 1px 1px 0 #808080,
    inset -1px -1px 0 #fff;
  font-size: 12px;
  line-height: 21px;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
  text-overflow: clip;
}

.tray-clock.active,
.tray-clock:active {
  box-shadow:
    inset 1px 1px 0 #000,
    inset -1px -1px 0 #fff;
}

.clock-properties {
  position: absolute;
  right: 6px;
  bottom: 38px;
  width: 360px;
  background: var(--chrome);
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #808080,
    3px 3px 0 rgba(0, 0, 0, 0.36);
  z-index: 1300;
  padding: 2px;
}

.clock-titlebar {
  min-height: 20px;
  display: flex;
  align-items: center;
  gap: 6px;
  color: #fff;
  background: linear-gradient(90deg, var(--blue), #2f68c8);
  padding: 2px 3px 2px 6px;
  font-size: 12px;
  font-weight: 800;
}

.clock-titlebar span {
  min-width: 0;
  flex: 1;
}

.clock-titlebar .win-control {
  border: 0;
}

.clock-tabs {
  display: flex;
  gap: 3px;
  padding: 7px 6px 0;
}

.clock-tabs .tab-button {
  min-height: 24px;
  padding: 3px 8px;
}

.clock-panel {
  margin: -1px 6px 6px;
  border: 2px solid var(--line);
  background: #efefef;
  box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #808080;
  padding: 10px;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(110px, 0.75fr);
  gap: 12px;
}

.clock-group {
  position: relative;
  border: 1px solid #808080;
  background: var(--chrome);
  padding: 12px 8px 8px;
  min-width: 0;
}

.clock-group-title {
  position: absolute;
  top: -8px;
  left: 8px;
  background: var(--chrome);
  padding: 0 4px;
  font-size: 11px;
  font-weight: 800;
}

.clock-calendar-header {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) 26px;
  align-items: center;
  gap: 4px;
  margin-bottom: 7px;
}

.clock-calendar-header b {
  text-align: center;
  font-size: 12px;
}

.clock-calendar {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 2px;
  padding: 4px;
  border: 1px solid #808080;
  background: #fff;
  font-size: 11px;
  text-align: center;
}

.clock-calendar b,
.clock-calendar span {
  min-height: 19px;
  display: grid;
  place-items: center;
}

.clock-calendar b {
  color: #fff;
  background: var(--blue);
}

.clock-calendar span.today {
  color: #fff;
  background: var(--blue);
  outline: 1px dotted #fff;
  outline-offset: -3px;
}

.analog-clock {
  position: relative;
  width: 92px;
  height: 92px;
  margin: 2px auto 7px;
  border: 2px solid #000;
  border-radius: 50%;
  background:
    linear-gradient(#fff, #efefef);
  box-shadow:
    inset 2px 2px 0 #fff,
    inset -2px -2px 0 #808080;
}

.analog-clock b {
  position: absolute;
  color: #111;
  font-size: 10px;
  font-weight: 800;
  text-align: center;
  line-height: 1;
}

.analog-clock .n12 {
  top: 7px;
  left: 50%;
  transform: translateX(-50%);
}

.analog-clock .n3 {
  top: 50%;
  right: 8px;
  transform: translateY(-50%);
}

.analog-clock .n6 {
  bottom: 7px;
  left: 50%;
  transform: translateX(-50%);
}

.analog-clock .n9 {
  top: 50%;
  left: 8px;
  transform: translateY(-50%);
}

.clock-hand {
  position: absolute;
  left: 50%;
  bottom: 50%;
  width: 2px;
  transform-origin: 50% 100%;
  background: #111;
}

.clock-hand.hour {
  height: 25px;
}

.clock-hand.minute {
  height: 34px;
}

.analog-clock i {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 6px;
  height: 6px;
  margin: -3px 0 0 -3px;
  display: block;
  background: #111;
}

.clock-digital {
  border: 2px inset #fff;
  background: #fff;
  padding: 4px;
  text-align: center;
  font-family: "Courier New", monospace;
  font-weight: 800;
}

.clock-checkbox,
.clock-select-label,
.clock-note {
  display: block;
  margin-top: 8px;
  font-size: 11px;
  line-height: 1.3;
}

.clock-checkbox {
  display: flex;
  align-items: center;
  gap: 5px;
}

.clock-zone-panel {
  grid-template-columns: minmax(0, 1fr) minmax(110px, 0.62fr);
}

.clock-zone-panel select {
  width: 100%;
  min-height: 27px;
  margin-top: 4px;
  border: 2px solid var(--line);
  background: #fff;
}

.clock-zone-readout {
  margin-top: 10px;
  border: 1px solid #808080;
  background: #fff;
  padding: 7px;
  display: grid;
  gap: 3px;
}

.clock-zone-readout span {
  font-size: 18px;
  font-weight: 800;
}

.clock-zone-readout em {
  color: var(--muted);
  font-style: normal;
  font-size: 11px;
}

.clock-note {
  color: var(--muted);
}

.clock-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) repeat(3, 72px);
  gap: 5px;
  align-items: center;
  padding: 0 6px 6px;
}

.clock-actions span {
  min-width: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.task-button {
  max-width: 178px;
  min-height: 27px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  overflow: hidden;
  font-size: 12px;
  text-align: left;
  padding: 3px 8px;
}

.task-button img {
  width: 16px;
  height: 16px;
  object-fit: contain;
  flex: 0 0 auto;
}

.task-button span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.start-menu {
  position: absolute;
  left: 3px;
  bottom: 34px;
  width: 292px;
  background: var(--chrome);
  border: 2px solid var(--line);
  box-shadow:
    inset 1px 1px 0 #fff,
    inset -1px -1px 0 #808080,
    3px 3px 0 rgba(0, 0, 0, 0.38);
  z-index: 1200;
  display: grid;
  grid-template-columns: 42px 1fr;
  padding: 2px;
}

.start-rail {
  background: #102c80 url("./assets/ui/win95-start-rail.png") 0 0 / 42px auto repeat-y;
  color: #fff;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  min-height: 320px;
  padding: 9px 0;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font-weight: 800;
  font-size: 21px;
  line-height: 1;
  text-shadow: 1px 1px 0 #000;
}

.start-list {
  padding: 2px 2px 2px 4px;
  display: grid;
  gap: 0;
  align-content: start;
}

.start-separator {
  height: 2px;
  margin: 4px 0;
  border-top: 1px solid #808080;
  border-bottom: 1px solid #fff;
}

.start-item {
  border: 0;
  background: transparent;
  text-align: left;
  min-height: 32px;
  padding: 4px 6px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

.start-item img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}

.palm-start-icon {
  width: 20px;
  height: 22px;
  display: block;
  border: 2px solid #111;
  background:
    linear-gradient(#20321e 0 3px, transparent 3px),
    repeating-linear-gradient(0deg, #c7dbc0 0 2px, #a7b99c 2px 4px);
  box-shadow: inset 1px 1px 0 #e8f1df, inset -1px -1px 0 #6f8068;
}

.start-item span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.start-item:hover {
  background: var(--blue);
  color: #fff;
}

.empty-state {
  padding: 16px;
  border: 1px dashed #8f8566;
  background: #fffdf6;
  color: var(--muted);
  line-height: 1.35;
}

.loading {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 20px;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.4);
}

@media (min-width: 761px) and (max-width: 980px) {
  .window[data-app="skills"] {
    left: 8px !important;
    top: 48px !important;
    width: calc(100vw - 16px) !important;
    height: calc(100vh - 92px) !important;
    min-height: 520px;
    margin-bottom: 0;
  }

  .window[data-app="skills"] .skill-studio {
    grid-template-columns: minmax(280px, 315px) minmax(0, 1fr);
  }

  .window[data-app="skills"] .skill-header {
    flex-direction: row;
  }

  .window[data-app="skills"] .skill-copybar {
    flex: 0 0 340px;
    justify-content: flex-end;
  }

  .window[data-app="skills"] .skill-copybar .classic-button {
    min-height: 24px;
    padding: 3px 7px;
    font-size: 12px;
  }

  .window[data-app="skills"] .skill-category-strip {
    max-height: 48px;
    overflow: auto;
  }
}

@media (max-width: 760px) {
  body {
    overflow: auto;
  }

  .desktop {
    height: auto;
    min-height: 1120px;
    padding-top: 330px;
    padding-bottom: 52px;
    overflow: visible;
  }

  .boot-badge {
    display: none;
  }

  .icon-grid {
    inset: 0 0 34px 0;
    grid-template-columns: repeat(4, 86px);
    width: auto;
    top: 0;
    left: 0;
    gap: 6px;
  }

  .desktop-icon {
    width: 82px;
    min-height: 74px;
  }

  .window {
    position: relative;
    left: 8px !important;
    right: 8px;
    top: auto !important;
    width: calc(100vw - 16px) !important;
    height: auto !important;
    min-height: 560px;
    margin-bottom: 12px;
  }

  .window:not(.active) {
    display: none;
  }

  .workspace-grid,
  .workspace-grid.three,
  .skill-inspect-grid,
  .skill-export-grid,
  .skill-preview-grid,
  .explorer-shell,
  .breakout-layout,
  .winamp-app,
  .embedding-dock,
  .prim9-layout,
  .store-layout,
  .notepad-app,
  .rag-workbench,
  .rag-pipeline {
    grid-template-columns: 1fr;
  }

  .window[data-app="notes"] .window-body {
    overflow: auto;
  }

  .notepad-app {
    height: auto;
  }

  .notepad-list,
  .notepad-editor {
    min-height: 260px;
  }

  .window[data-app="rag"] .window-body {
    overflow: auto;
  }

  .rag-console-app {
    height: auto;
    grid-template-rows: auto;
  }

  .rag-command-row,
  .rag-health-strip,
  .rag-evidence-detail,
  .rag-score-detail {
    grid-template-columns: 1fr;
  }

  .rag-table-head,
  .rag-table-row {
    grid-template-columns: 38px minmax(150px, 1fr) 60px;
  }

  .rag-table-head span:last-child,
  .rag-table-row > span:last-child {
    display: none;
  }

  .skill-copybar {
    flex-basis: auto;
    justify-content: flex-start;
  }

  .skill-header {
    flex-direction: column;
  }

  .window[data-app="skills"] {
    height: min(620px, calc(100vh - 390px)) !important;
    min-height: 500px;
  }

  .window[data-app="skills"] .skill-studio {
    grid-template-columns: 1fr;
  }

  .window[data-app="skills"] .skill-copybar .classic-button {
    min-height: 24px;
    padding: 3px 7px;
    font-size: 12px;
  }

  .window[data-app="skills"] .skill-category-strip {
    max-height: 48px;
    overflow: auto;
  }

  .embedding-title {
    align-items: stretch;
    flex-direction: column;
  }

  .embedding-toolbar span {
    margin-left: 0;
    width: 100%;
  }

  .embedding-popover {
    width: calc(100% - 24px);
    left: 12px !important;
    right: 12px;
    top: 12px !important;
    transform: none;
  }

  .embedding-readout {
    min-width: 0;
  }

  .prim9-layout {
    grid-template-rows: minmax(420px, auto) auto;
  }

  .metric-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ask-search-bar,
  .launch-form,
  .launch-command-grid,
  .launch-phase {
    grid-template-columns: 1fr;
  }

  .launch-submit {
    min-height: 44px;
  }

  .taskbar {
    position: fixed;
  }
}

.desktop.palm-mode {
  --palm-ink: #172515;
  --palm-dark: #243520;
  --palm-mid: #8fa081;
  --palm-screen: #b8c9a8;
  --palm-screen-2: #cbd9be;
  --palm-paper: #dbe7cf;
  --palm-line: #182416;
  --chrome: var(--palm-screen);
  --chrome-light: #eef5e7;
  --chrome-dark: #75836d;
  --line: var(--palm-line);
  --paper: var(--palm-paper);
  --panel: #d7e4ca;
  --ink: var(--palm-ink);
  --muted: #45543e;
  --blue: #172515;
  --blue-soft: #ccdabc;
  --red: #172515;
  --amber: #172515;
  --green: #172515;
  --violet: #172515;
  width: 100vw;
  height: 100vh;
  min-height: 100vh;
  padding: 12px;
  overflow: hidden;
  display: grid;
  place-items: center;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.08), transparent 18%, transparent 82%, rgba(0,0,0,0.14)),
    #657361;
  font-family: "Courier New", Courier, monospace;
}

.palm-shell {
  width: min(100%, 430px);
  height: min(100%, 760px);
  max-height: calc(100vh - 24px);
  color: var(--palm-ink);
  background:
    repeating-linear-gradient(0deg, rgba(23,37,21,0.035) 0 1px, transparent 1px 4px),
    linear-gradient(135deg, var(--palm-screen-2), var(--palm-screen));
  border: 2px solid var(--palm-line);
  box-shadow:
    inset 2px 2px 0 rgba(255,255,255,0.42),
    inset -2px -2px 0 rgba(0,0,0,0.28);
  display: grid;
  grid-template-rows: 38px minmax(0, 1fr) 44px;
  overflow: hidden;
}

.palm-statusbar,
.palm-silkbar,
.palm-app-titleline {
  background: var(--palm-dark);
  color: var(--palm-paper);
}

.palm-statusbar {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto 58px;
  align-items: center;
  gap: 5px;
  padding: 4px;
  border-bottom: 2px solid var(--palm-line);
}

.palm-status-title {
  min-width: 0;
  display: grid;
  line-height: 1.05;
}

.palm-status-title b,
.palm-status-title span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.palm-status-title b {
  font-size: 13px;
}

.palm-status-title span,
.palm-statusbar time {
  font-size: 10px;
}

.palm-statusbar time {
  white-space: nowrap;
}

.palm-status-button,
.palm-silkbar button,
.palm-launcher-head button,
.palm-app-titleline button {
  min-height: 24px;
  border: 1px solid var(--palm-paper);
  background: transparent;
  color: inherit;
  box-shadow: none;
  font-size: 11px;
  font-weight: 800;
}

.palm-status-button:disabled {
  opacity: 0.45;
}

.palm-lcd-area {
  min-height: 0;
  overflow: hidden;
}

.palm-launcher {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 8px;
  padding: 8px;
}

.palm-launcher-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid var(--palm-line);
  background: rgba(219,231,207,0.58);
  padding: 6px;
}

.palm-launcher-head div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.palm-launcher-head strong {
  font-size: 16px;
}

.palm-launcher-head span {
  color: var(--muted);
  font-size: 11px;
}

.palm-launcher-head button {
  max-width: 126px;
  color: var(--palm-ink);
  border-color: var(--palm-line);
  background: var(--palm-paper);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.palm-quick-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 5px;
}

.palm-quick-strip button,
.palm-app-icon {
  border: 1px solid var(--palm-line);
  background: rgba(219,231,207,0.7);
  color: var(--palm-ink);
  box-shadow: none;
}

.palm-quick-strip button {
  min-height: 58px;
  display: grid;
  place-items: center;
  gap: 3px;
  padding: 4px;
  font-size: 10px;
  line-height: 1.05;
}

.palm-quick-strip img,
.palm-app-icon img,
.palm-app-titleline img {
  filter: grayscale(1) contrast(1.35);
  image-rendering: auto;
}

.palm-quick-strip img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

.palm-app-grid {
  min-height: 0;
  overflow: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-content: start;
  gap: 7px;
  padding: 1px 1px 8px;
}

.palm-app-icon {
  min-height: 82px;
  display: grid;
  place-items: center;
  gap: 5px;
  padding: 7px 4px;
  text-align: center;
  font-size: 10px;
  line-height: 1.08;
}

.palm-app-icon img {
  width: 34px;
  height: 34px;
  object-fit: contain;
}

.palm-app-frame {
  display: grid;
  grid-template-rows: 28px minmax(0, 1fr);
}

.palm-app-titleline {
  display: grid;
  grid-template-columns: 28px 20px minmax(0, 1fr);
  align-items: center;
  gap: 5px;
  padding: 3px 5px;
  border-bottom: 2px solid var(--palm-line);
}

.palm-app-titleline button {
  min-height: 20px;
  padding: 0;
  line-height: 1;
}

.palm-app-titleline img {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.palm-app-titleline b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
}

.palm-app-body {
  min-height: 0;
  overflow: auto;
  padding: 7px;
  background:
    repeating-linear-gradient(0deg, rgba(23,37,21,0.035) 0 1px, transparent 1px 4px),
    var(--palm-screen-2);
}

.palm-silkbar {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
  align-items: center;
  padding: 5px;
  border-top: 2px solid var(--palm-line);
}

.palm-silkbar button {
  min-width: 0;
  min-height: 30px;
  padding: 2px 3px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.palm-mode .palm-app-body button,
.palm-mode .palm-app-body input,
.palm-mode .palm-app-body textarea,
.palm-mode .palm-app-body select,
.palm-mode .palm-app-body a.retro-button,
.palm-mode .palm-app-body .classic-button,
.palm-mode .palm-app-body .mini-button,
.palm-mode .palm-app-body .tab-button,
.palm-mode .palm-app-body .ask-submit {
  border: 1px solid var(--palm-line);
  border-radius: 0;
  background: var(--palm-paper);
  color: var(--palm-ink);
  box-shadow: none;
}

.palm-mode .palm-app-body input,
.palm-mode .palm-app-body textarea,
.palm-mode .palm-app-body select {
  background: #eef5e8;
}

.palm-mode .palm-app-body textarea {
  min-height: 180px;
}

.palm-mode .workspace-grid,
.palm-mode .workspace-grid.three,
.palm-mode .ask-grid,
.palm-mode .ask-workspace,
.palm-mode .ask-search-bar,
.palm-mode .launch-form,
.palm-mode .launch-command-grid,
.palm-mode .launch-phase,
.palm-mode .notepad-app,
.palm-mode .win-explorer95 .explorer-shell,
.palm-mode .lz-layout,
.palm-mode .winamp-app,
.palm-mode .embedding-dock,
.palm-mode .rag-workbench,
.palm-mode .rag-pipeline,
.palm-mode .skill-studio,
.palm-mode .skill-inspect-grid,
.palm-mode .skill-export-grid,
.palm-mode .skill-preview-grid,
.palm-mode .breakout-layout {
  grid-template-columns: 1fr !important;
}

.palm-mode .pane,
.palm-mode .ask-search-panel,
.palm-mode .ask-article,
.palm-mode .evidence-dock,
.palm-mode .launch-brief,
.palm-mode .launch-plan,
.palm-mode .notepad-list,
.palm-mode .notepad-editor,
.palm-mode .lz-side-box,
.palm-mode .lz-main,
.palm-mode .lz-right,
.palm-mode .explorer-folder-pane,
.palm-mode .explorer-content-pane,
.palm-mode .embedding-app,
.palm-mode .rag-console-app,
.palm-mode .skill-studio {
  border: 1px solid var(--palm-line);
  background: rgba(219,231,207,0.72);
  box-shadow: none;
}

.palm-mode .ask-brand-row,
.palm-mode .lz-tabs,
.palm-mode .lz-masthead,
.palm-mode .explorer-menu95,
.palm-mode .explorer-address95,
.palm-mode .explorer-statusbar95,
.palm-mode .embedding-title,
.palm-mode .rag-console-head,
.palm-mode .skill-header,
.palm-mode .skill-copybar,
.palm-mode .winamp-title,
.palm-mode .notepad-menu {
  filter: grayscale(1);
}

.palm-mode .ask-suggestions,
.palm-mode .tag-row,
.palm-mode .lz-row-links,
.palm-mode .detail-actions,
.palm-mode .embedding-view-tabs,
.palm-mode .embedding-toolbar,
.palm-mode .skill-category-strip,
.palm-mode .notepad-toolbar,
.palm-mode .notepad-menu {
  overflow-x: auto;
}

.palm-mode .lz-left,
.palm-mode .lz-right,
.palm-mode .explorer-folder-pane,
.palm-mode .evidence-dock {
  max-height: 210px;
  overflow: auto;
}

.palm-mode .lz-products,
.palm-mode .notepad-note-list,
.palm-mode .source-list,
.palm-mode .explorer-file-table,
.palm-mode .ie-page,
.palm-mode .skill-main,
.palm-mode .rag-table,
.palm-mode .rag-inspector,
.palm-mode .embedding-screen {
  max-height: none;
  overflow: auto;
}

.palm-mode .lz-product-row,
.palm-mode .rag-command-row,
.palm-mode .rag-health-strip,
.palm-mode .rag-evidence-detail,
.palm-mode .rag-score-detail,
.palm-mode .metric-strip {
  grid-template-columns: 1fr !important;
}

.palm-mode .lz-cover,
.palm-mode .lz-detail-cover,
.palm-mode .product-image-frame {
  filter: grayscale(1) contrast(1.12);
}

.palm-mode .winamp,
.palm-mode .winamp-main,
.palm-mode .winamp-playlist,
.palm-mode .winamp-eq,
.palm-mode .winamp-question,
.palm-mode .breakout-stage {
  max-width: 100%;
}

.palm-mode .embedding-screen {
  min-height: 320px;
}

@media (max-width: 760px) {
  .desktop.palm-mode {
    width: 100vw;
    height: 100dvh;
    min-height: 100dvh;
    padding: 0;
    overflow: hidden;
  }

  .palm-shell {
    width: 100vw;
    height: 100dvh;
    max-height: none;
    border: 0;
  }

  .palm-statusbar {
    grid-template-columns: 52px minmax(0, 1fr) auto 52px;
  }
}
