.rasd-launch {
  padding: 112px 0;
  color: #eef7ff;
  background:
    radial-gradient(circle at 18% 18%, rgba(42, 206, 255, .22), transparent 30rem),
    radial-gradient(circle at 82% 82%, rgba(54, 232, 155, .16), transparent 28rem),
    linear-gradient(135deg, #061126 0%, #0a2045 54%, #081832 100%);
}

.rasd-launch-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr);
  align-items: center;
  gap: 70px;
}

.rasd-launch-copy h2 {
  margin: 18px 0 18px;
  max-width: 760px;
  font-size: clamp(38px, 5.4vw, 68px);
  line-height: 1.1;
  letter-spacing: -.055em;
}

.rasd-launch-copy > p {
  max-width: 720px;
  margin: 0;
  color: rgba(226, 239, 255, .76);
  font-size: 17px;
}

.rasd-launch-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.rasd-launch-signals {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 24px;
}

.rasd-launch-signals span {
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  color: rgba(233, 244, 255, .78);
  background: rgba(255,255,255,.055);
  font-size: 12px;
  font-weight: 850;
}

.rasd-orbit-card {
  position: relative;
  min-height: 520px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 42px;
  background:
    radial-gradient(circle at center, rgba(45, 195, 255, .15), transparent 36%),
    rgba(255,255,255,.045);
  box-shadow: 0 42px 110px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.035);
  overflow: hidden;
}

.rasd-orbit-card::before,
.rasd-orbit-card::after {
  content: "";
  position: absolute;
  inset: 50%;
  transform: translate(-50%, -50%);
  border: 1px dashed rgba(85, 213, 255, .24);
  border-radius: 50%;
}

.rasd-orbit-card::before { width: 360px; height: 360px; }
.rasd-orbit-card::after { width: 260px; height: 260px; }

.rasd-orbit-core {
  position: absolute;
  z-index: 3;
  inset: 50% auto auto 50%;
  display: grid;
  place-items: center;
  width: 190px;
  height: 190px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(108, 225, 255, .45);
  border-radius: 50%;
  text-align: center;
  background: linear-gradient(145deg, rgba(22, 91, 210, .88), rgba(16, 45, 92, .9));
  box-shadow: 0 0 70px rgba(36, 158, 255, .24);
}

.rasd-orbit-core strong { font-size: 22px; letter-spacing: -.03em; }
.rasd-orbit-core span { margin-top: -44px; color: rgba(237,248,255,.68); font-size: 12px; }

.rasd-orbit-node {
  position: absolute;
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 150px;
  padding: 13px 14px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 18px;
  background: rgba(8, 28, 60, .78);
  box-shadow: 0 18px 44px rgba(0,0,0,.2);
  backdrop-filter: blur(12px);
}

.rasd-orbit-node b {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 11px;
  color: #07172d;
  background: #53dcff;
  font-size: 11px;
}

.rasd-orbit-node span { font-size: 13px; font-weight: 900; }
.node-file { top: 54px; right: 50%; transform: translateX(50%); }
.node-map { top: 44%; right: 22px; }
.node-agent { bottom: 48px; right: 50%; transform: translateX(50%); }
.node-verify { top: 44%; left: 22px; }

.rasd-app-shell {
  min-height: 100vh;
  color: #eaf4ff;
  background:
    radial-gradient(circle at 8% 5%, rgba(40, 184, 255, .16), transparent 30rem),
    radial-gradient(circle at 92% 16%, rgba(55, 230, 156, .11), transparent 27rem),
    linear-gradient(180deg, #061126, #08182f 52%, #071326);
}

.rasd-topbar {
  position: sticky;
  top: 0;
  z-index: 60;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
  min-height: 82px;
  padding: 13px clamp(22px, 4vw, 62px);
  border-bottom: 1px solid rgba(255,255,255,.09);
  background: rgba(5, 17, 38, .82);
  backdrop-filter: blur(22px) saturate(1.25);
}

.rasd-brand {
  display: flex;
  align-items: center;
  gap: 12px;
}

.rasd-brand img {
  width: 48px;
  height: 48px;
  padding: 7px;
  border-radius: 16px;
  background: #fff;
}

.rasd-brand span { display: grid; line-height: 1.15; }
.rasd-brand strong { font-size: 19px; font-weight: 950; }
.rasd-brand em { color: rgba(223,240,255,.58); font-size: 10px; font-style: normal; font-weight: 800; }

.rasd-topnav {
  display: flex;
  justify-content: center;
  gap: 8px;
}

.rasd-topnav a {
  padding: 8px 13px;
  border-radius: 999px;
  color: rgba(231,243,255,.68);
  font-size: 13px;
  font-weight: 900;
}

.rasd-topnav a.active,
.rasd-topnav a:hover {
  color: #fff;
  background: rgba(63, 195, 255, .12);
}

.rasd-stage-badge {
  padding: 8px 12px;
  border: 1px solid rgba(70, 225, 159, .22);
  border-radius: 999px;
  color: #aaf7d0;
  background: rgba(48, 216, 139, .09);
  font-size: 11px;
  font-weight: 950;
}

.rasd-layout-body {
  width: min(1240px, calc(100% - 44px));
  margin-inline: auto;
  padding: 70px 0 100px;
}

.rasd-footer {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 24px clamp(22px, 4vw, 62px);
  border-top: 1px solid rgba(255,255,255,.08);
  color: rgba(226,240,255,.54);
  font-size: 12px;
}

.rasd-footer a { color: #7edfff; font-weight: 900; }

.rasd-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  align-items: center;
  gap: 70px;
  min-height: 620px;
}

.rasd-kicker {
  display: inline-flex;
  padding: 7px 12px;
  border: 1px solid rgba(69, 211, 255, .25);
  border-radius: 999px;
  color: #93e7ff;
  background: rgba(50, 189, 255, .08);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.rasd-hero h1,
.rasd-workspace-head h1 {
  margin: 19px 0 18px;
  max-width: 820px;
  font-size: clamp(46px, 6.7vw, 82px);
  line-height: 1.04;
  letter-spacing: -.065em;
}

.rasd-hero-copy > p,
.rasd-workspace-head p {
  max-width: 760px;
  margin: 0;
  color: rgba(226,240,255,.67);
  font-size: 17px;
}

.rasd-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin-top: 30px;
}

.rasd-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 10px 18px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 950;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.rasd-button:hover { transform: translateY(-2px); }
.rasd-button.primary { color: #061126; background: linear-gradient(135deg, #65e5ff, #61efae); border-color: transparent; }
.rasd-button.secondary { color: #eaf5ff; background: rgba(255,255,255,.055); }
.rasd-button:disabled { opacity: .55; cursor: wait; transform: none; }

.rasd-intelligence-board {
  padding: 22px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 34px;
  background: linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.025));
  box-shadow: 0 42px 110px rgba(0,0,0,.24);
}

.rasd-board-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  color: rgba(231,244,255,.68);
  font-size: 12px;
  font-weight: 900;
}

