.susa-knowledge-check {
  margin: 1.4rem 0;
  overflow: hidden;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 0.65rem;
  background: var(--md-default-bg-color);
  box-shadow: 0 0.8rem 2rem rgba(9, 30, 66, 0.08);
}

.susa-knowledge-check__prompt {
  padding: 1rem 1.1rem;
  border-bottom: 1px solid var(--md-default-fg-color--lightest);
  background: color-mix(in srgb, var(--md-primary-fg-color) 7%, transparent);
}

.susa-knowledge-check__prompt span {
  display: block;
  color: var(--md-accent-fg-color);
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.susa-knowledge-check__prompt strong {
  display: block;
  margin-top: 0.25rem;
  font-size: 0.9rem;
}

.susa-knowledge-check__answers {
  display: grid;
  gap: 0.55rem;
  padding: 1rem;
}

.susa-knowledge-check__answers button {
  padding: 0.75rem 0.85rem;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 0.45rem;
  background: var(--md-default-bg-color);
  color: var(--md-default-fg-color);
  font: inherit;
  font-size: 0.76rem;
  text-align: left;
  cursor: pointer;
}

.susa-knowledge-check__answers button:is(:hover, :focus-visible) {
  border-color: var(--md-accent-fg-color);
}

.susa-knowledge-check__answers button.is-correct {
  border-color: #2faf89;
  background: rgba(47, 175, 137, 0.1);
}

.susa-knowledge-check__answers button.is-incorrect {
  border-color: #d85b66;
  background: rgba(216, 91, 102, 0.08);
}

.susa-knowledge-check__feedback {
  min-height: 2.8rem;
  padding: 0.75rem 1rem;
  border-top: 1px solid var(--md-default-fg-color--lightest);
  color: var(--md-default-fg-color--light);
  font-size: 0.74rem;
}

.susa-knowledge-check__feedback.is-correct { color: #247b61; }
.susa-knowledge-check__feedback.is-incorrect { color: #a43f49; }

@media (prefers-reduced-motion: reduce) {
  .susa-knowledge-check *,
  .susa-knowledge-check *::before,
  .susa-knowledge-check *::after { transition-duration: 0.01ms !important; }
}

.susa-tool-introduction {
  margin: 1rem 0 1.5rem;
  padding: 0.85rem 1rem;
  border-left: 0.18rem solid var(--md-accent-fg-color);
  border-radius: 0.2rem 0.5rem 0.5rem 0.2rem;
  background: color-mix(in srgb, var(--md-default-bg-color) 94%, var(--md-accent-fg-color) 6%);
}

.susa-tool-introduction > span {
  display: block;
  margin-bottom: 0.2rem;
  color: var(--md-accent-fg-color);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.susa-tool-introduction > p { margin: 0; }

.susa-tool-context {
  display: grid;
  margin: 0.8rem 0 1.2rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
}

.susa-tool-context article {
  min-width: 0;
  padding: 0.75rem 0.8rem;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 0.55rem;
  background: color-mix(in srgb, var(--md-default-bg-color) 96%, var(--md-accent-fg-color) 4%);
}

.susa-tool-context span {
  display: block;
  margin-bottom: 0.25rem;
  color: var(--md-accent-fg-color);
  font-size: 0.56rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.md-typeset .susa-tool-context p {
  margin: 0;
  color: var(--md-default-fg-color--light);
  font-size: 0.68rem;
  line-height: 1.5;
}

.susa-tool-practice {
  margin-top: 1rem;
  padding-top: 0.2rem;
}

.susa-tool-page:not(.susa-tool-lab-page) .md-sidebar--secondary .md-nav__item > .md-nav { display: none; }

.susa-interactive-lab {
  margin: 1rem 0 2rem;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--md-accent-fg-color) 38%, transparent);
  border-radius: 0.8rem;
  background: var(--md-default-bg-color);
  box-shadow: 0 1rem 2.4rem rgba(9, 30, 66, 0.11);
}

.susa-interactive-lab > header {
  display: grid;
  padding: 0.95rem 1rem;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 0.75rem;
  color: #eef7ff;
  background: linear-gradient(135deg, #071a2d, #123b65);
}

.susa-interactive-lab > header > span {
  padding: 0.24rem 0.45rem;
  border: 1px solid rgba(114, 183, 255, 0.55);
  border-radius: 999px;
  color: #9fd0ff;
  font-family: var(--md-code-font-family);
  font-size: 0.58rem;
  font-weight: 800;
}

.susa-interactive-lab > header strong,
.susa-interactive-lab > header small { display: block; }
.susa-interactive-lab > header strong { color: #fff; font-size: 0.82rem; }
.susa-interactive-lab > header small { margin-top: 0.12rem; color: #b7c9da; font-size: 0.6rem; }
.susa-interactive-lab > header > b { color: #9fd0ff; font-size: 0.62rem; white-space: nowrap; }

.susa-interactive-lab__brief {
  padding: 0.85rem 1rem 0.75rem;
  border-bottom: 1px solid var(--md-default-fg-color--lightest);
}

.susa-interactive-lab__brief > span {
  color: var(--md-accent-fg-color);
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.md-typeset .susa-interactive-lab__brief p { margin: 0.22rem 0 0; font-size: 0.74rem; }

.susa-interactive-lab__safe {
  display: flex;
  margin: 0.7rem 1rem;
  padding: 0.55rem 0.65rem;
  align-items: baseline;
  gap: 0.55rem;
  border-left: 0.14rem solid var(--md-accent-fg-color);
  background: color-mix(in srgb, var(--md-default-bg-color) 88%, #dff2ff 12%);
  font-size: 0.63rem;
}

.susa-interactive-lab__safe b { white-space: nowrap; }
.susa-interactive-lab__safe span { color: var(--md-default-fg-color--light); }

.susa-interactive-lab__progress { height: 0.2rem; background: var(--md-default-fg-color--lightest); }
.susa-interactive-lab__progress > span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, #4b9fff, #43c59e); transition: width 220ms ease; }

.md-typeset .susa-interactive-lab__stepper {
  position: relative;
  display: grid;
  margin: 0 !important;
  padding: 0.8rem 1rem 0.65rem !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  background: color-mix(in srgb, var(--md-default-bg-color) 96%, var(--md-accent-fg-color) 4%);
}

.md-typeset .susa-interactive-lab__stepper::before {
  position: absolute;
  top: 1.25rem;
  right: 17%;
  left: 17%;
  height: 1px;
  background: color-mix(in srgb, var(--md-accent-fg-color) 35%, transparent);
  content: "";
}

.md-typeset .susa-interactive-lab__stepper li {
  z-index: 1;
  display: grid;
  margin: 0 !important;
  place-items: center;
  gap: 0.2rem;
  color: var(--md-default-fg-color--light);
  font-size: 0.58rem;
}

.susa-interactive-lab__stepper b {
  display: grid;
  width: 1.25rem;
  height: 1.25rem;
  place-items: center;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 50%;
  color: var(--md-default-fg-color--light);
  background: var(--md-default-bg-color);
  font-size: 0.56rem;
}

.susa-interactive-lab__stepper li.is-current { color: var(--md-accent-fg-color); font-weight: 700; }
.susa-interactive-lab__stepper li.is-current b { border-color: var(--md-accent-fg-color); color: #fff; background: var(--md-accent-fg-color); }
.susa-interactive-lab__stepper li.is-complete b { border-color: #2faf89; color: #fff; background: #2faf89; }

.susa-interactive-lab > section {
  min-height: 15rem;
  padding: 1.1rem 1rem;
  border-bottom: 1px solid var(--md-default-fg-color--lightest);
}

.susa-interactive-lab > section[hidden] { display: none; }
.susa-interactive-lab > section:focus { outline: none; }

.susa-interactive-lab > section > span,
.susa-interactive-lab > section > strong { display: block; }
.susa-interactive-lab > section > span { color: var(--md-accent-fg-color); font-size: 0.58rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.susa-interactive-lab > section > strong { margin: 0.18rem 0 0.75rem; font-size: 0.82rem; }
.susa-interactive-lab > section > div { display: grid; gap: 0.48rem; }

.susa-interactive-lab > section button {
  position: relative;
  min-height: 2.35rem;
  padding: 0.62rem 0.72rem 0.62rem 2rem;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 0.42rem;
  color: var(--md-default-fg-color);
  background: var(--md-default-bg-color);
  font: inherit;
  font-size: 0.7rem;
  line-height: 1.4;
  text-align: left;
  cursor: pointer;
}

.susa-interactive-lab > section button::before {
  position: absolute;
  top: 50%;
  left: 0.65rem;
  display: grid;
  width: 0.82rem;
  height: 0.82rem;
  place-items: center;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 50%;
  content: "";
  transform: translateY(-50%);
}

.susa-interactive-lab > section button:is(:hover, :focus-visible) { border-color: var(--md-accent-fg-color); }
.susa-interactive-lab > section button.is-correct { border-color: #2faf89; background: rgba(47, 175, 137, 0.1); }
.susa-interactive-lab > section button.is-incorrect { border-color: #d85b66; background: rgba(216, 91, 102, 0.08); }
.susa-interactive-lab > section button.is-correct::before { border-color: #2faf89; color: #fff; background: #2faf89; content: "✓"; }
.susa-interactive-lab > section button.is-incorrect::before { border-color: #d85b66; color: #fff; background: #d85b66; content: "×"; }
.md-typeset .susa-interactive-lab > section > p { min-height: 1.2rem; margin: 0.55rem 0 0; color: var(--md-default-fg-color--light); font-size: 0.64rem; }
.md-typeset .susa-interactive-lab > section > p.is-correct { color: #247b61; }
.md-typeset .susa-interactive-lab > section > p.is-incorrect { color: #a43f49; }

.susa-interactive-lab > footer {
  display: flex;
  padding: 0.75rem 1rem;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  background: color-mix(in srgb, var(--md-default-bg-color) 95%, var(--md-accent-fg-color) 5%);
}

.susa-interactive-lab > footer strong { font-size: 0.65rem; }
.susa-interactive-lab > footer > div { display: flex; gap: 0.35rem; }
.susa-interactive-lab > footer button { padding: 0.4rem 0.58rem; border: 1px solid var(--md-accent-fg-color); border-radius: 0.4rem; color: var(--md-accent-fg-color); background: transparent; font: inherit; font-size: 0.62rem; font-weight: 700; cursor: pointer; }
.susa-interactive-lab > footer button:disabled { border-color: var(--md-default-fg-color--lightest); color: var(--md-default-fg-color--lighter); cursor: not-allowed; }
.susa-interactive-lab > footer .susa-interactive-lab__next:not(:disabled) { color: #fff; background: var(--md-accent-fg-color); }
.susa-interactive-lab.is-complete > header > b { color: #75e0bd; }

.susa-kansa-lab {
  margin: 1rem 0 2rem;
  overflow: hidden;
  border: 1px solid #3d83bd;
  border-radius: 0.8rem;
  background: #f4f7fa;
  box-shadow: 0 1.1rem 2.6rem rgba(4, 24, 44, 0.15);
}

.susa-kansa-lab > header {
  display: grid;
  padding: 0.9rem 1rem;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 0.75rem;
  color: #eff8ff;
  background: linear-gradient(135deg, #071d34, #0d4d80);
}

.susa-kansa-lab__icon { display: grid; width: 1.7rem; height: 1.7rem; place-items: center; border: 1px solid #60b9ff; border-radius: 0.35rem; color: #8ed0ff; font-family: var(--md-code-font-family); font-size: 0.62rem; font-weight: 800; }
.susa-kansa-lab__icon img { width: 1.2rem; height: 1.2rem; object-fit: contain; }
.susa-kansa-lab > header strong, .susa-kansa-lab > header small { display: block; }
.susa-kansa-lab > header strong { color: #fff; font-size: 0.85rem; }
.susa-kansa-lab > header small { margin-top: 0.12rem; color: #b7d0e5; font-size: 0.59rem; }
.susa-kansa-lab > header > b { color: #a6d8ff; font-size: 0.61rem; white-space: nowrap; }
.susa-kansa-lab.is-complete > header > b { color: #80e2bf; }

.susa-kansa-lab__safe { display: flex; padding: 0.58rem 0.8rem; align-items: baseline; gap: 0.55rem; border-bottom: 1px solid #cddbe6; color: #17324a; background: #e5f4ff; font-size: 0.62rem; }
.susa-kansa-lab__safe span { color: #51697d; }

.md-typeset .susa-kansa-lab__stepper { position: relative; display: grid !important; margin: 0 !important; padding: 0.65rem 1rem !important; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; background: #edf3f7; }
.md-typeset .susa-kansa-lab__stepper li { position: relative; display: grid; margin: 0 !important; place-items: center; color: #587086; font-size: .6rem; }
.susa-kansa-lab__stepper li:not(:last-child)::after { position: absolute; top: .6rem; left: calc(50% + .7rem); width: calc(100% - 1.4rem); height: 2px; background: #b7ccdc; content: ''; }
.susa-kansa-lab__stepper li.is-complete::after { background: #28a77c; }
.susa-kansa-lab__stepper button { position: relative; z-index: 1; display: grid; justify-items: center; gap: .25rem; padding: 0 .25rem; border: 0; color: inherit; background: transparent; font: inherit; cursor: pointer; }
.susa-kansa-lab__stepper button:disabled { cursor: default; }
.susa-kansa-lab__stepper button:not(:disabled):hover span { text-decoration: underline; text-underline-offset: .15rem; }
.susa-kansa-lab__stepper b { display: grid; width: 1.2rem; height: 1.2rem; place-items: center; border: 1px solid #9db7cb; border-radius: 50%; color: #46647b; background: #f7fafc; font-size: 0.55rem; }
.susa-kansa-lab__stepper li.is-current { color: #006fbd; font-weight: 750; }
.susa-kansa-lab__stepper li.is-current b { border-color: #078cdc; color: #fff; background: #078cdc; }
.susa-kansa-lab__stepper li.is-complete b { border-color: #28a77c; color: #fff; background: #28a77c; }

.susa-kansa-lab__workspace { display: grid; padding: 0.85rem; grid-template-columns: minmax(0, 1fr); align-items: stretch; gap: 0.75rem; }
.susa-kansa-lab [hidden] { display: none !important; }
.susa-kansa-lab__terminal { display: grid; overflow: hidden; grid-template-rows: auto minmax(0,1fr); border: 1px solid #454545; border-radius: 0.4rem; color: #ccc; background: #0c0c0c; }
.susa-kansa-lab__terminal-bar { display: flex; height: 40px; padding: 8px 0 0 8px; align-items: stretch; color: #f4f4f4; background: #333; font: 12px "Segoe UI", sans-serif; }
.susa-kansa-lab__terminal-tab { display: flex; flex: 1; max-width: 240px; min-width: 0; padding: 0 10px; align-items: center; gap: 9px; background: #0c0c0c; border-radius: 8px 8px 0 0; }
.susa-kansa-lab__terminal-tab > span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.susa-kansa-lab__terminal-tab img { width: 16px; height: 16px; object-fit: contain; }
.susa-kansa-lab__terminal-bar svg { width: 12px; height: 12px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1; }
.susa-kansa-lab__terminal-tab > svg { margin-left: auto; }
.susa-kansa-lab__tab-tools { display: flex; align-items: center; gap: 18px; padding: 0 16px; }
.susa-kansa-lab__window-controls { display: flex; margin: -8px 0 0 auto; align-items: center; gap: 30px; padding: 0 16px; }
.susa-kansa-lab__console { height: 560px; overflow: auto; padding: 8px 5px; color: #ccc; font-family: Consolas, "Cascadia Mono", monospace; font-size: 18px; line-height: 24px; }
.susa-kansa-lab__output { font: inherit; }
body .md-typeset .susa-kansa-lab__output p { font: inherit !important; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.susa-kansa-lab__output .is-command { margin-top: 0.65rem !important; color: #eee; }
.susa-kansa-lab__output .is-result { color: #ccc; }
.susa-kansa-lab__output .is-error { color: #ff9fa8; }
.susa-kansa-lab form { position: relative; display: block; margin-top: 20px; padding: 0; background: transparent; }
.susa-kansa-lab form label { position: absolute; top: 0; left: 0; color: #ccc; font: inherit; white-space: nowrap; line-height: inherit; }
.susa-kansa-lab form textarea { position: relative; z-index: 1; display: block; width: 100%; min-width: 0; max-height: none; overflow: hidden; margin: 0; padding: 0; resize: none; border: 0; border-radius: 0; color: transparent; background: transparent; font: inherit; line-height: inherit; caret-color: #fff; text-indent: 19ch; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-all; }
body .md-typeset .susa-kansa-lab__input-display { position: absolute; inset: 0; overflow: hidden; margin: 0 !important; padding: 0 !important; border: 0; color: #ccc; background: transparent; font: inherit !important; text-indent: 19ch; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-all; pointer-events: none; }
.susa-kansa-lab form textarea::selection { color: transparent; background: rgba(90,150,230,.4); }
.susa-kansa-lab .kansa-token-command { color: #f5ed8c; }
.susa-kansa-lab .kansa-token-parameter { color: #888; }
.susa-kansa-lab .kansa-token-string { color: #36adff; }
body .md-typeset .susa-kansa-lab__output p.is-command { word-break: break-all; }
@media (forced-colors: active) {
  .susa-kansa-lab form textarea { color: CanvasText; }
  .susa-kansa-lab__input-display { visibility: hidden; }
  .susa-kansa-lab form textarea::selection { color: HighlightText; background: Highlight; }
}
.susa-kansa-lab form textarea:focus, .susa-kansa-lab form textarea:focus-visible { outline: none !important; box-shadow: none !important; }
.susa-kansa-lab__terminal:focus-within { border-color: #168ed8; }
.susa-kansa-lab form textarea:disabled { opacity: .6; }
.susa-kansa-lab form button, .susa-kansa-lab__task button { padding: 0.4rem 0.58rem; border: 1px solid #168ed8; border-radius: 0.28rem; color: #fff; background: #087abc; font: inherit; font-size: 0.58rem; font-weight: 700; cursor: pointer; }

.susa-kansa-lab__task { grid-row: 1; padding: 0.85rem; border: 1px solid #cbd9e3; border-radius: 0.45rem; color: #243d51; background: #fff; }
.susa-kansa-lab__console-wrap { padding: .85rem; }
.susa-kansa-lab__terminal { width: 100%; }
.susa-kansa-lab__task > span, .susa-kansa-lab__assessment > span { color: #087abc; font-size: 0.56rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.susa-kansa-lab [data-kansa-task] { scroll-margin-top: 5rem; }
body .md-typeset .susa-kansa-lab__task h3, body .md-typeset .susa-kansa-lab__assessment h3 { margin: .35rem 0 .5rem !important; font-size: .85rem !important; line-height: 1.35; }
.md-typeset .susa-kansa-lab__task p { color: #607589; font-size: 0.65rem; line-height: 1.5; }
.susa-kansa-lab__task button { width: auto; margin: 0; }
.susa-kansa-lab__task-heading { display: flex; align-items: start; justify-content: space-between; gap: .6rem; }
.susa-kansa-lab__task-heading > div { min-width: 0; }
.susa-kansa-lab__task-heading span { color: #087abc; font-size: .56rem; font-weight: 800; text-transform: uppercase; }
.susa-kansa-lab__task-heading button { flex-shrink: 0; padding: .35rem .65rem; border-color: #bed6e6; color: #086a9f; background: #f1f8fc; }
.susa-kansa-lab form button { padding: .1rem .4rem; border-color: #555; color: #ccc; background: #222; font-size: .65rem; }
.susa-kansa-lab form button:disabled { opacity: .45; cursor: default; }
.susa-kansa-lab :is(button, summary, textarea, [tabindex]):focus-visible { outline: 3px solid #168ed8; outline-offset: 3px; }
.susa-kansa-lab__task small { display: block; margin-top: 0.45rem; color: #80909d; font-size: 0.55rem; text-align: center; }
.susa-kansa-lab__hint { position: relative; margin: .55rem 0; padding: .55rem .65rem; border-left: 3px solid #168ed8; border-radius: .2rem; color: #29485f; background: #edf7ff; font-family: var(--md-code-font-family); font-size: .65rem; overflow-wrap: anywhere; }
.susa-kansa-lab__hint > div { position: absolute; top: .2rem; right: .25rem; }
.susa-kansa-lab__hint button { display: grid; width: 36px; height: 36px; padding: 8px; place-items: center; border: 0; color: #45647b; background: transparent; }
.susa-kansa-lab__hint button:hover { color: #006fbd; background: #dbeeff; }
.susa-kansa-lab__hint button svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.susa-kansa-lab__hint button .kansa-copy-check { display: none; }
.susa-kansa-lab__hint button.is-copied { color: #176343; }
.susa-kansa-lab__hint button.is-copied .kansa-copy-icon { display: none; }
.susa-kansa-lab__hint button.is-copied .kansa-copy-check { display: block; }
.susa-kansa-lab__copy-announcement { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.susa-kansa-lab__feedback:has(> strong:empty) { display: none; }
.susa-kansa-lab__feedback { padding: .65rem .85rem; background: #e9f0f5; }
.susa-kansa-lab__feedback strong { display: block; }
.md-typeset .susa-kansa-lab__hint code { display: block; padding: .2rem 1.9rem .2rem 0; color: inherit; background: transparent; white-space: pre-wrap; overflow-wrap: anywhere; font-size: .65rem; }
.susa-kansa-lab__hint[hidden], .susa-kansa-lab [data-kansa-copy][hidden] { display: none; }
.susa-kansa-lab__brief { padding: .65rem .85rem; color: #243d51; background: #f5f9fc; border-bottom: 1px solid #d6e1e9; }
.md-typeset .susa-kansa-lab__brief p { margin: 0 0 .25rem; font-size: .7rem; line-height: 1.5; }
.susa-kansa-lab__brief > div { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .2rem .6rem; }
.susa-kansa-lab__brief small { color: #607589; font-size: .6rem; }
.susa-kansa-lab__brief b { color: #087abc; font-size: .6rem; white-space: nowrap; }
.susa-kansa-lab.is-complete .susa-kansa-lab__brief b { color: #176343; }
@media (max-width: 600px) {
  .susa-kansa-lab__console { height: 480px; font-size: 16px; line-height: 22px; }
  .susa-kansa-lab form { grid-template-columns: minmax(0,1fr); row-gap: .2rem; }
  .susa-kansa-lab form label { grid-column: 1 / -1; }
  .susa-kansa-lab form textarea { grid-column: 1; }
  .susa-kansa-lab__window-controls { display: none; }
}
.susa-kansa-lab__hint button:disabled { border-color: #aebdc8; color: #697d8d; background: #eef2f5; cursor: default; }
.md-typeset .susa-kansa-lab__hint p { margin: 0.55rem 0 0 !important; padding: 0.55rem; border-left: 0.14rem solid #168ed8; color: #29485f; background: #edf7ff; font-family: var(--md-code-font-family); font-size: 0.58rem; overflow-wrap: anywhere; }
.susa-kansa-lab__hint p[hidden] { display: none; }

.susa-kansa-lab__assessment { scroll-margin-top: 5rem; margin: 0 0.85rem 0.85rem; padding: 0.85rem; border: 1px solid #cbd9e3; border-radius: 0.45rem; color: #243d51; background: #fff; }
.susa-kansa-lab__assessment[hidden] { display: none; }
.susa-kansa-lab__assessment > div { display: grid; gap: 0.4rem; }
.susa-kansa-lab__assessment button { padding: 0.58rem 0.68rem; border: 1px solid #d5e0e7; border-radius: 0.35rem; color: #263f52; background: #f8fafb; font: inherit; font-size: 0.65rem; text-align: left; cursor: pointer; }
.susa-kansa-lab__assessment button.is-correct { border-color: #28a77c; background: #e9f8f2; }
.susa-kansa-lab__assessment button.is-incorrect { border-color: #d85b66; background: #fff0f1; }
.md-typeset .susa-kansa-lab__assessment > p { margin: 0.55rem 0 0; color: #607589; font-size: 0.62rem; }
.md-typeset .susa-kansa-lab__assessment > p.is-correct { color: #247b61; }
.md-typeset .susa-kansa-lab__assessment > p.is-incorrect { color: #a43f49; }

.susa-kansa-lab__case-note { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; margin: 0.8rem 0 0; }
.susa-kansa-lab__case-note div { padding: 0.65rem; border: 1px solid #c8dbea; border-radius: 0.35rem; background: #f6fbff; }
.susa-kansa-lab__case-note dt { color: #087abc; font-size: 0.56rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.susa-kansa-lab__case-note dd { margin: 0.22rem 0 0; color: #344f64; font-size: 0.66rem; line-height: 1.5; }

@media screen and (max-width: 50em) {
  .susa-kansa-lab__case-note { grid-template-columns: 1fr; }
}

.susa-kansa-lab > footer { display: flex; flex-direction: column; padding: 0.7rem 0.85rem; align-items: stretch; gap: 0.7rem; border-top: 1px solid #cbd9e3; color: #344f64; background: #e9f0f5; }
.susa-kansa-lab__feedback strong { font-size: .65rem; }
.susa-kansa-lab__feedback strong.is-correct { padding: .5rem .65rem; border-left: 3px solid #238460; border-radius: .2rem; color: #176343; background: #e0f5e9; }
.susa-kansa-lab__feedback strong.is-incorrect { padding: .5rem .65rem; border-left: 3px solid #b63e4c; border-radius: .2rem; color: #99313e; background: #ffebee; }
.susa-kansa-lab > footer > div { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 0.35rem; }
.susa-kansa-lab > footer button { padding: 0.38rem 0.55rem; border: 1px solid #168ed8; border-radius: 0.3rem; color: #087abc; background: #fff; font: inherit; font-size: 0.58rem; font-weight: 700; cursor: pointer; }
.susa-kansa-lab > footer button:disabled { border-color: #bdcbd5; color: #8a9aa6; cursor: not-allowed; }
.susa-kansa-lab > footer .susa-kansa-lab__next:not(:disabled) { color: #fff; background: #087abc; }
@media (max-width: 600px) {
  .susa-kansa-lab > header { grid-template-columns: auto minmax(0,1fr); }
  .susa-kansa-lab > header > b { grid-column: 2; }
  .md-typeset .susa-kansa-lab > footer > div { display: flex; flex-wrap: wrap; }
  .susa-kansa-lab > footer button { flex: 1; }
  .susa-kansa-lab [data-kansa-download] { flex-basis: 100%; order: 2; }
}

/* Compact Kansa guidance; preserve the native PowerShell typography above. */
.md-typeset .susa-kansa-lab__stepper li { font-size: .6rem; }
body .md-typeset .susa-kansa-lab :is(.susa-kansa-lab__task, .susa-kansa-lab__assessment, .susa-kansa-lab__brief) p,
body .md-typeset .susa-kansa-lab .susa-kansa-lab__case-note dd {
  font-family: var(--md-text-font-family); font-size: .7rem !important;
  font-weight: 400; font-style: normal; line-height: 1.6;
  color: #243d51; letter-spacing: normal;
}
body .md-typeset .susa-kansa-lab :is(.susa-kansa-lab__task, .susa-kansa-lab__assessment) h3 { font-size: .8rem !important; color: #203c60 !important; }
body .md-typeset .susa-kansa-lab .susa-kansa-lab__brief strong { font-weight: 700; }
body .md-typeset .susa-kansa-lab .susa-kansa-lab__brief code { font-size: .95em; font-weight: 700; color: inherit; }
body .md-typeset .susa-kansa-lab__hint code { min-height: 1.8rem; font-size: .65rem; line-height: 1.55; color: #203c60; }
.susa-kansa-lab__assessment button { font-size: .7rem; line-height: 1.6; }
.susa-kansa-lab__feedback strong { font-size: .7rem; line-height: 1.6; }
body .md-typeset .susa-kansa-lab__assessment > p.is-correct { color: #176343; }
body .md-typeset .susa-kansa-lab__assessment > p.is-incorrect { color: #99313e; }
.susa-kansa-lab__task > span, .susa-kansa-lab__assessment > span, .susa-kansa-lab__case-note dt { font-size: .55rem; letter-spacing: .03em; }
.susa-kansa-lab > footer button { font-size: .6rem; }

body .md-typeset .susa-lab-shell:has([data-susa-kansa-lab]) > header h3 { font-size: .9rem !important; }

/* Keep section names available to MkDocs' page outline without repeating the
   large visible title already carried by each CDK-style lab banner. */
.md-typeset .susa-toc-anchor {
  position: absolute;
  overflow: hidden;
  width: 1px;
  height: 1px;
  margin: 0 !important;
  padding: 0;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.md-typeset .cdk-browser-lab__heading h2,
.md-typeset .cdk-full-lab-heading h2 {
  margin: 0 !important;
  font-size: 1.25rem;
  font-weight: 750;
  line-height: 1.2;
}

.susa-tool-workbench {
  --workbench-accent: #078cdc;
  margin: 1rem 0 2rem;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--workbench-accent) 72%, #173247);
  border-radius: 0.8rem;
  background: #f4f7fa;
  box-shadow: 0 1.1rem 2.6rem rgba(4, 24, 44, 0.14);
}
.susa-tool-workbench--acquisition, .susa-tool-workbench--capture { --workbench-accent: #238c73; }
.susa-tool-workbench--browser, .susa-tool-workbench--network { --workbench-accent: #147c9c; }
.susa-tool-workbench--registry, .susa-tool-workbench--artefact { --workbench-accent: #996815; }
.susa-tool-workbench--events, .susa-tool-workbench--timeline { --workbench-accent: #5c66b1; }
.susa-tool-workbench--malware { --workbench-accent: #a84957; }

/* KAPE overview and safe gkape training interface. */
.susa-tool-intro { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 1.2rem; align-items: center; margin: 1rem 0 2rem; padding: 1rem 1.2rem; border: 1px solid var(--md-default-fg-color--lightest); border-radius: 0.75rem; background: linear-gradient(110deg, var(--md-accent-fg-color--transparent), transparent 55%); }
.susa-tool-intro__logo { width: 100%; max-height: 6rem; object-fit: contain; }
.md-typeset .susa-tool-intro h2 { margin-top: 0; }

.susa-gkape { overflow: hidden; border: 1px solid #8b949d; border-radius: 0.35rem; color: #20252a; background: #eee; box-shadow: 0 1rem 2.5rem rgba(10, 26, 39, 0.16); font-family: "Segoe UI", Arial, sans-serif; }
.susa-gkape__titlebar { display: flex; min-height: 2.2rem; padding: 0.3rem 0.55rem; align-items: center; gap: 0.45rem; border-bottom: 1px solid #c4c7ca; background: #f5f5f5; font-size: 0.62rem; line-height: 1; }
.susa-gkape__titlebar img { display: block; flex: 0 0 auto; width: 1.25rem; height: 1.25rem; margin: 0; object-fit: contain; }
.susa-gkape__titlebar strong { display: flex; min-height: 1.25rem; align-items: center; line-height: 1; }
.susa-gkape__titlebar span { color: #65717a; }
.susa-gkape__titlebar i { margin-left: auto; font-style: normal; }
.susa-gkape__mission { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.65rem 0.8rem; padding: 0.8rem; align-items: center; border-bottom: 1px solid #b8cfe1; background: #edf7ff; }
.susa-gkape__task { display: grid; min-height: 3.5rem; padding: 0.55rem 0.7rem; align-content: center; border: 1px solid #c2dced; border-left: 0.18rem solid #078cdc; border-radius: 0.35rem; background: rgba(255, 255, 255, 0.88); }
.susa-gkape__mission small { color: #087abc; font-size: 0.5rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.susa-gkape__mission strong { font-size: 0.75rem; }
.susa-gkape__mission span { margin-top: 0.15rem; color: #4f6779; font-size: 0.6rem; line-height: 1.5; }
.susa-gkape__mission ol { grid-column: 1 / -1; display: flex !important; width: 100%; margin: 0 !important; padding: 0.2rem 0 0 !important; list-style: none; }
.susa-gkape__mission li { position: relative; display: grid; flex: 1 1 0; gap: 0.15rem; justify-items: center; margin: 0 !important; color: #6b7780; font-size: 0.52rem; }
.susa-gkape__mission li:not(:last-child)::after { position: absolute; z-index: 0; top: 0.65rem; left: 58%; width: 84%; height: 1px; background: #a9cce5; content: ""; }
.susa-gkape__mission li b { z-index: 1; display: grid; width: 1.3rem; height: 1.3rem; place-items: center; border: 1px solid #9ebbd0; border-radius: 50%; background: #fff; }
.susa-gkape__mission li[aria-current="step"] { color: #087abc; font-weight: 700; }
.susa-gkape__mission li[aria-current="step"] b { border-color: #078cdc; color: #fff; background: #078cdc; }
.susa-gkape__mission li[data-complete] b { border-color: #2daa73; color: #fff; background: #2daa73; }
.susa-gkape__mission > button { align-self: center; min-width: 5.4rem; min-height: 2.1rem; padding: 0.35rem 0.75rem !important; border-color: #4d98ca !important; color: #075f96 !important; background: #f8fcff !important; }
.susa-gkape__mission > button:is(:hover, :focus-visible), .susa-gkape__mission > button[aria-expanded="true"] { color: #fff !important; background: #087abc !important; }
.susa-gkape__hint-panel { position: relative; grid-column: 1 / -1; display: grid; grid-template-columns: auto auto minmax(0, 1fr); gap: 0.65rem; padding: 0.65rem 2.6rem 0.65rem 0.8rem; align-items: center; border: 1px solid #55a6d7; border-left: 0.22rem solid #078cdc; border-radius: 0.35rem; color: #173f59; background: #fff; box-shadow: 0 0.4rem 1rem rgba(17, 77, 116, 0.12); }
.susa-gkape__hint-panel[hidden] { display: none; }
.susa-gkape__hint-panel > span { display: grid; min-width: 4.4rem; min-height: 1.55rem; place-items: center; border-right: 1px solid #c7dfef; color: #087abc; font-size: 0.5rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.susa-gkape__hint-panel strong { display: flex; align-items: center; color: #164c6d; font-size: 0.64rem; }
.md-typeset .susa-gkape__hint-panel p { margin: 0; color: #405b6d; font-size: 0.58rem; line-height: 1.45; }
.md-typeset .susa-gkape__hint-panel code { color: #075f96; background: #e7f4fc; }
.susa-gkape__hint-panel > button { position: absolute; top: 0.42rem; right: 0.48rem; width: 1.55rem; height: 1.55rem; padding: 0; border: 0; color: #526c7d; background: transparent; font-size: 1rem; line-height: 1; }
.susa-gkape__mission button, .susa-gkape footer button, .susa-gkape__results button { padding: 0.35rem 0.55rem; border: 1px solid #8fa2b1; border-radius: 0.2rem; color: #243846; background: #fff; font: inherit; font-size: 0.55rem; font-weight: 700; cursor: pointer; }
.susa-gkape__menubar { display: flex; gap: 1rem; padding: 0.28rem 0.55rem; border-bottom: 1px solid #c4c7ca; background: #f5f5f5; font-size: 0.54rem; }
.susa-gkape__menubar em { margin-left: auto; font-style: normal; }
.susa-gkape__workspace { display: grid; grid-template-columns: 1fr 1fr; gap: 0.45rem; padding: 0.45rem; }
.susa-gkape__pane { min-width: 0; padding: 0.45rem; border: 1px solid #b9bdc1; background: #f3f3f3; }
.md-typeset .susa-gkape__pane h4 { margin: -0.8rem 0 0.35rem; width: max-content; padding: 0 0.3rem; background: #f3f3f3; font-size: 0.62rem; }
.susa-gkape__pane > label { display: grid; grid-template-columns: 5.4rem minmax(0, 1fr); gap: 0.4rem; align-items: center; margin: 0.25rem 0; font-size: 0.54rem; }
.susa-gkape__pane input:not([type]) { min-width: 0; height: 1.35rem; border: 1px solid #9ca4aa; background: #fff; font: inherit; }
.susa-gkape__filter { display: flex; min-height: 1.55rem; margin-top: 0.45rem; padding: 0.18rem 0.35rem; align-items: center; justify-content: space-between; border: 1px solid #aeb3b7; border-bottom: 0; color: #a42323; background: #f7f7f7; font-size: 0.48rem; font-weight: 700; }
.susa-gkape__filter input { width: 6.5rem; height: 1.05rem; border: 1px solid #b9bdc1; background: #fff; font: inherit; font-size: 0.46rem; }
.susa-gkape__pane.is-muted { opacity: 0.48; }
.susa-gkape__pane.is-muted p { margin: 0.5rem 0 0; font-size: 0.52rem; }
.susa-gkape__table { overflow: hidden; margin-top: 0; border: 1px solid #aeb3b7; background: #fff; }
.susa-gkape__table > div, .susa-gkape__table > button { display: grid; grid-template-columns: 1.25rem minmax(6rem, 1.2fr) minmax(4.5rem, 0.8fr) minmax(7rem, 1.4fr); width: 100%; min-width: 0; align-items: center; text-align: left; }
.susa-gkape__table > div { background: #e4e7e9; }
.susa-gkape__table > button { padding: 0; border: 0; border-top: 1px solid #d5d8da; color: #28323a; background: #fff; cursor: pointer; font: inherit; }
.susa-gkape__table > button:disabled { cursor: default; }
.susa-gkape__table > :is(div, button) > * { overflow: hidden; padding: 0.27rem 0.32rem; font-size: 0.5rem; text-overflow: ellipsis; white-space: nowrap; }
.susa-gkape__table button i { display: block; width: 0.65rem; height: 0.65rem; margin: auto; border: 1px solid #92999e; background: #fff; }
.susa-gkape__table button.is-selected { color: #073e63; background: #cfe6f7; box-shadow: inset 0.14rem 0 #078cdc; }
.susa-gkape__table button.is-selected i { display: grid; place-items: center; border-color: #087abc; color: #fff; background: #087abc; }
.susa-gkape__table button.is-selected i::after { display: block; color: #fff !important; content: "\2713"; font-family: Arial, sans-serif; font-size: 0.58rem; font-style: normal; font-weight: 900; line-height: 0.65rem; text-align: center; }
.susa-gkape__options { display: flex; gap: 0.65rem; margin-top: 0.45rem; align-items: center; font-size: 0.5rem; }
.susa-gkape__command { display: grid; gap: 0.2rem; margin: 0 0.45rem; padding: 0.4rem; border: 1px solid #b9bdc1; background: #f8f8f8; }
.susa-gkape__command strong { font-size: 0.52rem; }
.susa-gkape__command code { overflow-x: auto; padding: 0.35rem; color: #1d2830; background: #fff; font-size: 0.58rem; white-space: nowrap; }
.susa-gkape > footer { display: flex; gap: 0.4rem; padding: 0.45rem; align-items: center; border-top: 1px solid #c4c7ca; background: #efefef; }
.susa-gkape > footer span { margin-right: auto; font-size: 0.55rem; }
.susa-gkape > footer small { color: #65717a; font-size: 0.48rem; white-space: nowrap; }
.susa-gkape > footer [data-gkape-execute] { border-color: #087abc; color: #fff; background: #087abc; }
.susa-gkape > footer button:disabled { opacity: 0.45; cursor: not-allowed; }
.susa-gkape__results { padding: 0.85rem; border: 1px solid #9ccdb3; border-top: 0.18rem solid #2daa73; border-radius: 0 0 0.35rem 0.35rem; background: #f4fbf7; }
.susa-gkape__results > header { display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding-bottom: 0.65rem; border-bottom: 1px solid #c9e1d4; }
.susa-gkape__results > header > div { display: grid; }
.susa-gkape__results > header small { color: #24865b; font-size: 0.48rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.susa-gkape__results > header span { display: flex; gap: 0.35rem; align-items: center; color: #48705c; font-size: 0.55rem; }
.susa-gkape__results > header span b { padding: 0.18rem 0.35rem; border-radius: 999px; color: #187849; background: #d8f1e4; font-size: 0.48rem; text-transform: uppercase; }
.md-typeset .susa-gkape__review-note { margin: 0.65rem 0; padding: 0.55rem 0.65rem; border-left: 0.16rem solid #078cdc; color: #38566a; background: #edf7fd; }
.susa-gkape__coverage, .susa-gkape__decision { padding: 0.7rem; border: 1px solid #c3ded0; border-radius: 0.4rem; background: rgba(255, 255, 255, 0.62); }
.susa-gkape__decision { margin-top: 0.65rem; }
.susa-gkape__coverage > div:first-child, .susa-gkape__decision > div:first-child { display: flex; gap: 0.55rem; align-items: center; }
.susa-gkape__coverage > div:first-child > b, .susa-gkape__decision > div:first-child > b { display: grid; width: 1.4rem; height: 1.4rem; flex: 0 0 auto; place-items: center; border-radius: 50%; color: #fff; background: #078cdc; font-size: 0.55rem; }
.susa-gkape__coverage > div:first-child span, .susa-gkape__decision > div:first-child span { display: grid; }
.susa-gkape__coverage small, .susa-gkape__decision small { color: #607782; font-size: 0.5rem; }
.susa-gkape__result-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.45rem; margin-top: 0.65rem; }
.susa-gkape__results article { display: grid; padding: 0.55rem; border: 1px solid #bcdcca; border-radius: 0.3rem; background: rgba(255, 255, 255, 0.78); }
.susa-gkape__results article b { font-size: 0.62rem; }
.susa-gkape__results article span, .susa-gkape__results p, .susa-gkape__results label { font-size: 0.56rem; }
.susa-gkape__decision-controls { display: flex; gap: 0.65rem; margin-top: 0.55rem; align-items: center; }
.susa-gkape__decision-controls label { flex: 1 1 auto; }
.susa-gkape__results select { width: 100%; min-height: 1.8rem; padding: 0.3rem 0.4rem; }
.susa-gkape__decision-controls button { flex: 0 0 auto; min-height: 1.8rem; padding: 0.3rem 0.65rem; }
.susa-gkape__results [data-gkape-feedback].is-correct { color: #187849; font-weight: 700; }
.susa-gkape__results [data-gkape-feedback].is-incorrect { color: #a83e3e; font-weight: 700; }
.susa-gkape__results > footer { display: flex; gap: 0.75rem; margin-top: 0.75rem; padding: 0.65rem 0.75rem; align-items: center; justify-content: space-between; border: 1px solid #bad9e9; border-radius: 0.35rem; color: #234b65; background: #e5f1f8; font-size: 0.6rem; }
.susa-gkape__results > footer span { display: grid; line-height: 1.4; }
.susa-gkape__results > footer span strong { color: #164c6d; font-size: 0.62rem; }
.susa-gkape__results > footer button:not(:disabled) { border-color: #087abc; color: #fff; background: #087abc; }
.susa-gkape__results > footer button:disabled { opacity: 0.48; cursor: not-allowed; }

@media screen and (max-width: 52rem) {
  .susa-tool-intro, .susa-gkape__workspace { grid-template-columns: 1fr; }
  .susa-tool-intro__logo { width: 5rem; }
  .susa-gkape__mission { grid-template-columns: 1fr; }
  .susa-gkape__mission > button { grid-row: 2; }
  .susa-gkape__mission ol { grid-row: 3; }
  .susa-gkape__hint-panel { grid-row: 4; grid-template-columns: 1fr; align-items: start; }
  .susa-gkape__hint-panel > span { justify-content: start; border-right: 0; }
  .susa-gkape > footer { flex-wrap: wrap; }
  .susa-gkape > footer small { order: 3; width: 100%; }
  .susa-gkape__result-cards { grid-template-columns: repeat(2, 1fr); }
  .susa-gkape__decision-controls { align-items: stretch; flex-direction: column; }
}

.susa-tool-workbench > header {
  display: grid;
  padding: 0.9rem 1rem;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 0.72rem;
  color: #eff8ff;
  background: linear-gradient(135deg, #071d34, color-mix(in srgb, var(--workbench-accent) 68%, #071d34));
}
.susa-tool-workbench__icon { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; border: 1px solid #72c7ff; border-radius: 0.38rem; color: #bde3ff; font-size: 0.58rem; font-weight: 800; }
.susa-tool-workbench > header strong, .susa-tool-workbench > header small { display: block; }
.susa-tool-workbench > header strong { color: #fff; font-size: 0.84rem; }
.susa-tool-workbench > header small { margin-top: 0.12rem; color: #c1d8e9; font-size: 0.59rem; }
.susa-tool-workbench > header > b { color: #b6ddf8; font-size: 0.59rem; white-space: nowrap; }
.susa-tool-workbench.is-complete > header > b { color: #83e0c1; }
.susa-tool-workbench__safe { display: flex; padding: 0.58rem 0.8rem; align-items: baseline; gap: 0.55rem; border-bottom: 1px solid #cddbe6; color: #17324a; background: #e5f4ff; font-size: 0.62rem; }
.susa-tool-workbench__safe span { color: #51697d; }
.md-typeset .susa-tool-workbench__stepper { position: relative; display: grid !important; margin: 0 !important; padding: 0.65rem 1rem !important; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; background: #edf3f7; }
.md-typeset .susa-tool-workbench__stepper::before { position: absolute; top: 1.24rem; right: 12.5%; left: 12.5%; height: 1px; background: #a9cce6; content: ""; }
.md-typeset .susa-tool-workbench__stepper li { z-index: 1; display: grid; margin: 0 !important; place-items: center; gap: 0.18rem; color: #587086; font-size: 0.56rem; }
.susa-tool-workbench__stepper b { display: grid; width: 1.2rem; height: 1.2rem; place-items: center; border: 1px solid #9db7cb; border-radius: 50%; color: #46647b; background: #f7fafc; font-size: 0.55rem; }
.susa-tool-workbench__stepper li.is-current { color: var(--workbench-accent); font-weight: 750; }
.susa-tool-workbench__stepper li.is-current b { border-color: var(--workbench-accent); color: #fff; background: var(--workbench-accent); }
.susa-tool-workbench__stepper li.is-complete b { border-color: #28a77c; color: #fff; background: #28a77c; }
.susa-tool-workbench__workspace { margin: 0.85rem; overflow: hidden; border: 1px solid #bdcdd9; border-radius: 0.48rem; color: #233d52; background: #fff; }
.susa-tool-workbench__workspace > header { display: flex; padding: 0.58rem 0.7rem; align-items:center; justify-content: space-between; gap: 0.5rem; color: #eaf6ff; background: #173247; font-size: 0.6rem; }
.susa-tool-workbench__workspace-icon { width:1rem; height:1rem; margin:0!important; border:0!important; object-fit:contain; }
.susa-tool-workbench--terminal .susa-tool-workbench__workspace > header small { margin-left:auto; }
.susa-tool-workbench__workspace > header small { color: #9eb9cc; }
.susa-tool-workbench__workspace > section { min-height: 16rem; padding: 0.9rem; }
.susa-tool-workbench__workspace > section[hidden] { display: none; }
.susa-tool-workbench__workspace > section:focus { outline: none; }
.susa-tool-workbench__workspace > section > span { color: var(--workbench-accent); font-size: 0.56rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.md-typeset .susa-tool-workbench__workspace h3 { margin: 0.3rem 0 0.35rem !important; font-size: 0.9rem; }
.md-typeset .susa-tool-workbench__workspace section > p { margin: 0.25rem 0 0.65rem; color: #607589; font-size: 0.64rem; }
.susa-tool-workbench__choices { display: grid; gap: 0.42rem; }
.susa-tool-workbench__choices button, .susa-tool-workbench__hint-button { padding: 0.56rem 0.65rem; border: 1px solid #ccd9e2; border-radius: 0.34rem; color: #263f52; background: #f8fafb; font: inherit; font-size: 0.64rem; text-align: left; cursor: pointer; }
.susa-tool-workbench__choices button:is(:hover, :focus-visible), .susa-tool-workbench__hint-button:is(:hover, :focus-visible) { border-color: var(--workbench-accent); }
.susa-tool-workbench button.is-correct, .susa-tool-workbench tr.is-correct { border-color: #28a77c; background: #e9f8f2; }
.susa-tool-workbench button.is-incorrect, .susa-tool-workbench tr.is-incorrect { border-color: #d85b66; background: #fff0f1; }
.susa-tool-workbench form { margin: 0.7rem 0; }
.susa-tool-workbench form label { display: block; margin-bottom: 0.28rem; color: #456177; font-size: 0.59rem; font-weight: 700; }
.susa-tool-workbench form > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
.susa-tool-workbench form input { min-width: 0; padding: 0.48rem 0.55rem; border: 1px solid #94adbf; border-radius: 0.32rem 0 0 0.32rem; font: inherit; font-family: var(--md-code-font-family); font-size: 0.62rem; }
.susa-tool-workbench form button { padding: 0.48rem 0.65rem; border: 1px solid var(--workbench-accent); border-radius: 0 0.32rem 0.32rem 0; color: #fff; background: var(--workbench-accent); font: inherit; font-size: 0.61rem; font-weight: 750; cursor: pointer; }
.susa-tool-workbench__hint-button { padding: 0.4rem 0.58rem; color: var(--workbench-accent); background: transparent; }
.md-typeset .susa-tool-workbench [data-workbench-hint] { display: grid; margin: .6rem 0 0 !important; padding: .65rem .72rem; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: .2rem .7rem; border: 1px solid #bdd9eb; border-left: .18rem solid var(--workbench-accent); border-radius: .3rem; color: #294a60; background: #edf7ff; font-family: var(--md-text-font-family,"Segoe UI",Arial,sans-serif); font-size: .64rem; line-height: 1.55; }
.md-typeset .susa-tool-workbench [data-workbench-hint][hidden] { display: none; }
.md-typeset .susa-tool-workbench [data-workbench-hint] b { display: block; color: var(--workbench-accent); font-size: .54rem; font-weight: 700; letter-spacing: .06em; line-height: 1.5; text-transform: uppercase; white-space: nowrap; }
.md-typeset .susa-tool-workbench [data-workbench-hint] span { display: block; min-width: 0; color: #294a60; font-family: var(--md-text-font-family,"Segoe UI",Arial,sans-serif); letter-spacing: normal; }
.md-typeset .susa-tool-workbench__task { display: grid; margin: .45rem 0 .7rem !important; padding: .55rem .65rem; grid-template-columns: auto 1fr; gap: .55rem; border-left: .18rem solid var(--workbench-accent); background: #edf7ff; line-height: 1.5; }
.md-typeset .susa-tool-workbench__task b { color: var(--workbench-accent); font-size: .54rem; letter-spacing: .055em; text-transform: uppercase; white-space: nowrap; }
.susa-tool-workbench__table { overflow-x: auto; margin-top: 0.7rem; }
.susa-tool-workbench__table table { width: 100%; border-collapse: collapse; font-size: 0.61rem; }
.susa-tool-workbench__table th { color: #ddebF5; background: #26475f; text-align: left; }
.susa-tool-workbench__table th, .susa-tool-workbench__table td { padding: 0.5rem; border: 1px solid #c8d5df; }
.susa-tool-workbench__table tbody tr { cursor: pointer; }
.md-typeset .susa-tool-workbench p.is-correct { color: #247b61; }
.md-typeset .susa-tool-workbench p.is-incorrect { color: #a43f49; }
.susa-tool-workbench > footer { display: flex; padding: 0.7rem 0.85rem; align-items: center; justify-content: space-between; gap: 0.7rem; border-top: 1px solid #cbd9e3; color: #344f64; background: #e9f0f5; }
.susa-tool-workbench.has-correct-feedback > footer { border-top-color: #28a77c; color: #145d46; background: #e3f6ef; }
.susa-tool-workbench.has-incorrect-feedback > footer { border-top-color: #d85b66; color: #8f2f3a; background: #fdebed; }
.susa-tool-workbench > footer strong { font-size: 0.62rem; }
.susa-tool-workbench > footer > div { display: flex; gap: 0.35rem; }
.susa-tool-workbench > footer button { padding: 0.38rem 0.55rem; border: 1px solid var(--workbench-accent); border-radius: 0.3rem; color: var(--workbench-accent); background: #fff; font: inherit; font-size: 0.58rem; font-weight: 700; cursor: pointer; }
.susa-tool-workbench > footer button:disabled { border-color: #bdcbd5; color: #8a9aa6; cursor: not-allowed; }
.susa-tool-workbench > footer .susa-tool-workbench__next:not(:disabled) { color: #fff; background: var(--workbench-accent); }

.susa-practice-sequence { display: grid; gap: 0.8rem; margin: 0.9rem 0 1.4rem; }
.susa-practice-sequence .susa-knowledge-check { margin: 0; }
.susa-practice-sequence .susa-knowledge-check__prompt span { min-width: 4.6rem; }
.susa-practice-sequence__status {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(8rem, 0.55fr) auto;
  gap: 0.85rem;
  align-items: center;
  padding: 0.85rem 1rem;
  border: 1px solid color-mix(in srgb, var(--md-accent-fg-color) 38%, transparent);
  border-radius: 0.65rem;
  background: linear-gradient(135deg, color-mix(in srgb, var(--md-default-bg-color) 88%, #dff2ff 12%), var(--md-default-bg-color));
}
.susa-practice-sequence__status > div:first-child { display: grid; gap: 0.12rem; }
.susa-practice-sequence__status small { color: var(--md-accent-fg-color); font-size: 0.62rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase; }
.susa-practice-sequence__status strong { font-size: 0.8rem; }
.susa-practice-sequence__status span { color: var(--md-default-fg-color--light); font-size: 0.68rem; }
.susa-practice-sequence__meter { height: 0.42rem; overflow: hidden; border-radius: 999px; background: var(--md-default-fg-color--lightest); }
.susa-practice-sequence__meter i { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--md-accent-fg-color); transition: width 220ms ease; }
.susa-practice-sequence__status.is-complete .susa-practice-sequence__meter i { background: #2faf89; }
.susa-practice-sequence__status button { padding: 0.45rem 0.65rem; border: 1px solid var(--md-default-fg-color--lightest); border-radius: 0.38rem; color: var(--md-default-fg-color); background: var(--md-default-bg-color); font: inherit; font-size: 0.66rem; font-weight: 700; cursor: pointer; }
.susa-practice-sequence .susa-knowledge-check { transition: opacity 180ms ease, transform 180ms ease; }
.susa-practice-sequence .susa-knowledge-check:not(.is-current) { display: none; }
.susa-practice-sequence .susa-knowledge-check.is-exiting-forward { animation: susa-sequence-exit-forward 190ms ease-in both; pointer-events: none; }
.susa-practice-sequence .susa-knowledge-check.is-exiting-back { animation: susa-sequence-exit-back 190ms ease-in both; pointer-events: none; }
.susa-practice-sequence .susa-knowledge-check.is-entering-forward { animation: susa-sequence-enter-forward 280ms ease-out both; }
.susa-practice-sequence .susa-knowledge-check.is-entering-back { animation: susa-sequence-enter-back 280ms ease-out both; }
.susa-practice-sequence__status button:disabled { opacity: 0.45; cursor: not-allowed; }
.susa-tool-workbench--winpmem { --workbench-accent: #2b9fe8; }
.susa-tool-workbench--winpmem .susa-tool-workbench__workspace { border-color: #587083; color: #d9e8f2; background: #081925; box-shadow: inset 0 0 0 1px rgba(255,255,255,.03); }
.susa-tool-workbench--winpmem .susa-tool-workbench__workspace > header { border-bottom: 1px solid #426279; color: #fff; background: #122b3c; }
.susa-tool-workbench--winpmem .susa-tool-workbench__workspace > section { color: #d9e8f2; background: linear-gradient(145deg,#081925,#0c2231); font-family: Consolas,"Courier New",monospace; }
.md-typeset .susa-tool-workbench--winpmem .susa-tool-workbench__workspace h3 { color: #fff; font-family: Consolas,"Courier New",monospace; }
.md-typeset .susa-tool-workbench--winpmem .susa-tool-workbench__workspace section > p { color: #c5d9e6; font-size: 0.68rem; line-height: 1.55; }
.susa-tool-workbench--winpmem .susa-tool-workbench__choices button { min-height: 2.35rem; border-color: #4d7188; color: #edf8ff; background: #102b3d; font-size: 0.67rem; line-height: 1.45; }
.susa-tool-workbench--winpmem .susa-tool-workbench__choices button.is-correct { border-color: #3bc493; color: #eafff7; background: #124b3c; }
.susa-tool-workbench--winpmem .susa-tool-workbench__choices button.is-incorrect { border-color: #e26b76; color: #fff1f2; background: #56252d; }
.susa-tool-workbench--winpmem form label { color: #9fd7fa; }
.susa-tool-workbench--winpmem form > div::before { display: grid; padding: 0 .5rem; align-items: center; border: 1px solid #52738a; border-right: 0; color: #6dc7ff; background: #06131c; content: "C:\\Tools\\WinPmem>"; font-family: Consolas,"Courier New",monospace; font-size: .6rem; }
.susa-tool-workbench--winpmem form > div { grid-template-columns: auto minmax(0,1fr) auto; }
.susa-tool-workbench--winpmem form input { border-color: #52738a; border-radius: 0; color: #eef8ff; background: #06131c; caret-color: #65c5ff; }
.susa-tool-workbench__guided-hint { display: grid; gap: 0.4rem; margin: 0.7rem 0; justify-items: start; }
.susa-tool-workbench__guided-hint .susa-tool-workbench__hint-button,
.susa-tool-workbench__guided-hint > button { width: auto; padding: 0.38rem 0.58rem; border: 1px solid #3c6782; border-radius: 0.32rem; color: #a9ddff; background: #102b3d; font: inherit; font-size: 0.61rem; font-weight: 700; cursor: pointer; }
.md-typeset .susa-tool-workbench--winpmem [data-workbench-hint] { display: grid; width: 100%; margin: 0 !important; padding: 0.62rem 0.72rem; grid-template-columns: auto minmax(0, 1fr); gap: 0.65rem; align-items: start; border: 1px solid #367aa5; border-left: 0.2rem solid #2b9fe8; border-radius: 0.3rem; color: #e2f4ff; background: #123149; font-family: "Segoe UI",Arial,sans-serif; font-size: 0.65rem; line-height: 1.5; }
.md-typeset .susa-tool-workbench--winpmem [data-workbench-hint][hidden] { display: none; }
.susa-tool-workbench--winpmem [data-workbench-hint] b { color: #73c9ff; font-size: 0.58rem; letter-spacing: 0.06em; text-transform: uppercase; }
.susa-tool-workbench--winpmem .susa-tool-workbench__table table { color: #e8f5fd; background: #0e2636; font-size: 0.65rem; }
.susa-tool-workbench--winpmem .susa-tool-workbench__table th { border-color: #69869a; color: #fff; background: #28516b; }
.susa-tool-workbench--winpmem .susa-tool-workbench__table td { border-color: #587387; color: #e1f1fb; background: #112e40; }
.susa-tool-workbench--winpmem .susa-tool-workbench__table tr.is-correct td { border-color: #35b889; color: #effff9; background: #164b3d; }
.susa-tool-workbench--winpmem .susa-tool-workbench__table tr.is-incorrect td { border-color: #dd6873; color: #fff1f2; background: #54252c; }
.md-typeset .susa-tool-workbench--winpmem p.is-correct { color: #62e0b2; font-weight: 700; }
.md-typeset .susa-tool-workbench--winpmem p.is-incorrect { color: #ff929b; font-weight: 700; }
.susa-tool-workbench--winpmem > footer strong { font-size: 0.66rem; line-height: 1.45; }
.susa-evidence-flow { display: grid; margin: 1rem 0; padding: .8rem; grid-template-columns: repeat(9,auto); align-items: center; justify-content: space-between; gap: .35rem; border: 1px solid #a8d5f5; border-radius: .55rem; background: linear-gradient(135deg,#eef8ff,#f8fbff); }
.susa-evidence-flow span { display: flex; min-height: 2.35rem; padding: .4rem .55rem; align-items: center; gap: .35rem; border: 1px solid #d3e3ed; border-radius: .4rem; background: rgba(255,255,255,.82); font-size: .65rem; font-weight: 700; }
.susa-evidence-flow span b { display: grid; width: 1.25rem; height: 1.25rem; place-items: center; border-radius: 50%; color: #fff; background: #0c94df; font-size: .55rem; }
.susa-evidence-flow i { color: #0c94df; font-size: 1rem; font-style: normal; animation: susa-flow-pulse 2.2s ease-in-out infinite; }
@keyframes susa-flow-pulse { 50% { opacity: .38; transform: translateX(.12rem); } }
@media screen and (max-width: 60em) { .susa-evidence-flow { grid-template-columns: 1fr; justify-items: stretch; } .susa-evidence-flow i { display: none; } }
@media (prefers-reduced-motion: reduce) { .susa-evidence-flow i { animation: none; } }
.susa-practice-sequence__actions { display: flex; gap: 0.35rem; }
@keyframes susa-sequence-exit-forward { from { opacity: 1; transform: translateX(0); } to { opacity: 0; transform: translateX(-12%); } }
@keyframes susa-sequence-exit-back { from { opacity: 1; transform: translateX(0); } to { opacity: 0; transform: translateX(12%); } }
@keyframes susa-sequence-enter-forward { from { opacity: 0; transform: translateX(12%); } to { opacity: 1; transform: translateX(0); } }
@keyframes susa-sequence-enter-back { from { opacity: 0; transform: translateX(-12%); } to { opacity: 1; transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { .susa-practice-sequence .susa-knowledge-check:is(.is-exiting-forward, .is-exiting-back, .is-entering-forward, .is-entering-back) { animation: none; } }
.susa-practice-sequence .susa-knowledge-check.is-locked { opacity: 0.54; }
.susa-practice-sequence .susa-knowledge-check.is-locked .susa-knowledge-check__prompt::after { display: block; margin-top: 0.35rem; color: var(--md-default-fg-color--light); content: "Complete the previous decision to unlock this stage."; font-size: 0.66rem; font-weight: 500; }
.susa-practice-sequence .susa-knowledge-check.is-locked :is(.susa-knowledge-check__answers, .susa-knowledge-check__feedback) { display: none; }
.susa-practice-sequence .susa-knowledge-check.is-locked .susa-knowledge-check__prompt { border-bottom: 0; }
.susa-practice-sequence .susa-knowledge-check__answers button:disabled { cursor: not-allowed; }

@media screen and (max-width: 48em) {
  .susa-practice-sequence__status { grid-template-columns: 1fr; }
  .susa-practice-sequence__status button { justify-self: start; }
}

.susa-challenge-hero {
  display: grid;
  margin: 1rem 0 1.25rem;
  padding: 1.35rem;
  grid-template-columns: minmax(0, 1.35fr) minmax(15rem, 0.9fr);
  align-items: stretch;
  gap: 1.2rem;
  border: 1px solid rgba(75, 159, 255, 0.34);
  border-radius: 0.8rem;
  background: radial-gradient(circle at 88% 18%, rgba(75, 159, 255, 0.17), transparent 35%), linear-gradient(135deg, color-mix(in srgb, var(--md-default-bg-color) 91%, #dff2ff 9%), var(--md-default-bg-color));
  box-shadow: 0 1rem 2.4rem rgba(9, 30, 66, 0.09);
}

.susa-lab-shell {
  margin: 0.75rem 0 1.5rem;
}

.susa-challenge-shell {
  margin: 0.75rem 0 1.5rem;
}

.susa-lab-shell__content { padding: 0; }
.susa-lab-shell__content > :last-child { margin-bottom: 0; }

/* A new-tab lab is a focused document rather than another expanded overlay. */
body.susa-lab-standalone {
  min-height: 100dvh;
  overflow: auto;
  background: var(--md-default-bg-color);
}

body.susa-lab-standalone > :not(.susa-standalone-lab-page) { display: none !important; }

.susa-standalone-lab-page {
  box-sizing: border-box;
  width: 100%;
  min-height: 100dvh;
  margin: 0;
  padding: clamp(0.45rem, 1.6vw, 1.25rem);
}

.susa-standalone-lab-page .susa-lab-shell {
  width: 100%;
  max-width: none;
  margin: 0;
}

.susa-standalone-lab-page .susa-standalone-lab-host,
.susa-standalone-lab-page .susa-standalone-lab-target {
  width: 100%;
  max-width: none;
  margin: 0;
}

.susa-standalone-lab-page .cdk-browser-lab__view-actions { display: none !important; }
.susa-standalone-lab-page .susa-standalone-hidden { display: none !important; }

.susa-challenge-hero__copy > span,
.susa-challenge-hero__path > b {
  color: var(--md-accent-fg-color);
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.md-typeset .susa-challenge-hero h3 { margin: 0.45rem 0 0.55rem !important; font-size: 1.22rem; font-weight: 750; }
.md-typeset .susa-challenge-hero p { margin: 0; color: var(--md-default-fg-color--light); font-size: 0.75rem; line-height: 1.55; }
.susa-challenge-hero__copy small { display: block; margin-top: 0.8rem; padding-top: 0.65rem; border-top: 1px solid rgba(75, 159, 255, 0.22); color: var(--md-default-fg-color--light); font-size: 0.6rem; font-weight: 650; }

.susa-challenge-hero__path {
  display: grid;
  padding: 0.9rem;
  place-items: center;
  align-content: center;
  border: 1px solid rgba(75, 159, 255, 0.3);
  border-radius: 0.65rem;
  background: color-mix(in srgb, var(--md-default-bg-color) 86%, #dceeff 14%);
}

.md-typeset .susa-challenge-hero__path ol { position: relative; display: grid; width: 100%; margin: 0.65rem 0 0.8rem !important; padding: 0 !important; grid-template-columns: repeat(3, 1fr); list-style: none; }
.md-typeset .susa-challenge-hero__path ol::before { position: absolute; top: 0.64rem; right: 17%; left: 17%; height: 1px; background: rgba(75, 159, 255, 0.55); content: ""; }
.md-typeset .susa-challenge-hero__path li { z-index: 1; display: grid; margin: 0 !important; place-items: center; gap: 0.2rem; color: var(--md-default-fg-color--light); font-size: 0.55rem; }
.susa-challenge-hero__path li span { display: grid; width: 1.28rem; height: 1.28rem; place-items: center; border: 1px solid var(--md-accent-fg-color); border-radius: 50%; color: var(--md-accent-fg-color); background: var(--md-default-bg-color); font-size: 0.57rem; font-weight: 800; }
.susa-challenge-hero__path a { padding: 0.48rem 0.72rem; border-radius: 0.3rem; color: #fff; background: var(--md-accent-fg-color); font-size: 0.62rem; font-weight: 750; }
.susa-challenge-hero__path a:is(:hover, :focus-visible) { filter: brightness(1.08); }

@media screen and (max-width: 44rem) {
  .susa-tool-context { grid-template-columns: 1fr; }
  .susa-interactive-lab > header { grid-template-columns: auto 1fr; }
  .susa-interactive-lab > header > b { grid-column: 2; }
  .susa-interactive-lab > footer { align-items: stretch; flex-direction: column; }
  .susa-interactive-lab > footer > div { display: grid; grid-template-columns: repeat(3, 1fr); }
  .susa-interactive-lab__safe { align-items: flex-start; flex-direction: column; gap: 0.15rem; }
  .susa-challenge-hero { grid-template-columns: 1fr; padding: 1rem; }
  .susa-kansa-lab > header { grid-template-columns: auto 1fr; }
  .susa-kansa-lab > header > b { grid-column: 2; }
  .susa-kansa-lab__workspace { grid-template-columns: 1fr; }
  .susa-kansa-lab form { grid-template-columns: 1fr auto; }
  .susa-kansa-lab form label { grid-column: 1 / -1; }
  .susa-kansa-lab > footer { align-items: stretch; flex-direction: column; }
  .susa-kansa-lab > footer > div { display: grid; grid-template-columns: repeat(3, 1fr); }
  .susa-tool-workbench > header { grid-template-columns: auto 1fr; }
  .susa-tool-workbench > header > b { grid-column: 2; }
  .susa-tool-workbench__safe { align-items: flex-start; flex-direction: column; gap: 0.15rem; }
  .susa-tool-workbench__workspace > header { flex-direction: column; }
  .susa-tool-workbench > footer { align-items: stretch; flex-direction: column; }
  .susa-tool-workbench > footer > div { display: grid; grid-template-columns: repeat(3, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
  .susa-interactive-lab *,
  .susa-interactive-lab *::before,
  .susa-interactive-lab *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
  .susa-kansa-lab *,
  .susa-kansa-lab *::before,
  .susa-kansa-lab *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
  .susa-tool-workbench *,
  .susa-tool-workbench *::before,
  .susa-tool-workbench *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
}
