.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);
}

/* FTK Imager browser exercise */
.susa-ftk-lab { overflow: hidden; border: 1px solid #7d8d99; border-radius: .45rem; color: #18232c; background: #f1f3f4; box-shadow: 0 .7rem 1.6rem rgba(28,47,62,.14); font-family: "Segoe UI",Arial,sans-serif; }
.susa-ftk-lab__titlebar { display:flex; min-height:2.4rem; padding:.35rem .65rem; align-items:center; gap:.5rem; border-bottom:1px solid #9ea8af; background:#f4f4f4; }
.susa-ftk-lab__titlebar img { width:1.45rem; height:1.45rem; object-fit:contain; border-radius:.2rem; background:#171717; }.susa-ftk-lab__titlebar strong{font-size:.72rem}.susa-ftk-lab__titlebar span{color:#687781;font-size:.63rem}.susa-ftk-lab__titlebar i{margin-left:auto;font-style:normal}
.susa-ftk-lab__mission { margin:.5rem .65rem; padding:.5rem .7rem; border-left:.18rem solid #078cdc; background:#e9f5fc; }.susa-ftk-lab__mission div{display:grid;gap:.1rem}.susa-ftk-lab__mission small{color:#0879bd;font-size:.52rem;font-weight:800;letter-spacing:.07em}.susa-ftk-lab__mission strong{font-size:.74rem}.susa-ftk-lab__mission span{font-size:.62rem}
.md-typeset .susa-ftk-lab__steps { display:grid!important; margin:0!important; padding:.18rem 1rem .5rem!important; grid-template-columns:repeat(5,minmax(0,1fr))!important; list-style:none!important; }.md-typeset .susa-ftk-lab__steps>li{position:relative;display:grid!important;width:auto!important;margin:0!important;padding:0!important;justify-items:center;gap:.1rem;color:#657783;font-size:.56rem;list-style:none!important}.md-typeset .susa-ftk-lab__steps>li::before{position:absolute;top:.58rem;left:calc(-50% + .7rem);width:calc(100% - 1.4rem);height:1px;background:#9ec9e4;content:""}.md-typeset .susa-ftk-lab__steps>li:first-child::before{display:none}.susa-ftk-lab__steps b{z-index:1;display:grid;width:1.18rem;height:1.18rem;place-items:center;border:1px solid #8ab8d4;border-radius:50%;color:#31566d;background:#fff}.susa-ftk-lab__steps .is-current b{color:#fff;border-color:#078cdc;background:#078cdc}.susa-ftk-lab__steps .is-complete b{color:#fff;border-color:#2eaf83;background:#2eaf83}
.susa-ftk-lab__workspace { display:grid; min-height:14rem; margin:0 .65rem; grid-template-columns:minmax(7rem,22%) 1fr; border:1px solid #9aa5ac; background:#fff; }.susa-ftk-lab__workspace>aside{display:grid;padding:.45rem;align-content:start;gap:.35rem;border-right:1px solid #9aa5ac;font-size:.59rem}.susa-ftk-lab__workspace>aside>strong{padding-bottom:.25rem;border-bottom:1px solid #aaa}.susa-ftk-lab__workspace>aside>span{color:#76858e}.susa-ftk-lab__workspace>aside>div{padding:.35rem;border:1px solid #ccd3d7;background:#f6f8f9;line-height:1.55}
.susa-ftk-lab__workspace>main>header{display:flex;padding:.3rem .45rem;align-items:center;gap:1rem;color:#fff;background:#087fc1;font-size:.6rem}.susa-ftk-lab__workspace>main>header small{margin-left:auto;color:#e6f5ff}.susa-ftk-lab__workspace>main>section{display:grid;max-width:27rem;margin:.55rem auto;padding:.7rem;gap:.4rem;border:1px solid #b8c2c8;background:#f7f8f9}.susa-ftk-lab__workspace h4{margin:0!important;font-size:.84rem!important}.susa-ftk-lab__workspace section>small{color:#087fc1;font-size:.52rem;font-weight:800;letter-spacing:.07em}.susa-ftk-lab__workspace section>p{margin:0!important;color:#65747e;font-size:.62rem}.susa-ftk-lab__workspace section>label:not(.susa-ftk-lab__field){padding:.38rem;border:1px solid #d2d8dc;background:#fff;font-size:.64rem}
.susa-ftk-lab__field{display:grid;gap:.3rem;font-size:.64rem;font-weight:700}.susa-ftk-lab__field :is(input,select){width:100%;min-height:2rem;padding:.35rem .45rem;border:1px solid #8c9aa3;color:#17242c;background:#fff;font:inherit}.susa-ftk-lab__check{display:flex!important;align-items:center;gap:.4rem}.susa-ftk-lab__summary dl{display:grid;margin:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.susa-ftk-lab__summary dl div{padding:.4rem;border:1px solid #d2d8dc;background:#fff}.susa-ftk-lab__summary dt{color:#087fc1;font-size:.54rem;font-weight:800;text-transform:uppercase}.susa-ftk-lab__summary dd{margin:.1rem 0 0;font-size:.62rem;overflow-wrap:anywhere}.susa-ftk-lab__summary pre{margin:.5rem 0 0;padding:.55rem;border:1px solid #aeb9c0;color:#dcecff;background:#172733;font-size:.62rem}
.susa-ftk-lab__coach{display:grid;margin:.45rem .65rem;padding:.4rem .55rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;border:1px solid #8bc5e8;background:#e9f6fd;font-size:.61rem}.susa-ftk-lab__coach strong{color:#087fc1;text-transform:uppercase}.susa-ftk-lab__coach button{padding:.26rem .45rem;border:1px solid #6fa9ca;background:#fff;font:inherit;cursor:pointer}.susa-ftk-lab__coach p{grid-column:1/-1;margin:0!important;padding:.35rem;border-left:.15rem solid #078cdc;background:#fff}.susa-ftk-lab>footer{display:flex;min-height:2.5rem;padding:.4rem .65rem;align-items:center;gap:.55rem;border-top:1px solid #9aa5ac;background:#e9f0f4;font-size:.6rem}.susa-ftk-lab>footer div{display:flex;margin-left:auto;gap:.3rem}.susa-ftk-lab>footer button{padding:.32rem .5rem;border:1px solid #7d99a9;background:#fff;font:inherit;font-weight:700}.susa-ftk-lab>footer button:last-child:not(:disabled){color:#fff;border-color:#078cdc;background:#078cdc}.susa-ftk-lab button:disabled{opacity:.48}
@media screen and (max-width:720px){.susa-ftk-lab__workspace{grid-template-columns:1fr}.susa-ftk-lab__workspace>aside{border-right:0;border-bottom:1px solid #9aa5ac}.susa-ftk-lab__coach{grid-template-columns:1fr}.susa-ftk-lab>footer{align-items:stretch;flex-direction:column}.susa-ftk-lab>footer div{margin-left:0;flex-wrap:wrap}}

/* FTK staged workspace: one decision screen at a time. */
.susa-ftk-lab__workspace > main { overflow: hidden; }
.susa-ftk-lab__workspace > main > section[hidden] { display: none !important; }
.susa-ftk-lab__workspace > main > section.is-entering-forward { animation: susa-ftk-forward .28s ease-out both; }
.susa-ftk-lab__workspace > main > section.is-entering-back { animation: susa-ftk-back .28s ease-out both; }
.susa-ftk-lab__workspace > main > section.is-exiting-forward { animation: susa-ftk-exit .19s ease-in both; pointer-events: none; }
.susa-ftk-lab__workspace section > p { color: #4c626f; line-height: 1.5; }
.susa-ftk-lab__workspace section > label:not(.susa-ftk-lab__field) { cursor: pointer; }
.susa-ftk-lab__coach { grid-template-columns: 1fr auto; padding: .5rem .6rem; border-radius: .3rem; }
.susa-ftk-lab__coach > div { display: grid; gap: .08rem; }
.susa-ftk-lab__coach > div strong { color: #087fc1; font-size: .53rem; letter-spacing: .07em; }
.susa-ftk-lab__coach > div span { color: #334d5c; font-weight: 600; }
.susa-ftk-lab__coach > button { padding: .3rem .55rem; border-color: #168ac9; border-radius: .2rem; color: #0876b4; font-weight: 700; }
.susa-ftk-lab__coach > section { grid-column: 1 / -1; margin: 0 !important; padding: .55rem .65rem; border: 0; border-left: .18rem solid #078cdc; background: #fff; color: #334d5c; line-height: 1.5; }
.susa-ftk-lab__coach > section strong { display: block; margin-bottom: .12rem; color: #087fc1; font-size: .53rem; letter-spacing: .07em; }
@keyframes susa-ftk-forward { from { opacity: .25; transform: translateX(24%); } to { opacity: 1; transform: translateX(0); } }
@keyframes susa-ftk-back { from { opacity: .25; transform: translateX(-24%); } to { opacity: 1; transform: translateX(0); } }
@keyframes susa-ftk-exit { from { opacity: 1; transform: translateX(0); } to { opacity: 0; transform: translateX(-18%); } }
@media (prefers-reduced-motion: reduce) { .susa-ftk-lab__workspace > main > section.is-entering-forward, .susa-ftk-lab__workspace > main > section.is-entering-back, .susa-ftk-lab__workspace > main > section.is-exiting-forward { animation: none; } }
.susa-ftk-lab.is-complete > footer { border-top-color: #70c9a4; color: #145f43; background: #e2f6ed; }
.susa-ftk-lab.is-complete > footer > span { font-weight: 800; }
.susa-ftk-lab.is-complete > footer > span::before { margin-right: .3rem; content: "✓"; color: #169563; font-size: .8rem; }

.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::before { position: absolute; top: 1.24rem; right: 12.5%; left: 12.5%; height: 1px; background: #a9cce6; content: ""; }
.md-typeset .susa-kansa-lab__stepper li { z-index: 1; display: grid; margin: 0 !important; place-items: center; gap: 0.18rem; color: #587086; font-size: 0.56rem; }
.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__terminal { display: grid; min-height: 20rem; overflow: hidden; grid-template-rows: auto 1fr auto; border: 1px solid #31485d; border-radius: 0.38rem; color: #edf7ff; background: #081a29; box-shadow: inset 0 0 1.4rem rgba(0, 0, 0, 0.35); }
.susa-kansa-lab__terminal-bar { display: flex; padding: 0.48rem 0.65rem; justify-content: space-between; border-bottom: 1px solid #344c61; color: #d9ecfb; background: #173247; font-size: 0.58rem; }
.susa-kansa-lab__terminal-bar > span { display: inline-flex; align-items: center; gap: 0.35rem; }
.susa-kansa-lab__terminal-bar img { width: 1rem; height: 1rem; object-fit: contain; }
.susa-kansa-lab__terminal-bar small { color: #86a7bf; }
.susa-kansa-lab__output { overflow: auto; max-height: 19rem; padding: 0.75rem; font-family: var(--md-code-font-family); font-size: 0.59rem; line-height: 1.55; }
.md-typeset .susa-kansa-lab__output p { margin: 0 0 0.16rem; overflow-wrap: anywhere; }
.susa-kansa-lab__output .is-command { margin-top: 0.65rem !important; color: #8fd1ff; }
.susa-kansa-lab__output .is-result { color: #d9f4e8; }
.susa-kansa-lab__output .is-error { color: #ff9fa8; }
.susa-kansa-lab form { display: grid; padding: 0.55rem; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 0.35rem; border-top: 1px solid #344c61; background: #10283b; }
.susa-kansa-lab form label { color: #74c5ff; font-family: var(--md-code-font-family); font-size: 0.58rem; white-space: nowrap; }
.susa-kansa-lab form input { min-width: 0; padding: 0.38rem 0.45rem; border: 1px solid #42627b; border-radius: 0.22rem; outline: none; color: #f1f8fd; background: #071823; font-family: var(--md-code-font-family); font-size: 0.58rem; }
.susa-kansa-lab form input:focus { border-color: #52baff; box-shadow: 0 0 0 0.08rem rgba(82, 186, 255, 0.25); }
.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__terminal { grid-row: 2; 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; }
.md-typeset .susa-kansa-lab__task h3, .md-typeset .susa-kansa-lab__assessment h3 { margin: 0.35rem 0 0.5rem !important; font-size: 0.8rem; }
.md-typeset .susa-kansa-lab__task p { color: #607589; font-size: 0.65rem; line-height: 1.5; }
.susa-kansa-lab__task button { width: 100%; margin-top: 0.5rem; }
.susa-kansa-lab__task small { display: block; margin-top: 0.45rem; color: #80909d; font-size: 0.55rem; text-align: center; }
.susa-kansa-lab__hint { margin-top: 0.65rem; padding-top: 0.6rem; border-top: 1px solid #dce5eb; }
.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 { 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; 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-kansa-lab > footer strong { font-size: 0.62rem; }
.susa-kansa-lab > footer > div { display: flex; 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; }

/* 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; }

.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; }
}