.rasd-board-head i {
  padding: 6px 9px;
  border-radius: 999px;
  color: #aaf7d0;
  background: rgba(52, 218, 143, .1);
  font-style: normal;
}

.rasd-flow-step {
  display: grid;
  grid-template-columns: 42px 1fr auto;
  align-items: center;
  gap: 13px;
  margin-top: 10px;
  padding: 15px;
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 19px;
  background: rgba(4, 16, 36, .42);
}

.rasd-flow-step b {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 13px;
  color: rgba(229,242,255,.66);
  background: rgba(255,255,255,.06);
}

.rasd-flow-step span { display: grid; }
.rasd-flow-step strong { font-size: 14px; }
.rasd-flow-step small { margin-top: 2px; color: rgba(222,238,255,.48); font-size: 11px; }
.rasd-flow-step em { color: rgba(222,238,255,.58); font-size: 11px; font-style: normal; font-weight: 900; }
.rasd-flow-step.done b { color: #06162d; background: #5aeab0; }
.rasd-flow-step.active { border-color: rgba(72, 208, 255, .35); background: rgba(38, 145, 219, .12); }
.rasd-flow-step.active b { color: #07172d; background: #60dcff; }

.rasd-principles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 28px 0 110px;
}

.rasd-principles article,
.rasd-stack article,
.rasd-foundation-grid article {
  padding: 26px;
  border: 1px solid rgba(255,255,255,.095);
  border-radius: 26px;
  background: rgba(255,255,255,.04);
}

.rasd-principles span,
.rasd-foundation-grid article > span {
  color: #68dfff;
  font-size: 11px;
  font-weight: 950;
}

.rasd-principles h2,
.rasd-foundation-grid h2 {
  margin: 13px 0 8px;
  font-size: 20px;
  letter-spacing: -.03em;
}

.rasd-principles p,
.rasd-foundation-grid p {
  margin: 0;
  color: rgba(225,240,255,.58);
  font-size: 13px;
}

.rasd-architecture { padding: 20px 0 90px; }

.rasd-section-heading { max-width: 820px; margin-bottom: 34px; }
.rasd-section-heading > span,
.rasd-privacy-card span,
.rasd-next-build span { color: #73e1ff; font-size: 12px; font-weight: 950; }
.rasd-section-heading h2,
.rasd-privacy-card h2,
.rasd-next-build h2 {
  margin: 10px 0;
  font-size: clamp(32px, 4.6vw, 56px);
  line-height: 1.12;
  letter-spacing: -.055em;
}
.rasd-section-heading p { margin: 0; color: rgba(226,240,255,.58); }

.rasd-stack {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.rasd-stack article { min-height: 220px; }
.rasd-stack i {
  display: inline-flex;
  padding: 6px 9px;
  border-radius: 9px;
  color: #07172d;
  background: #6fe4ff;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}
.rasd-stack h3 { margin: 28px 0 9px; font-size: 18px; }
.rasd-stack p { margin: 0; color: rgba(225,240,255,.56); font-size: 13px; }

.rasd-privacy-card {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  align-items: end;
  gap: 50px;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid rgba(90, 226, 174, .18);
  border-radius: 36px;
  background: linear-gradient(135deg, rgba(47, 220, 144, .09), rgba(52, 159, 255, .07));
}
.rasd-privacy-card p { margin: 0; color: rgba(226,240,255,.64); }

.rasd-workspace-head {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 32px;
  padding: 50px 0 38px;
}
.rasd-workspace-head h1 { font-size: clamp(40px, 5vw, 64px); }

.rasd-status-banner {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 22px;
  padding: 15px 18px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 17px;
  background: rgba(255,255,255,.045);
}
.rasd-status-banner strong { font-size: 13px; }
.rasd-status-banner span { color: rgba(229,242,255,.62); font-size: 12px; }
.rasd-status-banner.success { border-color: rgba(75, 232, 160, .25); background: rgba(45, 208, 133, .08); }
.rasd-status-banner.warning { border-color: rgba(255, 193, 94, .25); background: rgba(255, 180, 62, .07); }

.rasd-foundation-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
.rasd-foundation-grid article { min-height: 220px; }
.rasd-foundation-grid em {
  display: block;
  margin-top: 24px;
  color: rgba(111, 225, 255, .65);
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .03em;
}

.rasd-next-build {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 46px;
  margin-top: 70px;
  padding: 38px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 30px;
  background: rgba(255,255,255,.035);
}
.rasd-next-build ol { margin: 0; padding-right: 22px; color: rgba(226,240,255,.68); }
.rasd-next-build li { padding: 7px 4px; }

@media (max-width: 1050px) {
  .rasd-launch-grid,
  .rasd-hero { grid-template-columns: 1fr; }
  .rasd-orbit-card { width: min(620px, 100%); margin-inline: auto; }
  .rasd-stack { grid-template-columns: repeat(2, 1fr); }
  .rasd-topbar { grid-template-columns: auto 1fr; }
  .rasd-stage-badge { display: none; }
}

@media (max-width: 760px) {
  .rasd-launch { padding: 82px 0; }
  .rasd-launch-grid { gap: 40px; }
  .rasd-orbit-card { min-height: 430px; }
  .rasd-orbit-card::before { width: 310px; height: 310px; }
  .rasd-orbit-card::after { width: 220px; height: 220px; }
  .rasd-orbit-core { width: 155px; height: 155px; }
  .rasd-orbit-node { min-width: 128px; padding: 10px; }
  .node-map { right: 8px; }
  .node-verify { left: 8px; }

  .rasd-topbar { padding: 10px 16px; }
  .rasd-topnav { justify-content: flex-end; }
  .rasd-topnav a:not(.active) { display: none; }
  .rasd-layout-body { width: min(100% - 28px, 1240px); padding-top: 35px; }
  .rasd-hero { min-height: auto; gap: 42px; padding: 45px 0; }
  .rasd-principles,
  .rasd-stack,
  .rasd-foundation-grid { grid-template-columns: 1fr; }
  .rasd-privacy-card,
  .rasd-next-build { grid-template-columns: 1fr; gap: 20px; }
  .rasd-workspace-head { align-items: stretch; flex-direction: column; }
  .rasd-workspace-head .rasd-button { width: 100%; }
  .rasd-footer { flex-direction: column; }
}

/* Rasd operational workspace */
.rasd-account-menu {
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(229,242,255,.72);
  font-size: 12px;
  font-weight: 900;
}
.rasd-account-menu form { margin: 0; }
.rasd-account-menu button {
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 10px;
  color: #eaf4ff;
  background: rgba(255,255,255,.055);
  cursor: pointer;
}
.rasd-button.wide { width: 100%; }
.rasd-inline-link,
.rasd-back-link {
  color: #75dfff;
  font-size: 12px;
  font-weight: 900;
}
.rasd-back-link { display: inline-flex; margin-bottom: 18px; }
.rasd-loading-card,
.rasd-empty-state {
  display: grid;
  place-items: center;
  min-height: 360px;
  padding: 44px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 30px;
  text-align: center;
  background: rgba(255,255,255,.035);
}
.rasd-loading-card { align-content: center; gap: 14px; }
.rasd-spinner {
  width: 34px;
  height: 34px;
  border: 3px solid rgba(255,255,255,.12);
  border-top-color: #63defe;
  border-radius: 50%;
  animation: rasd-spin .85s linear infinite;
}
@keyframes rasd-spin { to { transform: rotate(360deg); } }
.rasd-empty-state h1 { margin: 8px 0; font-size: clamp(34px, 5vw, 58px); }
.rasd-empty-state p { max-width: 650px; margin: 0 0 24px; color: rgba(229,242,255,.6); }
.rasd-auth-required { margin-block: 45px; }

.rasd-activation-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, .72fr);
  align-items: center;
  gap: clamp(40px, 7vw, 100px);
  min-height: calc(100vh - 230px);
  padding: 58px 0 80px;
}
.rasd-activation-copy h1,
.rasd-page-heading h1,
.rasd-project-header h1 {
  margin: 15px 0 18px;
  max-width: 850px;
  font-size: clamp(42px, 6vw, 76px);
  line-height: 1.04;
  letter-spacing: -.055em;
}
.rasd-activation-copy > p,
.rasd-page-heading p,
.rasd-project-header p {
  max-width: 720px;
  margin: 0;
  color: rgba(226,240,255,.64);
  font-size: 16px;
}
.rasd-security-points { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 28px; }
.rasd-security-points span {
  padding: 8px 11px;
  border: 1px solid rgba(101,225,255,.16);
  border-radius: 999px;
  color: rgba(225,242,255,.72);
  background: rgba(42,151,211,.08);
  font-size: 11px;
  font-weight: 900;
}
.rasd-form-card,
.rasd-guide-card,
.rasd-panel,
.rasd-project-state-card {
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(255,255,255,.065), rgba(255,255,255,.025));
  box-shadow: 0 28px 80px rgba(0,0,0,.18);
}
.rasd-form-card { display: grid; gap: 20px; padding: clamp(25px, 4vw, 38px); }
.rasd-form-heading { display: grid; gap: 4px; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.08); }
.rasd-form-heading strong { font-size: 21px; }
.rasd-form-heading span { color: rgba(225,240,255,.5); font-size: 12px; }
.rasd-form-card label { display: grid; gap: 8px; }
.rasd-form-card label > span,
.rasd-template-name > span { font-size: 12px; font-weight: 950; }
.rasd-form-card input,
.rasd-form-card select,
.rasd-column-table select,
.rasd-template-name input {
  width: 100%;
  min-height: 48px;
  padding: 10px 13px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 13px;
  outline: none;
  color: #eff8ff;
  background: rgba(4,18,40,.74);
  font: inherit;
}
.rasd-form-card input:focus,
.rasd-form-card select:focus,
.rasd-column-table select:focus,
.rasd-template-name input:focus { border-color: rgba(87,217,255,.7); box-shadow: 0 0 0 3px rgba(69,191,255,.1); }
.rasd-form-card option,
.rasd-column-table option { color: #102039; background: #fff; }
.rasd-form-card small,
.rasd-readonly-field small { color: rgba(225,240,255,.48); font-size: 11px; }
.rasd-check-row { display: flex !important; grid-template-columns: auto 1fr; align-items: center; }
.rasd-check-row input { width: 17px; min-height: 17px; accent-color: #5de0ff; }
.rasd-readonly-field { display: grid; gap: 5px; padding: 16px; border: 1px solid rgba(88,224,177,.15); border-radius: 15px; background: rgba(59,210,146,.06); }
.rasd-readonly-field > span { color: #68e3b3; font-size: 11px; font-weight: 950; }

.rasd-dashboard-head { padding-bottom: 38px; }
.rasd-head-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.rasd-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin: 10px 0 22px;
}
.rasd-metric-grid article { min-height: 145px; padding: 21px; border: 1px solid rgba(255,255,255,.09); border-radius: 22px; background: rgba(255,255,255,.035); }
.rasd-metric-grid span { color: rgba(224,239,255,.48); font-size: 11px; font-weight: 900; }
.rasd-metric-grid strong { display: block; margin: 13px 0 5px; font-size: 38px; }
.rasd-metric-grid strong.textual { font-size: 18px; }
.rasd-metric-grid small { color: rgba(224,239,255,.45); font-size: 11px; }
.rasd-dashboard-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(270px, .35fr); gap: 18px; margin-bottom: 70px; }
.rasd-panel { padding: 23px; }
.rasd-panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.rasd-panel-head > div { display: grid; gap: 3px; }
.rasd-panel-head span { color: #69defe; font-size: 10px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.rasd-panel-head h2 { margin: 0; font-size: 21px; }
.rasd-panel-head a { color: #72e2ff; font-size: 12px; font-weight: 900; }
.rasd-panel-head em { color: rgba(225,240,255,.48); font-size: 11px; font-style: normal; }
.rasd-empty-inline { display: grid; place-items: center; min-height: 250px; padding: 30px; text-align: center; }
.rasd-empty-inline p { color: rgba(225,240,255,.52); }
.rasd-empty-inline.compact { min-height: 120px; color: rgba(225,240,255,.5); font-size: 12px; }
.rasd-project-list { display: grid; gap: 8px; }
.rasd-project-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 13px;
  padding: 13px;
  border: 1px solid transparent;
  border-radius: 17px;
  background: rgba(255,255,255,.028);
  transition: .18s ease;
}
.rasd-project-row:hover { transform: translateY(-1px); border-color: rgba(85,215,255,.2); background: rgba(65,177,235,.07); }
.rasd-project-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 13px; color: #07172d; background: linear-gradient(135deg, #61ddff, #64eab0); font-weight: 950; }
.rasd-project-copy { display: grid; min-width: 0; }
.rasd-project-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.rasd-project-copy small { overflow: hidden; color: rgba(224,240,255,.46); text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
.rasd-project-row time { color: rgba(224,240,255,.4); font-size: 10px; }
.rasd-status-chip { display: inline-flex; width: fit-content; padding: 6px 9px; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; color: rgba(234,245,255,.68); background: rgba(255,255,255,.05); font-size: 10px; font-weight: 950; }
.rasd-status-chip.analyzed { color: #7fe2ff; border-color: rgba(85,207,255,.2); background: rgba(56,175,228,.08); }
.rasd-status-chip.needs-review { color: #ffd48c; border-color: rgba(255,193,85,.2); background: rgba(255,179,53,.07); }
.rasd-status-chip.mapped { color: #71ebb5; border-color: rgba(78,231,162,.2); background: rgba(52,205,136,.08); }
.rasd-timeline { display: grid; gap: 15px; }
.rasd-timeline article { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 10px; }
.rasd-timeline i { width: 9px; height: 9px; margin-top: 5px; border-radius: 50%; background: #62dfff; box-shadow: 0 0 0 5px rgba(73,200,255,.08); }
.rasd-timeline i.warning { background: #ffc55e; box-shadow: 0 0 0 5px rgba(255,193,85,.08); }
.rasd-timeline div { display: grid; gap: 2px; }
.rasd-timeline strong { font-size: 11px; line-height: 1.55; }
.rasd-timeline small { color: rgba(225,240,255,.4); font-size: 9px; }

.rasd-page-heading { padding: 42px 0 32px; }
.rasd-page-heading h1 { font-size: clamp(40px, 5vw, 66px); }
.rasd-form-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(300px, .42fr); align-items: start; gap: 20px; padding-bottom: 80px; }
.rasd-project-form { min-height: 470px; }
.rasd-guide-card { padding: 27px; }
.rasd-guide-card > span { color: #6cddfc; font-size: 11px; font-weight: 950; }
.rasd-guide-card ol { display: grid; gap: 15px; margin: 20px 0 0; padding: 0; list-style: none; }
.rasd-guide-card li { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 11px; }
.rasd-guide-card li > b { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 10px; color: #06152b; background: #62ddff; }
.rasd-guide-card li div { display: grid; }
.rasd-guide-card li strong { font-size: 12px; }
.rasd-guide-card li small { color: rgba(225,240,255,.45); font-size: 10px; }

.rasd-project-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; padding: 40px 0 28px; }
.rasd-project-header h1 { font-size: clamp(38px, 5vw, 64px); }
.rasd-project-state-card { display: grid; gap: 8px; min-width: 220px; padding: 20px; }
.rasd-project-state-card > span { color: rgba(225,240,255,.48); font-size: 10px; font-weight: 900; }
.rasd-project-state-card small { color: rgba(225,240,255,.42); font-size: 10px; }
.rasd-stepper { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin: 12px 0 22px; }
.rasd-stepper article { display: flex; align-items: center; gap: 10px; padding: 13px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.025); }
.rasd-stepper b { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 10px; color: rgba(235,246,255,.54); background: rgba(255,255,255,.07); }
.rasd-stepper span { display: grid; }
.rasd-stepper strong { font-size: 11px; }
.rasd-stepper small { color: rgba(225,240,255,.4); font-size: 9px; }
.rasd-stepper article.active { border-color: rgba(81,206,255,.28); background: rgba(59,164,221,.08); }
.rasd-stepper article.active b { color: #07172c; background: #61dfff; }
.rasd-stepper article.done b { color: #07172c; background: #64e7ac; }
.rasd-project-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .29fr); align-items: start; gap: 18px; padding-bottom: 80px; }
.rasd-project-main,
.rasd-project-side { display: grid; gap: 18px; }
.rasd-upload-form { display: flex; align-items: stretch; gap: 12px; }
.rasd-file-drop { position: relative; display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 13px; flex: 1; min-height: 100px; padding: 16px; border: 1px dashed rgba(105,220,255,.28); border-radius: 18px; cursor: pointer; background: rgba(50,154,208,.055); }
.rasd-file-drop input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.rasd-file-icon { grid-row: span 2; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; color: #07172d; background: linear-gradient(135deg, #64e7b1, #62dbff); font-size: 10px; font-weight: 950; }
.rasd-file-drop strong { font-size: 13px; }
.rasd-file-drop small { color: rgba(225,240,255,.45); font-size: 10px; }
.rasd-sheet-tabs { display: grid; gap: 8px; }
.rasd-sheet-tabs article { display: flex; align-items: center; justify-content: space-between; padding: 13px; border: 1px solid rgba(255,255,255,.08); border-radius: 15px; background: rgba(255,255,255,.025); }
.rasd-sheet-tabs article.primary { border-color: rgba(75,219,255,.22); background: rgba(51,173,229,.07); }
.rasd-sheet-tabs article div { display: grid; }
.rasd-sheet-tabs strong { font-size: 12px; }
.rasd-sheet-tabs small { color: rgba(225,240,255,.43); font-size: 9px; }
.rasd-sheet-tabs article > span { color: #70e1ff; font-size: 12px; font-weight: 950; }
.rasd-analysis-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 14px; }
.rasd-analysis-summary span { display: grid; gap: 5px; padding: 12px; border: 1px solid rgba(255,255,255,.07); border-radius: 13px; color: #eff8ff; background: rgba(255,255,255,.025); font-size: 14px; font-weight: 950; }
.rasd-analysis-summary b { color: rgba(225,240,255,.43); font-size: 9px; }
.rasd-warning-list { display: grid; gap: 6px; margin: 12px 0; }
.rasd-warning-list span { padding: 9px 11px; border: 1px solid rgba(255,190,72,.15); border-radius: 11px; color: #ffd692; background: rgba(255,174,42,.05); font-size: 10px; }
.rasd-mapping-form { display: grid; gap: 16px; }
.rasd-template-name { display: grid; grid-template-columns: 140px 1fr; align-items: center; gap: 12px; }
.rasd-table-wrap { max-width: 100%; overflow-x: auto; border: 1px solid rgba(255,255,255,.08); border-radius: 17px; }
.rasd-column-table { width: 100%; min-width: 900px; border-collapse: collapse; }
.rasd-column-table th { padding: 11px; color: rgba(225,240,255,.46); background: rgba(255,255,255,.035); font-size: 9px; text-align: right; white-space: nowrap; }
.rasd-column-table td { padding: 11px; border-top: 1px solid rgba(255,255,255,.06); font-size: 10px; vertical-align: middle; }
.rasd-column-table td:nth-child(2) { min-width: 210px; }
.rasd-column-table td strong { display: block; font-size: 11px; }
.rasd-column-table td small { display: block; margin-top: 3px; color: rgba(225,240,255,.38); font-size: 8px; }
.rasd-column-table select { min-width: 170px; min-height: 38px; padding: 6px 9px; font-size: 10px; }
.rasd-column-letter { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; color: #07172d; background: #65defb; font-weight: 950; }
.rasd-semantic-chip { display: inline-flex; padding: 5px 7px; border-radius: 8px; color: rgba(235,246,255,.7); background: rgba(255,255,255,.06); font-size: 9px; font-weight: 950; }
.rasd-semantic-chip.identity { color: #74e4ff; background: rgba(68,186,236,.1); }
.rasd-semantic-chip.name { color: #7be9b7; background: rgba(64,208,143,.09); }
.rasd-semantic-chip.score,
.rasd-semantic-chip.total { color: #ffd189; background: rgba(247,174,61,.08); }
.rasd-mapping-actions { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px; border: 1px solid rgba(80,221,169,.14); border-radius: 15px; background: rgba(43,198,132,.05); }
.rasd-mapping-actions div { display: grid; }
.rasd-mapping-actions strong { font-size: 12px; }
.rasd-mapping-actions small { color: rgba(225,240,255,.44); font-size: 9px; }
.rasd-readiness-card ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.rasd-readiness-card li { position: relative; padding: 10px 30px 10px 10px; border: 1px solid rgba(255,255,255,.07); border-radius: 12px; color: rgba(225,240,255,.48); font-size: 10px; }
.rasd-readiness-card li::before { content: "○"; position: absolute; right: 10px; color: rgba(225,240,255,.38); }
.rasd-readiness-card li.done { color: #7ce9b5; border-color: rgba(68,219,153,.13); background: rgba(46,199,133,.05); }
.rasd-readiness-card li.done::before { content: "✓"; color: #68e6ad; }
.rasd-privacy-side > span { color: #70e1ff; font-size: 10px; font-weight: 950; }
.rasd-privacy-side h2 { margin: 9px 0; font-size: 19px; }
.rasd-privacy-side p { margin: 0; color: rgba(225,240,255,.48); font-size: 11px; line-height: 1.75; }

@media (max-width: 1050px) {
  .rasd-activation-shell,
  .rasd-dashboard-grid,
  .rasd-form-layout,
  .rasd-project-grid { grid-template-columns: 1fr; }
  .rasd-metric-grid { grid-template-columns: repeat(2, 1fr); }
  .rasd-project-side { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .rasd-account-menu span { display: none; }
  .rasd-activation-shell { padding-top: 30px; }
  .rasd-activation-copy h1,
  .rasd-page-heading h1,
  .rasd-project-header h1 { font-size: 40px; }
  .rasd-metric-grid,
  .rasd-stepper,
  .rasd-analysis-summary,
  .rasd-project-side { grid-template-columns: 1fr; }
  .rasd-project-row { grid-template-columns: auto minmax(0, 1fr); }
  .rasd-project-row .rasd-status-chip,
  .rasd-project-row time { grid-column: 2; }
  .rasd-project-header { align-items: stretch; flex-direction: column; }
  .rasd-project-state-card { min-width: 0; }
  .rasd-upload-form,
  .rasd-mapping-actions { align-items: stretch; flex-direction: column; }
  .rasd-template-name { grid-template-columns: 1fr; }
}
.rasd-license-update {
  margin: 0 0 18px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 18px;
  background: rgba(255,255,255,.025);
}
.rasd-license-update summary { padding: 14px 17px; color: rgba(228,242,255,.68); cursor: pointer; font-size: 11px; font-weight: 950; }
.rasd-license-update form { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(220px, .6fr) auto; align-items: center; gap: 12px; padding: 0 17px 17px; }
.rasd-license-update form > div { display: grid; }
.rasd-license-update strong { font-size: 11px; }
.rasd-license-update small { color: rgba(225,240,255,.42); font-size: 9px; }
.rasd-license-update input { min-height: 42px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.12); border-radius: 12px; color: #eff8ff; background: rgba(4,18,40,.72); }
@media (max-width: 800px) { .rasd-license-update form { grid-template-columns: 1fr; } }

/* Rasd Universal V2 */
.rasd-relationship-list{display:grid;gap:.55rem;margin:1rem 0;padding:1rem;border:1px solid rgba(28,107,88,.16);border-radius:16px;background:rgba(28,107,88,.045)}
.rasd-relationship-list>strong{color:#184f43}.rasd-relationship-list>span{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;color:#51635f}.rasd-relationship-list b{color:#176b58}
.rasd-group-grid{display:grid;gap:1rem;margin:1.2rem 0}.rasd-group-card{border:1px solid rgba(42,66,61,.14);border-radius:18px;padding:1rem;background:linear-gradient(135deg,rgba(247,251,250,.96),rgba(255,255,255,.98));box-shadow:0 10px 24px rgba(23,60,52,.05)}
.rasd-group-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.rasd-group-heading div{display:grid;gap:.2rem}.rasd-group-heading span{font-size:.72rem;color:#7b8d88;text-transform:uppercase;letter-spacing:.04em}.rasd-group-heading strong{font-size:1rem;color:#173d35}.rasd-group-heading em{font-style:normal;padding:.35rem .7rem;border-radius:999px;background:#e8f5f1;color:#176b58;font-size:.78rem}
.rasd-group-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.rasd-group-fields label,.rasd-policy-grid label,.rasd-agent-pairing label{display:grid;gap:.35rem}.rasd-group-fields label>span,.rasd-policy-grid label>span,.rasd-agent-pairing label>span{font-size:.75rem;color:#647772}.rasd-group-fields input,.rasd-group-fields select,.rasd-policy-grid input,.rasd-policy-grid select,.rasd-agent-pairing textarea{width:100%;border:1px solid rgba(32,72,63,.18);border-radius:11px;padding:.68rem .75rem;background:#fff;color:#193e36;font:inherit}
.rasd-group-card details{margin-top:.8rem}.rasd-group-card summary{cursor:pointer;color:#176b58;font-weight:700;font-size:.85rem}.rasd-group-items{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.7rem}.rasd-group-items span{display:flex;align-items:center;gap:.35rem;padding:.38rem .55rem;border-radius:10px;background:#f2f7f5;font-size:.76rem;color:#46615b}.rasd-group-items b{color:#176b58}.rasd-group-items small{opacity:.75}
.rasd-universal-map td{vertical-align:top}.rasd-universal-map td:nth-child(2){min-width:230px}.rasd-universal-map input,.rasd-universal-map select{width:100%;min-width:130px;border:1px solid rgba(32,72,63,.16);border-radius:10px;padding:.58rem .62rem;background:#fff;font:inherit;color:#183d35}.rasd-universal-map td:nth-child(4) input{min-width:180px}.rasd-universal-map .rasd-semantic-chip{display:inline-flex;margin:.35rem 0 .15rem}.rasd-semantic-chip.question_item,.rasd-semantic-chip.calculated_value{background:#eef1ff;color:#4d57a8}.rasd-semantic-chip.percentage{background:#fff5df;color:#8a5b00}.rasd-semantic-chip.metadata{background:#eff6f8;color:#3e6670}.rasd-semantic-chip.student_status{background:#fff0ef;color:#9b4038}
.rasd-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:.55rem!important;cursor:pointer}.rasd-check input{width:17px!important;height:17px;margin-top:.12rem;min-width:17px!important}.rasd-check span{font-size:.83rem!important;color:#405c55!important;line-height:1.55}.rasd-check.compact{align-items:center!important}.rasd-check.compact span{white-space:nowrap;font-size:.74rem!important}
.rasd-policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.2rem 0}.rasd-policy-grid>article{display:grid;gap:.72rem;border:1px solid rgba(37,74,65,.13);border-radius:18px;padding:1rem;background:#fbfdfc}.rasd-policy-grid>article>span{font-weight:800;color:#173f36}.rasd-policy-grid p,.rasd-policy-grid small{margin:0;color:#657b75;line-height:1.65;font-size:.82rem}.rasd-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}
.rasd-target-panel p{color:#60756f;line-height:1.8}.rasd-agent-pairing{display:grid;gap:.85rem;margin-top:1rem;padding:1rem;border-radius:16px;background:#f5faf8;border:1px dashed rgba(28,107,88,.28)}.rasd-agent-pairing code{direction:ltr;text-align:left;display:block;padding:.75rem;border-radius:10px;background:#173d35;color:#e8fff7;overflow:auto}.rasd-agent-pairing textarea{direction:ltr;text-align:left;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.75rem;line-height:1.45}.rasd-agent-pairing small{color:#657a74;line-height:1.6}
.rasd-target-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:1rem 0}.rasd-target-summary span{display:grid;gap:.25rem;padding:.8rem;border-radius:13px;background:#f5f9f8;color:#31564e;font-size:.85rem}.rasd-target-summary b{font-size:.72rem;color:#78908a}.rasd-target-fields{display:grid;gap:.55rem}.rasd-target-fields article{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem .9rem;border:1px solid rgba(32,72,63,.12);border-radius:13px}.rasd-target-fields article>div{display:grid;gap:.15rem}.rasd-target-fields strong{color:#173f36}.rasd-target-fields small{color:#728680}.rasd-target-fields article>span{color:#176b58;font-weight:800}
@media(max-width:1050px){.rasd-group-fields{grid-template-columns:1fr 1fr}.rasd-policy-grid{grid-template-columns:1fr}.rasd-target-summary{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.rasd-group-fields,.rasd-inline-fields,.rasd-target-summary{grid-template-columns:1fr}.rasd-universal-map td:nth-child(2),.rasd-universal-map td:nth-child(4) input{min-width:150px}}

/* Rasd Auto Bridge V3 */
.rasd-extension-connect-shell{align-items:center}
.rasd-bridge-card{position:relative;overflow:hidden}
.rasd-bridge-visual{position:relative;width:132px;height:66px;margin:0 auto 18px}
.rasd-bridge-visual span,.rasd-bridge-visual b{position:absolute;top:8px;width:52px;height:52px;border-radius:18px;border:1px solid rgba(101,222,251,.28);background:linear-gradient(145deg,rgba(101,222,251,.16),rgba(30,197,154,.08));box-shadow:0 14px 34px rgba(0,0,0,.16)}
.rasd-bridge-visual span{right:0}.rasd-bridge-visual b{left:0}
.rasd-bridge-visual i{position:absolute;top:31px;right:46px;left:46px;height:3px;border-radius:999px;background:linear-gradient(90deg,#65defb,#47d7a0);box-shadow:0 0 18px rgba(101,222,251,.55)}
.rasd-bridge-visual i::after{content:"";position:absolute;top:-4px;left:50%;width:11px;height:11px;border-radius:50%;background:#7ce9b5;box-shadow:0 0 0 5px rgba(124,233,181,.13);animation:rasdBridgePulse 1.4s ease-in-out infinite}
@keyframes rasdBridgePulse{0%,100%{transform:translateX(-50%) scale(.78);opacity:.55}50%{transform:translateX(-50%) scale(1.06);opacity:1}}
.rasd-bridge-state{display:flex;align-items:center;gap:12px;margin:17px 0;padding:13px 14px;border-radius:15px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035)}
.rasd-bridge-state>div{display:grid;gap:3px}.rasd-bridge-state strong{font-size:12px}.rasd-bridge-state small{font-size:9px;color:rgba(225,240,255,.48)}
.rasd-bridge-state.error{border-color:rgba(255,112,112,.26);background:rgba(176,52,52,.09)}
.rasd-bridge-state.success{border-color:rgba(81,224,159,.25);background:rgba(34,171,113,.08)}
.rasd-bridge-state.verifying{border-color:rgba(101,222,251,.25);background:rgba(58,159,197,.08)}
.rasd-extension-session-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px}
.rasd-extension-session-card>div{display:grid;gap:4px}
.rasd-agent-auto-sync{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
.rasd-agent-sync-icon{position:relative;width:58px;height:42px}
.rasd-agent-sync-icon span,.rasd-agent-sync-icon i{position:absolute;top:8px;width:30px;height:30px;border-radius:10px;background:#e7f7f1;border:1px solid rgba(23,107,88,.18)}
.rasd-agent-sync-icon span{right:0}.rasd-agent-sync-icon i{left:0}
.rasd-agent-sync-icon::after{content:"";position:absolute;top:21px;right:24px;left:24px;height:2px;background:#35a581}
.rasd-agent-auto-sync[data-sync-state="ready"]{border-style:solid;border-color:rgba(33,159,112,.28);background:#f1fbf7}
.rasd-agent-auto-sync[data-sync-state="error"]{border-color:rgba(180,70,70,.28);background:#fff5f4}
@media(max-width:680px){.rasd-extension-session-card,.rasd-agent-auto-sync{align-items:stretch;grid-template-columns:1fr;flex-direction:column}.rasd-agent-sync-icon{display:none}}

/* Rasd Auto Bridge 3.3: stable diagnostic state across Blazor renders */
.rasd-bridge-technical{display:block;margin-top:8px;direction:ltr;text-align:center;font:600 11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:rgba(151,210,236,.72);word-break:break-all}
.rasd-bridge-technical[hidden]{display:none!important}
.rasd-bridge-state.error .rasd-spinner{animation:none;border-color:rgba(255,112,112,.2);border-top-color:#ff8585}
.rasd-bridge-state.success .rasd-spinner{animation:none;border-color:rgba(81,224,159,.25);border-top-color:#51e09f}

/* Rasd Auto Bridge V3.4 — terminal states must never look like an active loop */
.rasd-extension-connect-shell[data-bridge-state="error"] .rasd-bridge-visual i,
.rasd-extension-connect-shell[data-bridge-state="success"] .rasd-bridge-visual i { animation: none !important; }
.rasd-bridge-state.error .rasd-spinner,
.rasd-bridge-state.success .rasd-spinner { animation: none !important; }
.rasd-bridge-technical { overflow-wrap: anywhere; user-select: text; }
@media (prefers-reduced-motion: reduce) {
  .rasd-spinner,
  .rasd-bridge-visual i,
  .rasd-bridge-visual span,
  .rasd-bridge-visual b { animation: none !important; transition: none !important; }
}

/* Rasd 3.0 — production workflow and execution lab */
.rasd-target-next-actions {
  margin-top: 16px;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(76, 201, 196, .24);
  background: linear-gradient(135deg, rgba(56, 189, 248, .08), rgba(52, 211, 153, .08));
}
.rasd-target-next-actions > span { color: rgba(226, 232, 240, .66); font-size: 12px; line-height: 1.75; }

.rasd-lab-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 28px;
  margin-bottom: 22px;
}
.rasd-lab-head h1 { margin: 10px 0 8px; max-width: 860px; font-size: clamp(30px, 4vw, 56px); line-height: 1.12; letter-spacing: -.045em; }
.rasd-lab-head p { margin: 0; max-width: 820px; color: rgba(218, 232, 247, .68); line-height: 1.9; }
.rasd-lab-actions { display: flex; gap: 9px; flex-wrap: wrap; }
.rasd-lab-instructions {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 18px;
}
.rasd-lab-instructions article {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 86px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(135, 169, 201, .18);
  background: rgba(18, 35, 59, .7);
}
.rasd-lab-instructions b {
  width: 38px;
  height: 38px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  color: #08243d;
  background: linear-gradient(135deg, #8ee7ff, #86efac);
  flex: 0 0 auto;
}
.rasd-lab-instructions span { display: grid; gap: 3px; }
.rasd-lab-instructions strong { font-size: 14px; }
.rasd-lab-instructions small { color: rgba(219, 232, 245, .58); line-height: 1.6; }

.rasd-simulator-shell {
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(135, 169, 201, .23);
  background: linear-gradient(180deg, #f8fbff 0%, #eef5fb 100%);
  color: #102034;
  box-shadow: 0 28px 80px rgba(0, 7, 20, .28);
}
.rasd-simulator-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px;
  color: #eef8ff;
  background: linear-gradient(135deg, #0b243b 0%, #174e63 100%);
}
.rasd-simulator-toolbar > div { display: grid; gap: 4px; }
.rasd-simulator-toolbar span { color: #7edfff; font-size: 11px; font-weight: 900; }
.rasd-simulator-toolbar h2 { margin: 0; font-size: 22px; }
.rasd-simulator-context {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  padding: 18px 22px;
  border-bottom: 1px solid #d9e4ee;
}
.rasd-simulator-context label { display: grid; gap: 7px; color: #52657a; font-size: 11px; font-weight: 850; }
.rasd-simulator-context select {
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid #c8d6e3;
  border-radius: 12px;
  color: #183247;
  background: #fff;
  font: inherit;
}
.rasd-simulator-table-wrap { overflow: auto; padding: 0 22px 10px; }
.rasd-simulator-table { width: 100%; min-width: 900px; border-collapse: separate; border-spacing: 0; margin: 16px 0 4px; }
.rasd-simulator-table th,
.rasd-simulator-table td { padding: 12px 10px; text-align: center; border-bottom: 1px solid #dce6ee; }
.rasd-simulator-table th { position: sticky; top: 0; z-index: 1; color: #36536a; background: #e7eff6; font-size: 11px; font-weight: 950; }
.rasd-simulator-table th:first-child { border-radius: 0 13px 0 0; }
.rasd-simulator-table th:last-child { border-radius: 13px 0 0 0; }
.rasd-simulator-table td { color: #213a50; background: rgba(255, 255, 255, .72); font-size: 12px; }
.rasd-simulator-table tr:hover td { background: #fff; }
.rasd-simulator-table input,
.rasd-simulator-table select {
  min-height: 38px;
  border: 1px solid #c8d6e3;
  border-radius: 10px;
  background: #fff;
  color: #162f44;
  font: inherit;
}
.rasd-simulator-table input { width: 84px; padding: 0 8px; text-align: center; }
.rasd-simulator-table input[readonly] { background: #edf3f8; color: #52677b; }
.rasd-simulator-table td select { width: 86px; margin-inline-start: 6px; padding: 0 7px; }
.rasd-simulator-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 17px 22px;
  border-top: 1px solid #d7e2eb;
  background: #fff;
}
.rasd-simulator-footer span { color: #65778a; font-size: 12px; }
.rasd-simulator-message { margin: 14px 22px 0; padding: 12px 14px; border: 1px solid #a7f3d0; border-radius: 14px; color: #047857; background: #ecfdf5; font-weight: 850; }
.rasd-lab-note { margin-top: 16px; padding: 18px 20px; border-radius: 20px; border: 1px solid rgba(135, 169, 201, .2); background: rgba(18, 35, 59, .72); }
.rasd-lab-note strong { display: block; margin-bottom: 6px; color: #89e5ff; }
.rasd-lab-note p { margin: 0; color: rgba(224, 235, 246, .66); line-height: 1.85; }

@media (max-width: 900px) {
  .rasd-lab-head { grid-template-columns: 1fr; align-items: start; }
  .rasd-lab-instructions { grid-template-columns: 1fr; }
  .rasd-simulator-context { grid-template-columns: 1fr; }
  .rasd-target-next-actions, .rasd-simulator-footer { align-items: stretch; flex-direction: column; }
}
