@font-face {
  font-family: "Space Grotesk";
  src: url("/groundwork/assets/space-grotesk-700.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --ink: #111019;
  --muted: #686071;
  --panel: #fffdf9;
  --line: #ded7ce;
  --soft: #f7efe6;
  --brand: #ff7118;
  --brand-dark: #a94600;
  --green: #0f9f67;
  --deep: #08070f;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.connect-notice {
  border-color: rgba(47, 107, 63, 0.35);
}

.connect-field-list,
.connect-permissions {
  display: grid;
  gap: 8px;
  margin: 14px 0;
}

.connect-field-list div {
  border: 1px solid var(--line);
  border-radius: 8px;
  display: grid;
  gap: 4px;
  padding: 10px;
}

.connect-field-list b {
  font-size: 0.74rem;
  text-transform: uppercase;
}

.connect-field-list span {
  font-weight: 700;
}

.connect-field-list em,
.connect-permissions span {
  color: var(--muted);
  font-size: 0.78rem;
  font-style: normal;
}

.connect-review {
  background: rgba(246, 244, 238, 0.8);
  border: 1px solid var(--line);
  border-radius: 8px;
  font-family: inherit;
  font-size: 0.84rem;
  line-height: 1.45;
  margin: 12px 0 0;
  max-height: 260px;
  overflow: auto;
  padding: 12px;
  white-space: pre-wrap;
}

* { box-sizing: border-box; }

html {
  scrollbar-gutter: stable;
}

body {
  margin: 0;
  color: var(--ink);
  background: linear-gradient(180deg, #fffaf3 0, #f7f1e8 48%, #efe8de 100%);
  overflow-y: scroll;
}

button, input, select, textarea { font: inherit; }
button:disabled,
input:disabled,
select:disabled,
textarea:disabled {
  cursor: not-allowed;
  opacity: .72;
}

.shell { min-height: 100vh; padding-bottom: 132px; }

.view-only-shell .route-box,
.view-only-shell .mode,
.view-only-shell .launch-locked {
  position: relative;
}

.view-only-shell select,
.view-only-shell input {
  background: rgba(255,255,255,.72);
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  min-height: 248px;
  padding: 0 16px;
  color: #fffaf3;
  background:
    radial-gradient(circle at 72% 29%, rgba(255,176,74,.18) 0%, rgba(255,176,74,.08) 12%, transparent 26%),
    linear-gradient(90deg, rgba(8,7,15,.97) 0%, rgba(8,7,15,.85) 45%, rgba(8,7,15,.40) 100%),
    linear-gradient(180deg, rgba(8,7,15,.30) 0%, rgba(8,7,15,.10) 50%, rgba(8,7,15,.60) 100%),
    url("/bridge/public/stonepath-hero-bridge.png");
  background-size: 100% 100%, 100% 100%, 100% 100%, min(1320px, 82vw) auto;
  background-position: center, center, center, center 88%;
  background-repeat: no-repeat;
  border-bottom: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 16px 42px rgba(8,7,15,.18);
  backdrop-filter: blur(16px);
}

.topbar-inner {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: center;
  align-content: space-between;
  width: 100%;
  max-width: 1180px;
  min-height: 248px;
  margin: 0 auto;
  padding: 18px 0 16px;
}

.brand-row, .top-actions, .tabs, .stats, .card-head, .ai-head {
  display: flex;
  align-items: center;
}

.brand-row {
  display: flex;
  gap: 12px;
  min-width: 0;
  align-items: flex-start;
  padding-right: 86px;
}
.mark {
  position: relative;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border: 1px solid rgba(23,21,31,.25);
  border-radius: 10px;
  overflow: visible;
  background: #fff;
}
.mark::after {
  content: "StonePath Apps";
  position: absolute;
  top: calc(100% + 7px);
  left: 50%;
  transform: translateX(-50%) translateY(-4px);
  opacity: 0;
  pointer-events: none;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 999px;
  background: rgba(8,7,15,.82);
  color: #fffaf3;
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
  transition: opacity .18s ease, transform .18s ease;
}
.mark:hover::after,
.mark:focus-visible::after {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
.mark img { width: 100%; height: 100%; object-fit: contain; border-radius: inherit; }
.brand h1 {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 7px;
  margin: 0;
  color: #fffaf3;
  font-size: 19px;
  line-height: 1.03;
  letter-spacing: 0;
  font-weight: 850;
  text-shadow: 0 2px 12px rgba(8,7,15,.38);
}
.brand {
  display: grid;
  gap: 8px;
}
.brand-name {
  display: inline-flex;
  align-items: baseline;
  gap: 1px;
  font-size: clamp(36px, 3.4vw, 52px);
  line-height: .94;
}
.brand-base {
  color: rgba(184,178,170,.96);
  font-weight: 850;
}
.brand-jump {
  color: var(--brand);
  font-style: italic;
  font-weight: 950;
}
.brand-by {
  color: rgba(255,250,243,.92);
  font-weight: 850;
}
.brand-company {
  color: rgba(184,178,170,.88);
  font-weight: 900;
}
.brand-version {
  display: inline-block;
  margin-left: 2px;
  color: rgba(255,250,243,.82);
  font-size: 13px;
  font-weight: 900;
  vertical-align: super;
}
.brand p { margin: 3px 0 0; color: rgba(255,250,243,.72); font-weight: 750; }

.top-actions {
  position: absolute;
  top: 18px;
  right: 0;
  z-index: 3;
  display: grid;
  gap: 6px;
  justify-items: end;
}
.theme-switcher { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 148px; gap: 2px; padding: 2px; background: rgba(255,255,255,.78); border: 1px solid rgba(255,255,255,.26); border-radius: 8px; }
.theme-switcher button { min-height: 21px; border: 0; border-radius: 6px; background: transparent; font-size: 9px; font-weight: 950; cursor: pointer; color: var(--muted); }
.theme-switcher button.active { background: var(--deep); color: #fff; }
.stax-gateway {
  display: grid;
  gap: 1px;
  min-height: 36px;
  width: 148px;
  min-width: 148px;
  border: 1px solid rgba(255,113,24,.54);
  border-radius: 10px;
  background: rgba(255,250,243,.92);
  color: #111019;
  padding: 6px 10px;
  box-shadow: 0 10px 28px rgba(255,113,24,.16);
  cursor: pointer;
  text-align: center;
}
.stax-gateway-main {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
}
.stax-gateway-icon {
  width: 23px;
  height: 23px;
  object-fit: contain;
  flex: 0 0 auto;
}
.stax-gateway span {
  color: var(--brand-dark);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .5px;
}
.stax-gateway small {
  color: var(--muted);
  font-size: 9px;
  font-weight: 950;
  line-height: 1.1;
  text-transform: uppercase;
}
.header-tagline {
  max-width: none;
  margin-top: 0;
  color: var(--brand);
  font-family: "Space Mono", ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  font-size: 13px;
  font-weight: 950;
  line-height: 1.25;
  text-align: left;
  white-space: nowrap;
  text-shadow: 0 2px 12px rgba(0,0,0,.30);
  min-height: 1.35em;
}
.tagline-cursor {
  color: var(--brand);
  font-weight: 400;
  animation: cursor-blink .85s step-end infinite;
}
@keyframes cursor-blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}
.workbar {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 16px;
  align-self: end;
  align-items: end;
  justify-content: stretch;
}
.workbar-simple {
  grid-template-columns: 1fr;
  justify-items: center;
}
.workbar-simple .header-stage-nav {
  width: min(880px, 100%);
}
.workbar:not(.workbar-simple) .header-stage-nav {
  justify-self: center;
  width: calc(100% - 32px);
}
.header-auth {
  align-self: end;
  min-width: 0;
}
.tabs { gap: 0; align-self: end; align-items: end; }
.tab, .btn {
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--muted);
  min-height: 44px;
  padding: 10px 16px;
  font-weight: 950;
  cursor: pointer;
  line-height: 1.18;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
}
.btn:disabled,
button:disabled {
  cursor: not-allowed;
  opacity: .62;
}
.stage-nav .tab {
  background: #fff;
  color: #111019;
  border-color: var(--brand);
}
.stage-nav .tab.stage-complete {
  border-color: rgba(15,159,103,.62);
  color: #0c6f4b;
}
.stage-nav .tab.stage-locked {
  border-color: rgba(104,96,113,.24);
  color: rgba(104,96,113,.72);
}
.tab.active {
  background: var(--brand);
  color: #fff;
  border-color: #fffaf3;
  box-shadow: 0 0 0 2px rgba(255,250,243,.18), 0 10px 26px rgba(255,113,24,.22);
}
.btn.dark { background: var(--deep); color: #fff; border-color: var(--deep); }
.btn.primary { background: var(--brand); color: #fff; border-color: var(--brand); }

.stage-nav .tab {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 1px 7px;
  align-content: center;
  align-items: center;
  width: 100%;
  min-height: 48px;
  padding: 7px 10px;
  border-radius: 10px;
  font-size: 13px;
  text-align: left;
}
.tab-step {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 19px;
  height: 19px;
  border: 1px solid rgba(255,113,24,.28);
  border-radius: 999px;
  background: rgba(255,113,24,.08);
  color: var(--brand-dark);
  font-size: 10px;
  font-weight: 950;
}
.tab-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.stage-nav .tab em {
  display: block;
  overflow: hidden;
  color: var(--muted);
  font-size: 9px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}
.stage-nav .tab.stage-complete .tab-step {
  border-color: rgba(15,159,103,.34);
  background: rgba(15,159,103,.10);
  color: var(--green);
}
.stage-nav .tab.stage-locked .tab-step {
  border-color: rgba(104,96,113,.22);
  background: rgba(104,96,113,.06);
  color: rgba(104,96,113,.72);
}
.stage-nav .tab.active .tab-step {
  border-color: rgba(255,255,255,.54);
  background: rgba(255,255,255,.18);
  color: #fff;
}
.stage-nav .tab.active em {
  color: rgba(255,255,255,.78);
}
.header-stage-nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  justify-content: stretch;
}

.workbar .btn {
  width: 86px;
  min-height: 36px;
  padding: 7px 12px;
  border-radius: 8px;
  font-size: 12px;
  text-align: center;
}

.account-pill {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  border: 1px solid rgba(255,255,255,.26);
  border-radius: 999px;
  background: rgba(8,7,15,.34);
  color: #fffaf3;
  padding: 5px 8px;
  box-shadow: 0 10px 24px rgba(8,7,15,.10);
}
.account-pill b,
.account-pill span {
  display: block;
  white-space: nowrap;
}
.account-pill b {
  font-size: 11px;
}
.account-pill span {
  color: rgba(255,250,243,.72);
  font-size: 10px;
  font-weight: 850;
}
.account-pill button {
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  color: #fffaf3;
  min-height: 24px;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 950;
  cursor: pointer;
}
.account-form {
  display: grid;
  grid-template-columns: minmax(190px, 260px) auto;
  gap: 6px;
  border-radius: 10px;
}
.account-form input {
  min-height: 26px;
  border-radius: 7px;
  padding: 4px 8px;
  font-size: 12px;
}
.account-form button {
  min-height: 26px;
  padding: 3px 9px;
  font-size: 11px;
}

.project-bar {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) auto;
  gap: 7px;
  align-items: end;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255,255,255,.78);
  padding: 5px;
}

.project-sticky {
  position: sticky;
  top: 12px;
  z-index: 8;
  width: 100%;
  display: grid;
  gap: 8px;
}

.project-pill {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
  align-items: center;
  align-self: end;
  width: 100%;
  min-width: 0;
  color: var(--ink);
  border: 1px solid var(--brand);
  border-radius: 10px;
  background: #fff;
  padding: 5px;
  box-shadow: 0 12px 28px rgba(8,7,15,.12);
}
.project-pill .btn {
  width: 54px;
  min-height: 32px;
  padding: 6px 7px;
  border-radius: 8px;
}
.project-pill-main {
  display: grid;
  gap: 2px;
  min-height: 32px;
  min-width: 0;
  border: 0;
  background: #fff;
  color: var(--ink);
  padding: 2px 6px;
  text-align: left;
  cursor: pointer;
}
.project-pill-main span {
  color: var(--muted);
  text-transform: uppercase;
  font-size: 9px;
  letter-spacing: .68px;
  font-weight: 950;
}
.project-pill-main b {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
}
.customer-project-label {
  cursor: default;
}
.project-name-card { display: grid; gap: 4px; min-width: 0; }
.project-bar span { display: flex; gap: 6px; align-items: center; color: var(--muted); text-transform: uppercase; font-size: 10px; letter-spacing: .8px; font-weight: 950; }
.project-bar em { border: 1px solid rgba(20,184,116,.24); border-radius: 999px; padding: 2px 6px; color: var(--green); background: rgba(20,184,116,.10); font-style: normal; }
.project-display-name {
  min-height: 30px;
  display: flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 5px 8px;
  overflow-wrap: anywhere;
  font-size: 12px;
}
.project-actions {
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 8px;
  flex-wrap: wrap;
}
.btn.small {
  min-height: 36px;
  padding: 8px 12px;
  border-radius: 9px;
  font-size: 13px;
}
.project-delete {
  width: 32px;
  min-height: 32px;
  border: 1px solid rgba(173,54,54,.24);
  border-radius: 9px;
  background: rgba(173,54,54,.06);
  color: #ad3636;
  font-weight: 950;
  cursor: pointer;
}
.project-confirm {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  border: 1px solid rgba(255,113,24,.22);
  border-radius: 999px;
  background: rgba(255,113,24,.08);
  padding: 8px 10px;
}
.auth-compact {
  display: grid;
  align-content: center;
  gap: 4px;
  min-width: 0;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 10px;
  background: rgba(255,255,255,.78);
  color: var(--ink);
  padding: 5px;
}
.auth-compact b,
.auth-compact span {
  display: block;
}
.auth-compact span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
}
.auth-compact.local {
  border-color: rgba(255,113,24,.20);
}
.view-only-banner {
  width: min(360px, 100%);
  border-color: rgba(255,113,24,.34);
  background: rgba(255,113,24,.14);
  color: #fffaf3;
  box-shadow: 0 10px 28px rgba(255,113,24,.12);
}
.view-only-banner b {
  color: #fffaf3;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .7px;
}
.view-only-banner span {
  color: rgba(255,250,243,.78);
}
.view-only-pill {
  color: var(--brand-dark);
  border-color: rgba(255,113,24,.32);
  background: rgba(255,113,24,.10);
}
.auth-compact-form {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
}
.auth-compact-form label {
  display: grid;
  gap: 4px;
  min-width: 0;
}
.auth-compact-form input {
  min-height: 30px;
  padding: 5px 8px;
  border-radius: 8px;
  font-size: 12px;
}
.project-confirm span {
  margin-right: auto;
  color: var(--brand-dark);
}
.project-confirm button {
  border: 1px solid rgba(255,113,24,.32);
  border-radius: 999px;
  background: #fff;
  color: var(--brand-dark);
  padding: 7px 12px;
  font-weight: 950;
  cursor: pointer;
}
.project-drawer {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: auto;
  z-index: 35;
  grid-column: auto;
  display: grid;
  gap: 8px;
  width: min(100%, 390px);
  max-height: min(46vh, 340px);
  overflow: auto;
  border: 1px solid var(--brand);
  border-radius: 12px;
  background: #fff;
  color: #111019;
  padding: 10px;
  box-shadow: 0 20px 60px rgba(8,7,15,.20);
}
.project-drawer .project-row,
.project-drawer .drawer-editor,
.project-drawer input,
.project-drawer .btn {
  background: #fff;
  color: #111019;
}
.project-drawer .project-row-main {
  color: #111019;
}
.project-drawer p,
.project-drawer span,
.project-drawer .project-row-main span,
.project-drawer .project-dashboard span {
  color: #686071;
}
.project-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.drawer-actions {
  display: flex;
  justify-content: end;
  gap: 8px;
  flex-wrap: wrap;
}
.drawer-editor {
  display: grid;
  gap: 6px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 12px;
  background: rgba(255,113,24,.06);
  padding: 10px;
}
.drawer-editor span {
  color: var(--brand-dark);
  text-transform: uppercase;
  letter-spacing: .9px;
  font-size: 11px;
  font-weight: 950;
}
.drawer-editor input {
  min-height: 38px;
}
.project-drawer-head h3 {
  margin: 0;
  font-size: 16px;
}
.project-drawer-head p {
  margin: 2px 0 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.project-dashboard {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.project-dashboard span {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 999px;
  background: rgba(35,95,147,.06);
  padding: 5px 8px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .5px;
}
.project-list {
  display: grid;
  gap: 6px;
}
.project-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  padding: 8px;
}
.project-row.active {
  border-color: rgba(15,159,103,.62);
  box-shadow: 0 0 0 3px rgba(15,159,103,.10);
}
.project-row-main {
  display: grid;
  gap: 4px;
  min-width: 0;
  border: 0;
  background: transparent;
  text-align: left;
  color: var(--ink);
  cursor: pointer;
}
.project-row-main b,
.project-row-main span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.project-row-main b {
  font-size: 13px;
}
.project-row-main span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: none;
  letter-spacing: 0;
}
.project-protected {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(20,184,116,.24);
  border-radius: 999px;
  background: rgba(20,184,116,.10);
  color: var(--green);
  padding: 5px 8px;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
  white-space: nowrap;
}
.project-protected {
  border-color: rgba(104,96,113,.22);
  background: rgba(104,96,113,.08);
  color: var(--muted);
}
.project-row-actions {
  display: flex;
  align-items: center;
  justify-content: end;
  gap: 6px;
}
.project-delete.small {
  width: 32px;
  min-height: 32px;
  border-radius: 8px;
}
.project-confirm.inline {
  grid-column: 1 / -1;
  justify-content: flex-start;
}
.auth-bar {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  align-items: center;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 12px;
  background: rgba(35,95,147,.055);
  padding: 10px;
}
.auth-bar b,
.auth-bar span {
  display: block;
}
.auth-bar span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.auth-bar.local {
  border-color: rgba(255,113,24,.18);
  background: rgba(255,113,24,.06);
}
.auth-form {
  display: grid;
  grid-template-columns: minmax(180px, 280px) auto;
  gap: 8px;
}

input, select, textarea {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  padding: 12px;
}
input[type="radio"],
input[type="checkbox"] {
  width: auto;
  min-height: 0;
  padding: 0;
  margin: 0;
  accent-color: var(--brand);
}
textarea { min-height: 88px; resize: vertical; }

.main {
  max-width: 1180px;
  margin: 18px auto 0;
  padding: 0 16px;
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 16px;
  width: 100%;
  min-width: 0;
  align-items: start;
}
.main-simple {
  max-width: 920px;
  grid-template-columns: 1fr;
}

.left-rail {
  display: grid;
  gap: 10px;
  align-self: start;
  min-width: 0;
  padding-top: 62px;
}

.notice, .card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 14px;
  background: rgba(255,253,249,.86);
  box-shadow: 0 18px 55px rgba(31,24,14,.08);
}
.notice { padding: 18px; align-self: start; margin-top: 0; }
.support-note {
  padding: 12px;
  border-color: rgba(35,95,147,.14);
  background: rgba(255,255,255,.70);
  box-shadow: 0 10px 28px rgba(31,24,14,.05);
}
.support-note .kicker {
  color: #235f93;
  font-size: 11px;
  letter-spacing: .9px;
}
.support-note p {
  margin: 8px 0 0;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.34;
}
.support-note .trust {
  border-top: 1px solid rgba(104,96,113,.14);
  padding-top: 8px;
}
.kicker, .section-title { color: var(--brand-dark); text-transform: uppercase; letter-spacing: 2px; font-weight: 950; font-size: 13px; }
.notice h2 { margin: 16px 0 8px; font-size: 25px; }
.notice p, .card p { color: var(--muted); line-height: 1.45; }
.stats { gap: 10px; flex-wrap: wrap; margin: 18px 0; }
.stats div { flex: 1 1 120px; display: grid; border: 1px solid var(--line); border-radius: 10px; background: #fff; padding: 12px; }
.stats strong { font-size: 26px; }
.stats span { color: var(--muted); font-weight: 800; }
.trust b { color: var(--ink); text-decoration: underline; }
.notice-price {
  margin-top: 14px;
  border: 1px solid rgba(255,113,24,.28);
  border-radius: 10px;
  background: rgba(255,113,24,.08);
  color: var(--brand-dark);
  padding: 10px;
  font-size: 13px;
  font-weight: 950;
  text-align: center;
}

.panel { display: grid; gap: 14px; min-width: 0; align-content: start; align-items: start; }
.section-title { margin-top: 0; }
.card { padding: 16px; }
.card-head { justify-content: space-between; gap: 12px; margin-bottom: 14px; min-width: 0; }
.card-head > div { min-width: 0; }
.card h2, .card h3 { margin: 0; font-size: 21px; }
.card-head p { margin: 5px 0 0; }
.pill, .chip {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 999px;
  background: rgba(35,95,147,.07);
  color: #235f93;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
}
.pill.ok { color: var(--green); border-color: rgba(20,184,116,.24); background: rgba(20,184,116,.10); }

.route-grid, .mode-grid, .connector-grid, .field-grid, .data-grid, .sensitive-grid, .launch-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  min-width: 0;
}
.route-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.route-box, .mode, .connector, .launch-grid div {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 14px;
  min-width: 0;
  align-content: start;
}
.route-box-choice {
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}
.route-box-choice:hover {
  border-color: rgba(255,113,24,.40);
  background: rgba(255,250,243,.96);
  box-shadow: 0 12px 28px rgba(31,24,14,.10);
  transform: translateY(-1px);
}
.route-box-choice:focus-within {
  border-color: var(--brand);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(255,113,24,.14), 0 12px 28px rgba(31,24,14,.10);
}
.route-box-choice select,
.route-box-choice input {
  cursor: pointer;
}
.route-box-choice input {
  cursor: text;
}
.route-picker {
  position: relative;
}
.route-picker-toggle {
  width: 100%;
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  padding: 12px;
  text-align: left;
  cursor: pointer;
}
.route-picker-toggle span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.route-picker-toggle b {
  color: var(--muted);
  font-size: 12px;
  line-height: 1;
}
.route-picker.open .route-picker-toggle {
  border-color: var(--brand);
  box-shadow: 0 0 0 3px rgba(255,113,24,.14);
}
.route-picker-menu {
  display: grid;
  gap: 4px;
  max-height: 230px;
  overflow: auto;
  border: 1px solid rgba(255,113,24,.22);
  border-radius: 10px;
  background: #fff;
  padding: 6px;
  box-shadow: 0 16px 34px rgba(31,24,14,.10);
}
.route-picker-menu button {
  width: 100%;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--ink);
  padding: 10px;
  text-align: left;
  cursor: pointer;
}
.route-picker-menu .route-option {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 6px;
  align-items: center;
}
.route-picker-menu .route-option span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.route-picker-menu .route-option em {
  border: 1px solid rgba(20, 184, 116, .22);
  border-radius: 999px;
  background: rgba(20, 184, 116, .08);
  color: #116b49;
  padding: 3px 7px;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}
.route-picker-menu .route-option.status-guided em,
.route-picker-status.status-guided {
  border-color: rgba(255, 113, 24, .24);
  background: rgba(255, 113, 24, .08);
  color: #9a3a00;
}
.route-picker-menu .route-option.status-review em,
.route-picker-status.status-review {
  border-color: rgba(43, 93, 171, .24);
  background: rgba(43, 93, 171, .08);
  color: #294f94;
}
.route-picker-menu .route-option.status-coming-soon {
  cursor: not-allowed;
  color: rgba(104, 96, 113, .74);
  opacity: .62;
  filter: grayscale(.25);
}
.route-picker-menu .route-option.status-coming-soon span {
  color: rgba(104, 96, 113, .74);
}
.route-picker-menu .route-option.status-coming-soon em,
.route-picker-status.status-coming-soon {
  border-color: rgba(104, 96, 113, .22);
  background: rgba(104, 96, 113, .08);
  color: #686071;
}
.route-picker-menu button:hover,
.route-picker-menu button:focus-visible,
.route-picker-menu button[aria-selected="true"] {
  background: rgba(255,113,24,.10);
  outline: none;
}
.route-picker-menu button:disabled:hover,
.route-picker-menu button:disabled:focus-visible {
  background: transparent;
}
.route-card .route-picker-pill {
  display: none !important;
}
.route-picker-helper {
  display: block;
  margin-top: 8px;
  color: #ff7118 !important;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
}
.route-availability-note {
  margin: 10px 0 0;
  color: #b24a00;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.route-box-locked-name.locked {
  border-color: rgba(104,96,113,.20);
  background: rgba(255,255,255,.72);
  cursor: default;
}
.route-box-locked-name.locked:hover {
  border-color: rgba(104,96,113,.20);
  background: rgba(255,255,255,.72);
  box-shadow: none;
  transform: none;
}
.route-box-locked-name input[readonly] {
  cursor: not-allowed;
  color: rgba(104,96,113,.84);
  background: rgba(247,239,230,.74);
}
.route-box-locked-name em {
  justify-self: start;
  border: 1px solid rgba(255,113,24,.26);
  border-radius: 999px;
  background: rgba(255,113,24,.08);
  color: var(--brand-dark);
  padding: 4px 8px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .5px;
  text-transform: uppercase;
}
.route-box span, .mode span { font-weight: 950; font-size: 18px; }
.mode > span {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.route-box small, .mode small { color: var(--muted); line-height: 1.35; font-weight: 800; }
.mode.selected, .connector.connected { border-color: rgba(20,184,116,.45); background: rgba(20,184,116,.08); }
.mode b { color: #235f93; }
.plan-price {
  display: grid;
  gap: 6px;
  align-items: stretch;
  justify-items: start;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 12px;
  background: rgba(255,113,24,.065);
  padding: 8px 10px;
  min-width: 0;
  width: 100%;
  min-height: 54px;
  align-content: center;
}
.mode .plan-price {
  align-items: stretch;
}
.plan-price.compact {
  display: inline-grid;
  gap: 5px;
  justify-items: center;
  align-self: start;
  white-space: nowrap;
  width: min(190px, 100%);
  min-height: 0;
}
.plan-price.compact small {
  width: 100%;
  max-width: 100%;
  white-space: normal;
  text-align: center;
}
.mode .plan-price {
  margin-top: -2px;
}
.plan-price-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1px 10px;
  align-items: center;
  width: 100%;
  min-width: 0;
  border: 0;
  border-bottom: 1px solid rgba(255,113,24,.16);
  border-radius: 0;
  background: transparent;
  padding: 7px 2px;
}
.plan-price-row:last-child {
  border-bottom: 0;
}
.plan-price-row small {
  display: block;
  color: var(--brand-dark);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.plan-price-row b {
  color: #235f93;
  font-size: 20px;
  line-height: 1;
  justify-self: end;
}
.plan-price-row em {
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.15;
}
.plan-price .regular-price {
  color: #736b78;
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}
.plan-price .founder-note {
  color: var(--brand-dark);
  font-weight: 950;
  text-decoration: none;
}
.early-believer-count {
  --early-pill-glow-rest:
    0 0 0 1px rgba(255,113,24,.10),
    0 0 18px rgba(255,113,24,.22),
    inset 0 1px 0 rgba(255,255,255,.74);
  --early-pill-glow-peak:
    0 0 0 1px rgba(255,113,24,.18),
    0 0 24px rgba(255,113,24,.34),
    inset 0 1px 0 rgba(255,255,255,.82);
  position: relative;
  display: grid;
  gap: 2px;
  min-width: 0;
  margin-top: -1px;
  border: 1px solid rgba(255,113,24,.46);
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(255,241,218,.96), rgba(255,216,176,.58));
  box-shadow: var(--early-pill-glow-rest);
  padding: 7px 9px;
  overflow: hidden;
}
.early-believer-count::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: linear-gradient(180deg, #ff7118, #ffb04a);
}
.early-believer-count b,
.early-believer-count em,
.early-believer-count small {
  min-width: 0;
  overflow-wrap: anywhere;
}
.early-believer-count b {
  color: #8a3900;
  font-size: 12px;
  line-height: 1.1;
}
.early-believer-count em {
  color: #d95300;
  font-size: 10px;
}
.early-believer-count small {
  color: #5f3417;
  font-size: 11px;
}
.early-believer-count.compact {
  width: 100%;
  min-width: 132px;
  white-space: normal;
  text-align: center;
}
.early-believer-count.compact b,
.early-believer-count.compact em,
.early-believer-count.compact small {
  text-align: center;
}
.early-believer-count.closed b {
  color: #7b342f;
}
.early-believer-strip {
  --early-strip-glow-rest: 0 0 18px rgba(255,113,24,.13);
  --early-strip-glow-peak: 0 0 26px rgba(255,113,24,.24);
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 8px 14px;
  margin-top: 12px;
  border: 1px solid rgba(255,113,24,.42);
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(255,241,218,.92), rgba(255,253,249,.78));
  box-shadow: var(--early-strip-glow-rest);
  padding: 10px 12px;
  overflow: hidden;
}
.early-believer-strip::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, #ff7118, #ffb04a);
}
.early-believer-strip span {
  color: var(--brand-dark);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .5px;
  text-transform: uppercase;
}
.early-believer-strip b {
  min-width: 0;
  color: var(--ink);
  font-size: 13px;
  overflow-wrap: anywhere;
}
.early-believer-strip small {
  min-width: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.3;
  text-align: right;
}
.early-believer-strip.closed {
  border-color: rgba(123,52,47,.22);
  background: rgba(123,52,47,.06);
}
.early-believer-strip.closed span {
  color: #7b342f;
}
.launch-offer-summary {
  position: relative;
  display: grid;
  gap: 10px;
  border: 1px solid rgba(255,113,24,.36);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(255,241,218,.94), rgba(255,253,249,.84));
  box-shadow: 0 18px 48px rgba(255,113,24,.12);
  padding: 12px;
  overflow: hidden;
}
.launch-offer-summary::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, #ff7118, #ffb04a);
}
.launch-offer-head {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: center;
  padding-left: 4px;
}
.launch-offer-head div,
.launch-offer-card {
  min-width: 0;
}
.launch-offer-head span,
.launch-offer-card span {
  display: block;
  color: var(--brand-dark);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .7px;
  text-transform: uppercase;
}
.launch-offer-card span {
  color: #ff7118;
}
.launch-offer-head b {
  display: block;
  margin-top: 2px;
  color: var(--ink);
  font-size: 19px;
  line-height: 1.08;
}
.launch-offer-head small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.28;
  text-align: right;
}
.launch-offer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.launch-offer-card {
  appearance: none;
  width: 100%;
  min-height: 86px;
  text-align: left;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,255,255,.72);
  color: inherit;
  padding: 10px;
  cursor: pointer;
  box-shadow: 0 0 0 rgba(255,113,24,0);
  transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
.launch-offer-card:hover,
.launch-offer-card:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(255,113,24,.72);
  background: linear-gradient(135deg, rgba(255,113,24,.16), rgba(255,241,218,.92));
  box-shadow: 0 14px 30px rgba(255,113,24,.20);
}
.launch-offer-card:focus-visible {
  outline: 3px solid rgba(255,113,24,.28);
  outline-offset: 2px;
}
.launch-offer-card b {
  display: block;
  margin: 3px 0;
  color: #235f93;
  font-size: 24px;
  line-height: 1;
}
.launch-offer-card small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.25;
}
.pricing-shared-slot-pill {
  width: 100%;
  margin: 0;
  border: 1px solid rgba(255,113,24,.28);
  border-radius: 999px;
  background: rgba(255,113,24,.10);
  color: #8a3900;
  font-size: 11px;
  font-weight: 950;
  line-height: 1.25;
  padding: 9px 12px;
  text-align: center;
}

.paid-mode-badge {
  width: 100%;
  margin: 0;
  border: 1px solid rgba(35,95,147,.24);
  border-radius: 999px;
  background: rgba(35,95,147,.08);
  color: #235f93;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
  padding: 8px 12px;
  text-align: center;
}

.launch-offer-summary.assisted-mode .paid-mode-badge {
  border-color: rgba(20,184,116,.34);
  background: rgba(20,184,116,.10);
  color: #1f704a;
}

.unlock-pricing-intro {
  margin: 0;
  color: var(--muted);
  font-weight: 750;
  line-height: 1.45;
}
.unlock-pricing-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.unlock-pricing-option {
  display: grid;
  gap: 12px;
  border: 1px solid rgba(255,113,24,.22);
  border-radius: 12px;
  background: rgba(255,250,243,.72);
  padding: 12px;
}
.unlock-pricing-option.selected {
  border-color: rgba(20,184,116,.42);
  background: linear-gradient(135deg, rgba(20,184,116,.10), rgba(255,250,243,.82));
}
.unlock-pricing-option-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
}
.unlock-pricing-option-head span {
  display: block;
  color: var(--brand-dark);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .7px;
  text-transform: uppercase;
}
.unlock-pricing-option-head b {
  display: block;
  margin-top: 3px;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.15;
}
.unlock-pricing-option-head .btn {
  min-width: 84px;
  padding-inline: 12px;
  white-space: nowrap;
}
.unlock-pricing-rows {
  display: grid;
  gap: 0;
  overflow: hidden;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 10px;
  background: rgba(255,255,255,.62);
}
.unlock-pricing-rows .plan-price-row {
  border: 0;
  border-bottom: 1px solid rgba(255,113,24,.16);
  border-radius: 0;
  background: transparent;
}
.unlock-pricing-rows .plan-price-row:last-child {
  border-bottom: 0;
}
.unlock-pricing-option p {
  margin: 0;
  color: var(--muted);
  font-weight: 750;
  line-height: 1.4;
}
.unlock-pricing-explain {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.unlock-pricing-explain article {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 10px;
  background: rgba(35,95,147,.045);
  padding: 11px;
}
.unlock-pricing-explain b {
  color: var(--ink);
}
.unlock-pricing-explain p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.35;
}
.unlock-pricing-modal .modal-actions .btn.primary {
  width: 180px;
  min-width: 180px;
}
@keyframes early-believer-glow {
  0%, 100% {
    box-shadow: var(--early-pill-glow-rest);
  }
  50% {
    box-shadow: var(--early-pill-glow-peak);
  }
}
@keyframes early-believer-strip-glow {
  0%, 100% { box-shadow: var(--early-strip-glow-rest); }
  50% { box-shadow: var(--early-strip-glow-peak); }
}
@media (prefers-reduced-motion: no-preference) {
  .early-believer-count:not(.closed) {
    animation: early-believer-glow 3.2s ease-in-out infinite;
  }
  .early-believer-strip:not(.closed) {
    animation: early-believer-strip-glow 3.6s ease-in-out infinite;
  }
}
.founder-pricing-note {
  display: grid;
  gap: 4px;
  margin-top: 12px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(255,113,24,.08), rgba(255,253,249,.80));
  padding: 12px;
}
.founder-pricing-note b {
  color: var(--brand-dark);
}
.founder-pricing-note p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}
.mode-upgrade-note {
  display: block;
  border-top: 1px solid rgba(255,113,24,.12);
  padding-top: 8px;
  color: var(--brand-dark);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.38;
}
.template-card {
  border-color: rgba(35,95,147,.16);
  background: linear-gradient(135deg, rgba(35,95,147,.055), rgba(255,253,249,.92));
}
.template-summary,
.template-lists {
  display: grid;
  gap: 10px;
}
.template-route-line {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  margin-bottom: 10px;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 999px;
  background: rgba(35,95,147,.075);
  color: #235f93;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 950;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.route-confidence {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}
.route-confidence div {
  display: grid;
  gap: 6px;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 10px;
  background: rgba(255,255,255,.82);
  padding: 11px;
}
.route-confidence span {
  width: fit-content;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 999px;
  background: rgba(35,95,147,.075);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
  line-height: 1.1;
}
.route-confidence b {
  font-size: 15px;
  line-height: 1.18;
}
.route-confidence p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.36;
}
.route-confidence.flagship div {
  border-color: rgba(20,184,116,.24);
  background: linear-gradient(135deg, rgba(20,184,116,.08), rgba(255,255,255,.88));
}
.route-confidence.review div,
.route-confidence.manual div {
  border-color: rgba(255,113,24,.24);
  background: linear-gradient(135deg, rgba(255,113,24,.08), rgba(255,255,255,.9));
}
.route-rehearsal {
  display: grid;
  grid-template-columns: 1.1fr 1fr 1fr;
  gap: 10px;
  margin-bottom: 10px;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 10px;
  background: rgba(35,95,147,.055);
  padding: 10px;
}
.route-rehearsal.local-pass {
  border-color: rgba(20,184,116,.24);
  background: rgba(20,184,116,.075);
}
.route-rehearsal.needs-screens,
.route-rehearsal.research {
  border-color: rgba(255,113,24,.24);
  background: rgba(255,113,24,.075);
}
.route-rehearsal div {
  display: grid;
  gap: 5px;
}
.route-rehearsal span {
  color: #235f93;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.route-rehearsal.local-pass span {
  color: var(--green);
}
.route-rehearsal.needs-screens span,
.route-rehearsal.research span {
  color: var(--brand-dark);
}
.route-rehearsal b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.15;
}
.route-rehearsal p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.template-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.template-lists {
  margin-top: 10px;
}
.template-lists[open] {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.template-summary div,
.template-lists div {
  display: grid;
  gap: 7px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.78);
  padding: 12px;
}
.template-summary p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.38;
}
.template-lists span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.32;
}
.template-catalog {
  margin-top: 14px;
}
.quiet-details {
  border: 1px solid rgba(104,96,113,.18);
  border-radius: 10px;
  background: rgba(255,255,255,.62);
  padding: 10px;
}
.connect-notice.quiet-details {
  border-color: rgba(104,96,113,.14);
  background: rgba(255,255,255,.50);
  box-shadow: none;
  padding: 9px 10px;
}
.connect-notice.quiet-details summary b {
  font-size: 13px;
}
.connect-notice.quiet-details summary span {
  font-size: 10px;
}
.quiet-details summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  list-style: none;
}
.quiet-details summary::-webkit-details-marker {
  display: none;
}
.quiet-details summary span,
.quiet-details summary em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.quiet-details summary b {
  color: var(--ink);
  font-size: 14px;
  font-weight: 950;
  line-height: 1.2;
}
.quiet-details[open] {
  display: grid;
  gap: 10px;
}
.quiet-details[open] summary {
  grid-column: 1 / -1;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(104,96,113,.14);
}
.build-notes {
  margin-top: 14px;
}
.build-notes .readiness-inner {
  border: 0;
  background: transparent;
  padding: 0;
}
.template-family-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.confidence-legend {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.confidence-legend div {
  display: grid;
  gap: 6px;
  border: 1px solid rgba(35,95,147,.15);
  border-radius: 8px;
  background: rgba(255,255,255,.72);
  padding: 10px;
}
.confidence-legend strong {
  width: fit-content;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 999px;
  background: rgba(35,95,147,.075);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  line-height: 1.1;
  text-transform: uppercase;
}
.confidence-legend p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.34;
}
.confidence-legend .flagship {
  border-color: rgba(20,184,116,.24);
  background: linear-gradient(135deg, rgba(20,184,116,.08), rgba(255,255,255,.86));
}
.confidence-legend .review,
.confidence-legend .manual {
  border-color: rgba(255,113,24,.24);
  background: linear-gradient(135deg, rgba(255,113,24,.08), rgba(255,255,255,.88));
}
.template-family {
  display: grid;
  gap: 7px;
  align-content: start;
  min-height: 178px;
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.82);
  color: var(--ink);
  padding: 12px;
  text-align: left;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.template-family:hover {
  border-color: rgba(255,113,24,.52);
  box-shadow: 0 12px 26px rgba(36,23,12,.08);
  transform: translateY(-1px);
}
.template-family:disabled {
  cursor: default;
}
.template-family.status-coming-soon {
  border-color: rgba(104,96,113,.18);
  background: rgba(255,255,255,.58);
  color: rgba(45,37,50,.68);
  opacity: .64;
  filter: grayscale(.18);
}
.template-family.status-coming-soon:hover,
.template-family.status-coming-soon:focus-visible {
  border-color: rgba(104,96,113,.18);
  box-shadow: none;
  transform: none;
}
.template-family.selected {
  border-color: rgba(20,184,116,.65);
  background: linear-gradient(135deg, rgba(20,184,116,.12), rgba(255,255,255,.9));
}
.template-family span {
  width: fit-content;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 999px;
  background: rgba(35,95,147,.075);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
  line-height: 1.1;
}
.template-family b {
  font-size: 15px;
  line-height: 1.18;
}
.confidence-chip {
  width: fit-content;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 999px;
  background: rgba(35,95,147,.075);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
  line-height: 1.1;
}
.confidence-chip.flagship {
  border-color: rgba(20,184,116,.24);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.confidence-chip.review,
.confidence-chip.manual {
  border-color: rgba(255,113,24,.24);
  background: rgba(255,113,24,.10);
  color: var(--brand-dark);
}
.rehearsal-chip {
  width: fit-content;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 999px;
  background: rgba(35,95,147,.075);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
  line-height: 1.1;
}
.rehearsal-chip.local-pass {
  border-color: rgba(20,184,116,.24);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.rehearsal-chip.needs-screens,
.rehearsal-chip.research {
  border-color: rgba(255,113,24,.24);
  background: rgba(255,113,24,.10);
  color: var(--brand-dark);
}
.template-family small,
.template-family em,
.template-family i {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  font-style: normal;
  line-height: 1.32;
}
.template-family em {
  color: var(--brand-dark);
  font-weight: 950;
}
.template-family div {
  display: grid;
  gap: 5px;
  border-top: 1px solid rgba(255,113,24,.14);
  padding-top: 8px;
}
.first-route-card,
.readiness-dashboard {
  margin-top: 14px;
}
.first-route-card {
  border-color: rgba(20,184,116,.24);
  background: linear-gradient(135deg, rgba(20,184,116,.07), rgba(255,253,249,.88));
}
.first-route-grid,
.readiness-metrics,
.readiness-gates {
  display: grid;
  gap: 10px;
}
.first-route-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.first-route-grid article,
.readiness-gates article,
.readiness-metrics div {
  display: grid;
  gap: 7px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  padding: 12px;
  min-width: 0;
}
.first-route-grid span,
.readiness-gates span {
  width: fit-content;
  border: 1px solid rgba(20,184,116,.22);
  border-radius: 999px;
  background: rgba(20,184,116,.08);
  color: var(--green);
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
}
.first-route-grid p,
.readiness-gates p,
.readiness-metrics p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.first-route-grid div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  border-top: 1px solid rgba(20,184,116,.14);
  padding-top: 8px;
}
.first-route-grid i {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 999px;
  background: rgba(35,95,147,.06);
  color: #235f93;
  padding: 4px 7px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  line-height: 1.15;
}
.readiness-dashboard {
  border-color: rgba(35,95,147,.18);
  background: linear-gradient(135deg, rgba(35,95,147,.055), rgba(255,253,249,.9));
}
.readiness-metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.readiness-metrics b {
  color: var(--brand-dark);
  font-size: 23px;
  line-height: 1;
}
.readiness-metrics span {
  color: var(--ink);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .55px;
}
.readiness-gates {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 10px;
}
.founder-handoff-packet {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border-top: 1px solid rgba(35,95,147,.14);
  padding-top: 12px;
}
.handoff-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.handoff-grid article,
.handoff-wait {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  padding: 12px;
  min-width: 0;
}
.handoff-grid span {
  color: var(--brand-dark);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
}
.handoff-grid b {
  color: var(--ink);
  overflow-wrap: anywhere;
}
.handoff-grid p,
.handoff-wait p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.handoff-wait {
  border-color: rgba(255,113,24,.24);
  background: rgba(255,113,24,.06);
}
.handoff-wait b {
  color: var(--brand-dark);
}
.rehearsal-checklist {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border-top: 1px solid rgba(35,95,147,.14);
  padding-top: 12px;
}
.rehearsal-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.rehearsal-steps article {
  display: grid;
  gap: 7px;
  align-content: start;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  padding: 12px;
}
.rehearsal-steps article.verified {
  border-color: rgba(20,184,116,.38);
  background: rgba(20,184,116,.08);
}
.rehearsal-steps span {
  width: fit-content;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 999px;
  background: rgba(255,113,24,.08);
  color: var(--brand-dark);
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
}
.rehearsal-steps article.verified span {
  border-color: rgba(20,184,116,.24);
  background: rgba(20,184,116,.08);
  color: var(--green);
}
.rehearsal-steps p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.32;
}
.mock-account-preview {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 12px;
  background: rgba(35,95,147,.055);
  padding: 12px;
}
.mock-account-preview p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.mock-account-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.mock-account-grid article {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  padding: 10px;
}
.mock-account-grid article > span {
  color: var(--brand-dark);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
}
.mock-account-grid div {
  display: grid;
  gap: 3px;
  border-top: 1px solid rgba(35,95,147,.12);
  padding-top: 7px;
}
.mock-account-grid em {
  color: var(--green);
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}
.mock-account-details {
  margin-top: 6px;
  border: 1px solid rgba(35,95,147,.14);
  border-radius: 8px;
  background: rgba(35,95,147,.045);
  padding: 8px;
}
.mock-account-details summary {
  color: var(--brand-dark);
  cursor: pointer;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .35px;
  text-transform: uppercase;
}
.mock-account-details div {
  display: grid;
  gap: 5px;
  border-top: 1px solid rgba(35,95,147,.12);
  margin-top: 8px;
  padding-top: 8px;
}
.mock-account-details span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.3;
}
.mock-acceptance {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.mock-acceptance div {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(20,184,116,.18);
  border-radius: 8px;
  background: rgba(20,184,116,.07);
  padding: 9px;
}
.mock-acceptance p {
  margin: 0;
  font-size: 12px;
}
.mock-acceptance span {
  color: var(--green);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .4px;
  text-transform: uppercase;
}
.mode-locked-card {
  border-color: rgba(20,184,116,.30);
  background: linear-gradient(135deg, rgba(20,184,116,.075), rgba(255,255,255,.86));
}
.mode-locked {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
}
.mode-locked span {
  display: inline-flex;
  color: var(--green);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .8px;
  text-transform: uppercase;
}
.mode-locked h3 {
  margin: 5px 0 4px;
}
.mode-locked p,
.mode-locked small {
  display: block;
  margin: 0;
  color: var(--muted);
  font-weight: 820;
  line-height: 1.45;
}
.mode-locked-side {
  display: grid;
  justify-items: end;
  gap: 4px;
}
.mode-locked-side .plan-price {
  justify-items: end;
}
.mode-locked-side .plan-price,
.mode-locked-side .plan-price small {
  text-transform: none;
  letter-spacing: 0;
}
.mode-locked-side b {
  color: #235f93;
  font-size: 22px;
  line-height: 1;
}
.mode-locked-side em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}
.mode-locked-side .btn {
  margin-top: 4px;
  min-height: 30px;
  padding: 6px 10px;
  color: var(--brand-dark);
  border-color: rgba(255,113,24,.34);
  background: rgba(255,113,24,.08);
  text-transform: uppercase;
}
.auth-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.auth-flow div {
  display: flex;
  align-items: center;
  gap: 9px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 10px;
  color: var(--muted);
  font-weight: 900;
}
.auth-flow b {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(104,96,113,.10);
  color: var(--muted);
}
.auth-flow .active {
  border-color: rgba(20,184,116,.34);
  background: rgba(20,184,116,.08);
  color: var(--ink);
}
.auth-flow .active b {
  background: rgba(20,184,116,.16);
  color: var(--green);
}
.security-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0 18px;
}
.security-summary div {
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 12px;
  background: rgba(255,113,24,.06);
  padding: 10px;
}
.security-summary b,
.security-summary span {
  display: block;
}
.security-summary span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.checklist { display: grid; gap: 10px; }
.check { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 12px; align-items: center; border: 1px solid var(--line); border-radius: 12px; background: #fff; padding: 12px; }
.check span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,113,24,.10); color: var(--brand-dark); font-weight: 950; }
.check p { margin: 3px 0 0; }
.check em { color: #235f93; font-style: normal; font-weight: 950; }
.simple-step-list {
  display: grid;
  gap: 10px;
  margin: 14px 0;
}
.simple-step {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 12px;
  background: rgba(255,253,249,.90);
  padding: 12px;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}
.simple-step:hover,
.simple-step:focus-within {
  border-color: rgba(255,113,24,.40);
  background: #fff;
  box-shadow: 0 10px 24px rgba(31,24,14,.09);
  transform: translateY(-1px);
}
.simple-step-icon {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid rgba(255,113,24,.22);
  border-radius: 10px;
  background: rgba(255,113,24,.06);
  color: var(--brand-dark);
  font-weight: 950;
}
.simple-step.done .simple-step-icon {
  border-color: rgba(15,159,103,.30);
  background: rgba(15,159,103,.10);
  color: var(--green);
}
.simple-step b,
.simple-step p {
  display: block;
}
.simple-step p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.32;
}
.stage-note {
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.4;
}
.stage-proof {
  display: grid;
  gap: 9px;
  margin-top: 12px;
  border: 1px solid rgba(20,184,116,.22);
  border-radius: 12px;
  background: rgba(20,184,116,.055);
  padding: 11px 12px;
}
.stage-proof > b {
  color: var(--green);
  font-size: 12px;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.stage-proof > div {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.stage-proof span {
  display: grid;
  gap: 3px;
  min-width: 0;
  max-width: 18ch;
  overflow-wrap: anywhere;
}
.stage-proof strong,
.stage-proof small {
  display: block;
}
.stage-proof strong {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.2;
}
.stage-proof small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.28;
}
.automation-wiring-list,
.provider-navigation-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.automation-wiring-list article,
.provider-navigation-list article {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(255,113,24,.16);
  border-radius: 10px;
  background: rgba(255,250,243,.72);
  padding: 12px;
}
.automation-wiring-list p,
.automation-wiring-list small,
.provider-navigation-list p,
.provider-navigation-list small {
  margin: 0;
  color: var(--muted);
  line-height: 1.35;
}
.automation-wiring-list small,
.provider-navigation-list small {
  font-size: 12px;
  font-weight: 900;
}
.provider-proof-dashboard {
  margin-top: 14px;
}
.provider-proof-note {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.provider-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.provider-proof-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 10px;
  background: rgba(255,250,243,.72);
  padding: 11px;
}
.provider-proof-grid article.complete {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.08);
}
.provider-proof-grid article.partial {
  border-color: rgba(35,95,147,.22);
  background: rgba(35,95,147,.065);
}
.provider-proof-grid div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.provider-proof-grid b {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.15;
}
.provider-proof-grid span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
  white-space: nowrap;
}
.provider-proof-grid strong {
  color: var(--brand-dark);
  font-size: 18px;
  line-height: 1;
}
.provider-proof-grid p,
.provider-proof-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.3;
}
.screenshot-queue-details {
  margin-top: 14px;
}
.screenshot-queue-note {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.screenshot-queue-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.screenshot-queue-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 10px;
  background: rgba(35,95,147,.055);
  padding: 11px;
}
.screenshot-queue-grid article.proof-needed {
  border-color: rgba(255,113,24,.24);
  background: rgba(255,113,24,.065);
}
.screenshot-queue-grid article.proof-saved {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.08);
}
.screenshot-queue-grid div {
  display: flex;
  align-items: center;
  gap: 7px;
}
.screenshot-queue-grid span {
  border: 1px solid rgba(255,113,24,.22);
  border-radius: 999px;
  background: rgba(255,113,24,.09);
  color: var(--brand-dark);
  padding: 3px 6px;
  font-size: 10px;
  font-weight: 950;
  line-height: 1.1;
}
.screenshot-queue-grid b,
.screenshot-queue-grid strong {
  color: var(--ink);
  line-height: 1.16;
}
.screenshot-queue-grid strong {
  font-size: 14px;
}
.screenshot-queue-grid p,
.screenshot-queue-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.32;
  overflow-wrap: anywhere;
}
.screenshot-queue-grid code {
  color: #235f93;
  font-weight: 950;
  overflow-wrap: anywhere;
}
.ai-guidance-preview-details {
  margin-top: 14px;
}
.ai-guidance-route {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,113,24,.07);
  padding: 11px;
}
.ai-guidance-route.exact {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.08);
}
.ai-guidance-preview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.ai-guidance-preview-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,113,24,.07);
  padding: 11px;
}
.ai-guidance-preview-grid article.exact {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.08);
}
.ai-guidance-preview-grid article.partial {
  border-color: rgba(35,95,147,.22);
  background: rgba(35,95,147,.065);
}
.ai-guidance-route span,
.ai-guidance-preview-grid span {
  width: fit-content;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 999px;
  background: rgba(255,113,24,.10);
  color: var(--brand-dark);
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.ai-guidance-route.exact span,
.ai-guidance-preview-grid article.exact span {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.ai-guidance-preview-grid article.partial span {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.08);
  color: #235f93;
}
.ai-guidance-route b,
.ai-guidance-preview-grid b,
.ai-guidance-preview-grid strong {
  color: var(--ink);
  line-height: 1.16;
}
.ai-guidance-preview-grid strong {
  color: #235f93;
  font-size: 12px;
  font-weight: 950;
}
.ai-guidance-route p,
.ai-guidance-route small,
.ai-guidance-preview-grid p,
.ai-guidance-preview-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.provider-action-map-details {
  margin-top: 14px;
}
.provider-action-route {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(20,184,116,.24);
  border-radius: 10px;
  background: rgba(20,184,116,.07);
  padding: 11px;
}
.provider-action-route span,
.provider-action-grid span {
  width: fit-content;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 999px;
  background: rgba(255,113,24,.10);
  color: var(--brand-dark);
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.provider-action-route b,
.provider-action-grid b {
  color: var(--ink);
  line-height: 1.16;
}
.provider-action-route p,
.provider-action-grid p,
.provider-action-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.provider-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.provider-action-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,113,24,.07);
  padding: 11px;
}
.provider-action-grid article > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.provider-action-grid article.can-automate {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.08);
}
.provider-action-grid article.tool-guided {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.07);
}
.provider-action-grid article.guide-with-docs,
.provider-action-grid article.guide-only {
  border-color: rgba(255,113,24,.22);
  background: rgba(255,113,24,.065);
}
.provider-action-grid article.can-automate span {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.provider-action-grid article.tool-guided span {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.08);
  color: #235f93;
}
.provider-coverage-matrix-details {
  margin-top: 14px;
}
.provider-coverage-summary {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 10px;
  background: rgba(35,95,147,.055);
  padding: 11px;
}
.provider-coverage-summary > span,
.provider-coverage-grid span {
  width: fit-content;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 999px;
  background: rgba(255,113,24,.10);
  color: var(--brand-dark);
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.provider-coverage-summary b,
.provider-coverage-grid b {
  color: var(--ink);
  line-height: 1.16;
}
.provider-coverage-summary p,
.provider-coverage-summary small,
.provider-coverage-grid p,
.provider-coverage-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.provider-coverage-summary > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.provider-coverage-summary small {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 999px;
  background: rgba(255,255,255,.58);
  padding: 4px 7px;
}
.template-launch-chip {
  width: fit-content;
  border: 1px solid rgba(20,184,116,.24);
  border-radius: 999px;
  background: rgba(20,184,116,.09);
  color: #176247;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
  line-height: 1.1;
}
.template-launch-chip.status-guided {
  border-color: rgba(255,113,24,.24);
  background: rgba(255,113,24,.08);
  color: #9a3a00;
}
.template-launch-chip.status-review {
  border-color: rgba(43,93,171,.24);
  background: rgba(43,93,171,.08);
  color: #294f94;
}
.template-launch-chip.status-coming-soon {
  border-color: rgba(104,96,113,.22);
  background: rgba(104,96,113,.08);
  color: #686071;
}
.provider-coverage-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.provider-coverage-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,113,24,.07);
  padding: 11px;
}
.provider-coverage-grid article > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.provider-coverage-grid article.coverage-tool {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.08);
}
.provider-coverage-grid article.coverage-guided-tool,
.provider-coverage-grid article.coverage-docs {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.07);
}
.provider-coverage-grid article.coverage-tool span {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.provider-coverage-grid article.coverage-guided-tool span,
.provider-coverage-grid article.coverage-docs span {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.08);
  color: #235f93;
}
.route-action-queue-details {
  margin-top: 14px;
}
.route-action-summary {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 10px;
  background: rgba(35,95,147,.055);
  padding: 11px;
}
.route-action-summary > span,
.route-action-grid article > div span {
  width: fit-content;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 999px;
  background: rgba(255,113,24,.10);
  color: var(--brand-dark);
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.route-action-summary b,
.route-action-grid b {
  color: var(--ink);
  line-height: 1.16;
}
.route-action-summary p,
.route-action-summary small,
.route-action-grid p,
.route-action-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.route-action-summary > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.route-action-summary small {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 999px;
  background: rgba(255,255,255,.58);
  padding: 4px 7px;
}
.route-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.route-action-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 10px;
  background: rgba(255,250,243,.72);
  padding: 11px;
}
.route-action-grid article > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.route-action-grid em {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
}
.route-action-grid strong {
  color: var(--ink);
}
.route-action-grid .queue-ready,
.route-action-grid .queue-guide,
.route-action-grid article.queue-ready,
.route-action-grid article.queue-guide {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.07);
}
.route-action-grid article.queue-approval {
  border-color: rgba(255,113,24,.28);
  background: rgba(255,113,24,.08);
}
.route-action-grid article.queue-blocked {
  border-color: rgba(180,72,20,.22);
  background: rgba(180,72,20,.06);
}
.route-action-grid article.queue-approved {
  border-color: rgba(20,184,116,.32);
  background: rgba(20,184,116,.12);
}
.route-action-grid article.queue-deferred {
  border-color: rgba(35,95,147,.22);
  background: rgba(35,95,147,.065);
}
.runtime-execution-details {
  margin-top: 14px;
}
.runtime-execution-summary {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 10px;
  background: rgba(35,95,147,.055);
  padding: 11px;
}
.runtime-execution-summary > span,
.runtime-execution-grid article > div span,
.runtime-step {
  width: fit-content;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 999px;
  background: rgba(255,113,24,.10);
  color: var(--brand-dark);
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.runtime-execution-summary b,
.runtime-execution-grid b {
  color: var(--ink);
  line-height: 1.16;
}
.runtime-execution-summary p,
.runtime-execution-grid p,
.runtime-execution-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.runtime-execution-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.runtime-execution-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,113,24,.07);
  padding: 11px;
}
.runtime-execution-grid article > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.runtime-execution-grid article.runtime-tool {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.08);
}
.runtime-execution-grid article.runtime-file,
.runtime-execution-grid article.runtime-skill {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.07);
}
.runtime-step-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.runtime-step.step-ready {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.runtime-step.step-approval {
  border-color: rgba(255,113,24,.30);
  background: rgba(255,113,24,.12);
  color: var(--brand-dark);
}
.runtime-step.step-future,
.runtime-step.step-blocked {
  border-color: rgba(180,72,20,.24);
  background: rgba(180,72,20,.065);
  color: #b44814;
}
.approval-packet-details {
  margin-top: 14px;
}
.approval-packet-summary {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 10px;
  background: rgba(255,113,24,.075);
  padding: 11px;
}
.approval-packet-summary > span,
.approval-packet-grid article > div span {
  width: fit-content;
  border: 1px solid rgba(255,113,24,.26);
  border-radius: 999px;
  background: rgba(255,113,24,.11);
  color: var(--brand-dark);
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.approval-packet-summary b,
.approval-packet-grid b {
  color: var(--ink);
  line-height: 1.16;
}
.approval-packet-summary p,
.approval-packet-grid p,
.approval-packet-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.approval-packet-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.approval-packet-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,113,24,.065);
  padding: 11px;
}
.approval-packet-grid article > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.approval-packet-grid em {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
}
.approval-packet-grid strong {
  color: var(--ink);
}
.approval-packet-grid article.packet-approved {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.10);
}
.approval-packet-grid article.packet-blocked {
  border-color: rgba(180,72,20,.24);
  background: rgba(180,72,20,.065);
}
.approval-packet-grid article.packet-deferred {
  border-color: rgba(35,95,147,.22);
  background: rgba(35,95,147,.065);
}
.pre-stripe-readiness-details {
  margin-top: 14px;
}
.pre-stripe-summary {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(20,184,116,.22);
  border-radius: 10px;
  background: rgba(20,184,116,.065);
  padding: 11px;
}
.pre-stripe-summary > span,
.pre-stripe-category-head span,
.pre-stripe-item em {
  width: fit-content;
  border: 1px solid rgba(20,184,116,.26);
  border-radius: 999px;
  background: rgba(20,184,116,.10);
  color: var(--green);
  padding: 4px 7px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.pre-stripe-summary b,
.pre-stripe-category-head b,
.pre-stripe-item strong,
.pre-stripe-item b {
  color: var(--ink);
  line-height: 1.16;
}
.pre-stripe-summary p,
.pre-stripe-summary small,
.pre-stripe-item p,
.pre-stripe-item small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.pre-stripe-summary > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.pre-stripe-summary small {
  border: 1px solid rgba(20,184,116,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.58);
  padding: 4px 7px;
}
.pre-stripe-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.pre-stripe-grid > article {
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 10px;
  background: rgba(35,95,147,.045);
  padding: 10px;
}
.pre-stripe-category-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.pre-stripe-item {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 9px;
  background: rgba(255,250,243,.70);
  padding: 9px;
}
.pre-stripe-item > div {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 8px;
}
.pre-stripe-item.status-ready {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.075);
}
.pre-stripe-item.status-inProgress {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.07);
}
.pre-stripe-item.status-needsUser,
.pre-stripe-item.status-waitsBusiness {
  border-color: rgba(255,113,24,.28);
  background: rgba(255,113,24,.075);
}
.pre-stripe-item.status-stripeHold {
  border-color: rgba(180,72,20,.24);
  background: rgba(180,72,20,.07);
}
.pre-stripe-item.status-inProgress em {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.08);
  color: #235f93;
}
.pre-stripe-item.status-needsUser em,
.pre-stripe-item.status-waitsBusiness em {
  border-color: rgba(255,113,24,.30);
  background: rgba(255,113,24,.11);
  color: var(--brand-dark);
}
.pre-stripe-item.status-stripeHold em {
  border-color: rgba(180,72,20,.24);
  background: rgba(180,72,20,.075);
  color: #b44814;
}
.stax-plan-details {
  margin-top: 14px;
}
.stax-plan-summary {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 10px;
  background: rgba(35,95,147,.055);
  padding: 11px;
}
.stax-plan-summary > span,
.stax-plan-category-head span,
.stax-plan-item em {
  width: fit-content;
  border: 1px solid rgba(35,95,147,.24);
  border-radius: 999px;
  background: rgba(35,95,147,.08);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.stax-plan-summary b,
.stax-plan-category-head b,
.stax-plan-item strong,
.stax-plan-item b {
  color: var(--ink);
  line-height: 1.16;
}
.stax-plan-summary p,
.stax-plan-summary small,
.stax-plan-item p,
.stax-plan-item small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.stax-plan-summary > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.stax-plan-summary small {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 999px;
  background: rgba(255,255,255,.58);
  padding: 4px 7px;
}
.stax-plan-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.stax-plan-grid > article {
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 10px;
  background: rgba(35,95,147,.045);
  padding: 10px;
}
.stax-plan-category-head,
.stax-plan-item > div {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 8px;
}
.stax-plan-category-head {
  align-items: center;
}
.stax-plan-item {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 9px;
  background: rgba(255,255,255,.62);
  padding: 9px;
}
.stax-plan-item.status-ready {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.075);
}
.stax-plan-item.status-inProgress {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.07);
}
.stax-plan-item.status-needsDecision,
.stax-plan-item.status-needsUser,
.stax-plan-item.status-waitsBusiness {
  border-color: rgba(255,113,24,.28);
  background: rgba(255,113,24,.075);
}
.stax-plan-item.server-only {
  box-shadow: inset 3px 0 0 rgba(255,113,24,.35);
}
.stax-plan-item.status-ready em {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.stax-plan-item.status-needsDecision em,
.stax-plan-item.status-needsUser em,
.stax-plan-item.status-waitsBusiness em {
  border-color: rgba(255,113,24,.30);
  background: rgba(255,113,24,.11);
  color: var(--brand-dark);
}
.ai-runtime-details {
  margin-top: 14px;
}
.ai-runtime-summary {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 10px;
  background: rgba(35,95,147,.055);
  padding: 11px;
}
.ai-runtime-summary > span,
.ai-runtime-grid span {
  width: fit-content;
  border: 1px solid rgba(35,95,147,.24);
  border-radius: 999px;
  background: rgba(35,95,147,.08);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  line-height: 1.1;
  text-transform: uppercase;
}
.ai-runtime-summary b,
.ai-runtime-grid b {
  color: var(--ink);
  line-height: 1.16;
}
.ai-runtime-summary p,
.ai-runtime-summary small,
.ai-runtime-grid p,
.ai-runtime-grid small {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.ai-runtime-summary > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.ai-runtime-summary small {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 999px;
  background: rgba(255,255,255,.58);
  padding: 4px 7px;
}
.ai-runtime-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.ai-runtime-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 10px;
  background: rgba(35,95,147,.055);
  padding: 11px;
}
.ai-runtime-grid article > div {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 8px;
}
.ai-runtime-grid article.status-ready {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.075);
}
.ai-runtime-grid article.status-scaffolded {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.07);
}
.ai-runtime-grid article.status-planned,
.ai-runtime-grid article.status-waitsForKey {
  border-color: rgba(255,113,24,.28);
  background: rgba(255,113,24,.075);
}
.ai-runtime-grid article.status-ready span {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.ai-runtime-grid article.status-planned span,
.ai-runtime-grid article.status-waitsForKey span {
  border-color: rgba(255,113,24,.30);
  background: rgba(255,113,24,.11);
  color: var(--brand-dark);
}
.connector-detail, .connector-reason, .approval-note { color: var(--muted); background: rgba(35,95,147,.06); border: 1px solid rgba(35,95,147,.12); border-radius: 10px; padding: 10px; line-height: 1.4; }
.approval-note {
  margin-top: 14px;
  clear: both;
}
.provider-auth-message {
  border-color: rgba(255,113,24,.24);
  background: rgba(255,113,24,.08);
  color: var(--brand-dark);
  font-weight: 850;
}
.connector-reason {
  display: grid;
  gap: 4px;
  border-color: rgba(255,113,24,.18);
  background: rgba(255,113,24,.06);
}
.connector-reason b {
  color: var(--brand-dark);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .55px;
  text-transform: uppercase;
}
.connector-reason span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}
.connector-reason.modal-reason {
  margin: 10px 0;
}
.connector-empty {
  grid-column: 1 / -1;
}
.connector-setup {
  display: grid;
  gap: 4px;
  background: rgba(255,113,24,.055);
  border-color: rgba(255,113,24,.16);
}
.connector-setup b {
  color: var(--brand-dark);
}
.connector-setup span {
  font-size: 13px;
  font-weight: 850;
}
.connector-state {
  justify-self: start;
}
.connector-state.state-read-only-connected {
  color: var(--green);
  border-color: rgba(20,184,116,.26);
  background: rgba(20,184,116,.10);
}
.connector-state.state-ready {
  color: #fff;
  border-color: var(--green);
  background: var(--green);
}
.connector-state.state-sign-in,
.connector-state.state-not-connected {
  color: var(--brand-dark);
  border-color: rgba(255,113,24,.28);
  background: rgba(255,113,24,.08);
}
.connector-state.state-needs-approval {
  color: var(--brand-dark);
  border-color: rgba(255,113,24,.36);
  background: rgba(255,113,24,.12);
}
.connector-state.state-guided-setup,
.connector-state.state-optional {
  color: #235f93;
}
.connector-state.state-server-side {
  color: var(--ink);
  border-color: rgba(104,96,113,.22);
  background: rgba(104,96,113,.08);
}
.connector-fill {
  display: grid;
  gap: 4px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 10px;
  background: rgba(255,113,24,.06);
  padding: 10px;
}
.connector-fill span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.connector-permissions {
  display: grid;
  gap: 7px;
}
.connector-permissions div {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(255,113,24,.16);
  border-radius: 10px;
  background: rgba(255,113,24,.055);
  padding: 9px;
}
.connector-permissions b {
  color: var(--brand-dark);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .55px;
  text-transform: uppercase;
}
.connector-permissions span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 820;
  line-height: 1.3;
}
.preview-gate-card {
  border-color: rgba(255,113,24,.24);
  background: linear-gradient(135deg, rgba(255,113,24,.075), rgba(255,253,249,.92));
}
.preview-boundary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}
.preview-boundary-grid div {
  display: grid;
  gap: 8px;
  align-content: start;
  border: 1px solid rgba(255,113,24,.16);
  border-radius: 12px;
  background: #fff;
  padding: 14px;
  min-width: 0;
  min-height: 120px;
}
.preview-boundary-grid b {
  font-size: 16px;
}
.preview-boundary-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.4;
}
.preview-boundary-grid span {
  color: var(--brand-dark);
  font-size: 12px;
  font-weight: 950;
}
.teaser-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 18px;
  border: 1px solid rgba(35,95,147,.14);
  border-radius: 12px;
  background: rgba(35,95,147,.055);
  padding: 10px;
}
.teaser-strip b {
  margin-right: 4px;
}
.teaser-strip span {
  border: 1px solid rgba(255,113,24,.22);
  border-radius: 999px;
  background: rgba(255,113,24,.08);
  color: var(--brand-dark);
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 950;
}
.preview-cta {
  margin-top: 18px;
}
.data-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.data-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 10px;
  align-items: start;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.data-field b,
.data-field p,
.data-field small {
  display: block;
}
.data-field p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  overflow-wrap: anywhere;
}
.data-field > span {
  border: 1px solid rgba(104,96,113,.22);
  border-radius: 999px;
  background: rgba(104,96,113,.08);
  color: var(--muted);
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
  white-space: nowrap;
}
.data-field small {
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.data-field.status-found,
.data-field.status-ready {
  border-color: rgba(20,184,116,.42);
  background: rgba(20,184,116,.07);
}
.data-field.status-found > span,
.data-field.status-ready > span {
  color: var(--green);
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.12);
}
.data-field.status-needs-sign-in,
.data-field.status-needs-user {
  border-color: rgba(255,113,24,.32);
  background: rgba(255,113,24,.06);
}
.data-field.status-needs-sign-in > span,
.data-field.status-needs-user > span {
  color: var(--brand-dark);
  border-color: rgba(255,113,24,.32);
  background: rgba(255,113,24,.10);
}
.data-field.status-server-only {
  border-color: rgba(104,96,113,.24);
  background: rgba(104,96,113,.06);
}
.data-field.status-approval-required {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.06);
}
.missing-list {
  display: grid;
  gap: 10px;
}
.missing-list div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.missing-list p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}
.missing-list span {
  grid-row: 1 / span 2;
  grid-column: 2;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 999px;
  background: rgba(255,113,24,.08);
  color: var(--brand-dark);
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
  white-space: nowrap;
}
.sensitive-grid div {
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.sensitive-grid div.safe {
  border-color: rgba(20,184,116,.30);
  background: rgba(20,184,116,.07);
}
.sensitive-grid div.server {
  border-color: rgba(104,96,113,.24);
  background: rgba(104,96,113,.06);
}
.sensitive-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}
.sensitive-grid span {
  justify-self: start;
  border: 1px solid rgba(104,96,113,.22);
  border-radius: 999px;
  color: var(--muted);
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
}
.entitlement-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.entitlement-grid div {
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.entitlement-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.38;
}
.entitlement-grid span {
  justify-self: start;
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 999px;
  background: rgba(35,95,147,.07);
  color: #235f93;
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
}
.activity-list {
  display: grid;
  gap: 9px;
  margin-top: 10px;
}
.activity-details {
  margin-top: 12px;
  border: 1px solid rgba(104,96,113,.18);
  border-radius: 12px;
  background: rgba(104,96,113,.045);
  padding: 10px;
}
.activity-details summary {
  color: var(--muted);
  cursor: pointer;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .7px;
}
.upgrade-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.upgrade-row button,
.upgrade-row div {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 12px;
  background: rgba(255,113,24,.06);
  color: var(--ink);
  padding: 11px;
  text-align: left;
}
.upgrade-row button {
  cursor: pointer;
}
.upgrade-row p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.upgrade-row span {
  justify-self: start;
  border: 1px solid rgba(255,113,24,.28);
  border-radius: 999px;
  background: rgba(255,113,24,.09);
  color: var(--brand-dark);
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
}
.activity-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,253,249,.72);
  padding: 10px;
}
.activity-list p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}
.activity-list span {
  grid-row: 1 / span 2;
  grid-column: 2;
  border: 1px solid rgba(20,184,116,.22);
  border-radius: 999px;
  background: rgba(20,184,116,.08);
  color: var(--green);
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
  white-space: nowrap;
}
.readiness-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.readiness-grid div {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.readiness-grid p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.38;
}
.launch-readiness {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}
.launch-readiness article {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(255,113,24,.055), rgba(255,253,249,.78));
  padding: 12px;
}
.launch-readiness div {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 10px;
}
.launch-readiness b {
  color: var(--ink);
}
.launch-readiness span {
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 999px;
  background: rgba(35,95,147,.08);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  line-height: 1;
  white-space: nowrap;
  text-transform: uppercase;
}
.launch-readiness p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.prelaunch-packet {
  display: grid;
  grid-template-columns: minmax(220px, .9fr) minmax(0, 1.5fr);
  gap: 12px;
  margin-top: 12px;
  border: 1px solid rgba(20,184,116,.22);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(20,184,116,.07), rgba(255,253,249,.86));
  padding: 12px;
}
.prelaunch-packet > div:first-child {
  display: grid;
  align-content: start;
  gap: 6px;
}
.prelaunch-packet span {
  color: var(--green);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .6px;
  text-transform: uppercase;
}
.prelaunch-packet b {
  color: var(--ink);
}
.prelaunch-packet p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.prelaunch-packet-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.prelaunch-packet-grid article {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(20,184,116,.16);
  border-radius: 8px;
  background: rgba(255,255,255,.72);
  padding: 10px;
}
.guided-demo {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border-top: 1px solid rgba(255,113,24,.14);
  padding-top: 12px;
}
.guided-demo-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.guided-demo-step {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px 10px;
  align-items: start;
  border: 1px solid rgba(255,113,24,.2);
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  padding: 11px;
  color: var(--ink);
  cursor: pointer;
  text-align: left;
}
.guided-demo-step:hover,
.guided-demo-step.active {
  border-color: rgba(20,184,116,.38);
  background: rgba(20,184,116,.08);
}
.guided-demo-step span {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border: 1px solid rgba(255,113,24,.26);
  border-radius: 999px;
  color: var(--brand-dark);
  font-size: 11px;
  font-weight: 950;
}
.guided-demo-step b {
  align-self: center;
  color: var(--ink);
  font-size: 13px;
}
.guided-demo-step p {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.left-rail .guided-demo {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 12px;
  background: rgba(35,95,147,.055);
  padding: 12px;
}
.left-rail .guided-demo .card-head {
  display: grid;
  gap: 8px;
  margin-bottom: 0;
}
.left-rail .guided-demo .card-head p {
  font-size: 12px;
}
.left-rail .guided-demo-grid {
  grid-template-columns: 1fr;
}
.left-rail .guided-demo-step {
  background: rgba(255,255,255,.78);
}
.demo-talk-track {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(20,184,116,.2);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(20,184,116,.07), rgba(255,253,249,.76));
  box-shadow: 0 18px 55px rgba(31,24,14,.06);
  padding: 14px;
  min-width: 0;
}
.demo-talk-track h3 {
  margin: 0;
  color: var(--ink);
  font-size: 18px;
}
.demo-talk-track div:not(.kicker) {
  display: grid;
  gap: 4px;
  border-top: 1px solid rgba(20,184,116,.14);
  padding-top: 9px;
}
.demo-talk-track b {
  color: var(--green);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .5px;
  text-transform: uppercase;
}
.demo-talk-track p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.38;
}
.launch-mode-grid,
.slot-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.launch-locked {
  border-color: rgba(255,113,24,.24);
  background: linear-gradient(135deg, rgba(255,113,24,.08), rgba(255,253,249,.92));
}
.launch-lock-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}
.launch-lock-grid div {
  display: grid;
  gap: 8px;
  align-content: start;
  border: 1px solid rgba(255,113,24,.16);
  border-radius: 12px;
  background: #fff;
  padding: 14px;
  min-width: 0;
  min-height: 136px;
}
.launch-lock-grid b {
  font-size: 16px;
}
.launch-lock-grid p {
  margin: 0;
}
.launch-lock-grid span {
  color: var(--brand-dark);
  font-size: 12px;
  font-weight: 950;
}
.checkout-trust {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
  border: 1px solid rgba(20,184,116,.22);
  border-radius: 12px;
  background: rgba(20,184,116,.07);
  padding: 11px 12px;
}
.checkout-trust b {
  color: var(--green);
  font-size: 13px;
  white-space: nowrap;
}
.checkout-trust span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.checkout-status {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin-top: 12px;
  border: 1px solid rgba(104,96,113,.18);
  border-radius: 12px;
  background: rgba(104,96,113,.055);
  padding: 10px 12px;
}
.checkout-status b {
  color: var(--muted);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .65px;
  white-space: nowrap;
}
.checkout-status span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.checkout-status.checkout-preparing,
.checkout-status.checkout-ready {
  border-color: rgba(255,113,24,.26);
  background: rgba(255,113,24,.08);
}
.checkout-status.checkout-preparing b,
.checkout-status.checkout-ready b {
  color: var(--brand-dark);
}
.checkout-status.checkout-confirmed {
  border-color: rgba(20,184,116,.24);
  background: rgba(20,184,116,.08);
}
.checkout-status.checkout-confirmed b {
  color: var(--green);
}
.checkout-status.checkout-failed {
  border-color: rgba(168,83,7,.28);
  background: rgba(168,83,7,.08);
}
.checkout-status.checkout-failed b {
  color: #a85307;
}
.unlock-preview,
.plan-service-difference,
.launch-blockers-preview {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 12px;
  background: rgba(255,255,255,.58);
  padding: 12px;
}
.unlock-preview-grid,
.plan-service-grid,
.launch-blocker-grid {
  display: grid;
  gap: 10px;
}
.plan-service-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.unlock-preview-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.launch-blocker-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.unlock-preview-grid article,
.plan-service-grid article,
.launch-blocker-grid article,
.unlock-preview-route {
  display: grid;
  gap: 7px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.76);
  padding: 11px;
  min-width: 0;
}
.unlock-preview-grid b,
.plan-service-grid b,
.unlock-preview-route b,
.launch-blocker-grid b {
  color: var(--ink);
  font-size: 14px;
}
.unlock-preview-grid p,
.plan-service-grid p,
.unlock-preview-route span,
.launch-blocker-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.plan-service-grid span {
  color: #b24a00;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.unlock-preview-route {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  border-color: rgba(35,95,147,.16);
  background: rgba(35,95,147,.055);
}
.unlock-preview-route span {
  overflow-wrap: anywhere;
}
.launch-blocker-grid span {
  width: fit-content;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 999px;
  background: rgba(35,95,147,.06);
  color: #235f93;
  padding: 4px 7px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
}
.locked-action-rehearsal {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 12px;
  background: rgba(35,95,147,.055);
  padding: 12px;
}
.locked-action-rehearsal p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.locked-action-rehearsal div:last-child {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.locked-action-rehearsal span {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 999px;
  background: rgba(35,95,147,.06);
  color: #235f93;
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 900;
}
.action-preview {
  grid-column: 1 / -1;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 10px;
  background: rgba(35,95,147,.045);
  padding: 9px;
}
.action-preview summary {
  color: var(--brand-dark);
  cursor: pointer;
  font-size: 12px;
  font-weight: 950;
}
.action-preview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 9px;
}
.action-preview-grid div {
  display: grid;
  gap: 5px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.66);
  padding: 9px;
}
.action-preview-grid span,
.action-preview-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.28;
}
.action-preview-grid em {
  color: var(--green);
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}
.checkout-status.checkout-expired,
.checkout-status.checkout-payment_failed,
.checkout-status.checkout-refunded {
  border-color: rgba(168,83,7,.28);
  background: rgba(168,83,7,.08);
}
.checkout-status.checkout-expired b,
.checkout-status.checkout-payment_failed b,
.checkout-status.checkout-refunded b {
  color: #a85307;
}
.payment-fixtures {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 12px;
  background: rgba(35,95,147,.055);
  padding: 12px;
}
.payment-fixtures p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.payment-fixture-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.payment-fixture {
  display: grid;
  gap: 5px;
  min-height: 88px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255,255,255,.78);
  color: var(--ink);
  padding: 9px;
  text-align: left;
  cursor: pointer;
}
.payment-fixture.selected {
  border-color: rgba(20,184,116,.62);
  background: rgba(20,184,116,.10);
}
.payment-fixture span {
  color: var(--brand-dark);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .45px;
  text-transform: uppercase;
}
.payment-fixture b {
  font-size: 13px;
  line-height: 1.18;
}
.payment-fixture small,
.fixture-expectation {
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.launch-plan-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 2px;
}
.launch-protection {
  display: grid;
  gap: 7px;
  align-content: start;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  color: var(--ink);
  padding: 12px;
  text-align: left;
  cursor: pointer;
  min-width: 0;
}
.launch-protection p,
.launch-protection span,
.slot-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.38;
}
.launch-protection span {
  display: block;
  border-top: 1px solid var(--line);
  padding-top: 7px;
}
.launch-protection.selected {
  border-color: rgba(255,113,24,.58);
  background: rgba(255,113,24,.08);
  box-shadow: 0 0 0 3px rgba(255,113,24,.08);
}
.launch-checks {
  display: grid;
  gap: 10px;
}
.launch-check {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.launch-check p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}
.launch-check > span,
.slot-grid span {
  border: 1px solid rgba(104,96,113,.22);
  border-radius: 999px;
  background: rgba(104,96,113,.08);
  color: var(--muted);
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
  white-space: nowrap;
}
.launch-check.status-ready,
.launch-check.status-prepared {
  border-color: rgba(20,184,116,.36);
  background: rgba(20,184,116,.07);
}
.launch-check.status-ready > span,
.launch-check.status-prepared > span {
  color: var(--green);
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.12);
}
.launch-check.status-needs-sign-in,
.launch-check.status-needs-domain,
.launch-check.status-needs-purchase {
  border-color: rgba(255,113,24,.30);
  background: rgba(255,113,24,.06);
}
.launch-check.status-needs-sign-in > span,
.launch-check.status-needs-domain > span,
.launch-check.status-needs-purchase > span {
  color: var(--brand-dark);
  border-color: rgba(255,113,24,.30);
  background: rgba(255,113,24,.10);
}
.launch-check.status-approval-required {
  border-color: rgba(35,95,147,.24);
  background: rgba(35,95,147,.06);
}
.approval-queue {
  display: grid;
  gap: 10px;
}
.approval-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.approval-item p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}
.approval-item small {
  display: block;
  margin-top: 7px;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 10px;
  background: rgba(255,113,24,.07);
  color: var(--brand-dark);
  padding: 8px;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
}
.approval-item > span,
.approval-item > em {
  border: 1px solid rgba(104,96,113,.22);
  border-radius: 999px;
  background: rgba(104,96,113,.08);
  color: var(--muted);
  padding: 6px 8px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  white-space: nowrap;
}
.approval-item > em {
  grid-column: 1 / -1;
  justify-self: start;
}
.approval-buttons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: end;
}
.approval-item.blocked-order {
  border-color: rgba(255,113,24,.30);
}
.approval-advice {
  grid-column: 1 / -1;
  border: 1px solid rgba(35,95,147,.18);
  border-radius: 12px;
  background: rgba(35,95,147,.06);
  padding: 10px;
}
.approval-advice b {
  display: block;
  color: #235f93;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .7px;
}
.approval-advice p {
  margin: 5px 0 0;
}
.approval-item.status-approved {
  border-color: rgba(20,184,116,.36);
  background: rgba(20,184,116,.07);
}
.approval-item.status-approved > em {
  color: var(--green);
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.12);
}
.approval-item.status-deferred {
  border-color: rgba(255,113,24,.30);
  background: rgba(255,113,24,.06);
}
.approval-item.status-deferred > em {
  color: var(--brand-dark);
  border-color: rgba(255,113,24,.30);
  background: rgba(255,113,24,.10);
}
.never-auto {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 12px;
  border: 1px solid rgba(173,54,54,.16);
  border-radius: 12px;
  background: rgba(173,54,54,.05);
  padding: 10px;
}
.never-auto b {
  margin-right: 4px;
}
.never-auto span {
  border: 1px solid rgba(173,54,54,.22);
  border-radius: 999px;
  color: #ad3636;
  background: rgba(173,54,54,.07);
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
}
.slot-grid div {
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.slot-grid span {
  justify-self: start;
}
.permission-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.permission-row span {
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 999px;
  background: rgba(255,113,24,.07);
  color: var(--brand-dark);
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 950;
}
.located-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.located-provider {
  display: grid;
  gap: 9px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.located-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}
.located-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}
.located-account {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 4px 10px;
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255,253,249,.72);
  color: var(--ink);
  padding: 10px;
  text-align: left;
  cursor: pointer;
}
.located-account span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.located-account em {
  grid-row: 1 / span 2;
  grid-column: 2;
  align-self: center;
  border: 1px solid rgba(255,113,24,.28);
  border-radius: 999px;
  color: var(--brand-dark);
  padding: 6px 9px;
  font-style: normal;
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
}
.located-account.selected {
  border-color: rgba(255,113,24,.62);
  background: rgba(255,113,24,.08);
  box-shadow: 0 0 0 3px rgba(255,113,24,.08);
}
.automation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.automation-card {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.automation-card div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}
.automation-card span {
  border: 1px solid rgba(35,95,147,.20);
  border-radius: 999px;
  background: rgba(35,95,147,.07);
  color: #235f93;
  padding: 6px 8px;
  font-size: 11px;
  font-weight: 950;
  white-space: nowrap;
}
.automation-card p,
.automation-card small {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.automation-card small {
  border-top: 1px solid var(--line);
  padding-top: 8px;
}
.automation-card ol {
  display: grid;
  gap: 6px;
  margin: 0;
  padding-left: 18px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}
.automation-card li::marker {
  color: var(--brand-dark);
  font-weight: 950;
}
.empty-state {
  border: 1px dashed rgba(104,96,113,.30);
  border-radius: 12px;
  background: rgba(104,96,113,.06);
  color: var(--muted);
  padding: 18px;
  font-weight: 900;
}
.verify-list {
  display: grid;
  gap: 10px;
  margin: 14px 0;
}
.verify-list div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.verify-list p {
  margin: 5px 0 0;
}
.catalog-groups {
  display: grid;
  gap: 14px;
}
.catalog-groups b {
  display: block;
  margin-bottom: 8px;
}
.chip-row { display: flex; flex-wrap: wrap; gap: 8px; }
.chip.selected {
  border-color: rgba(20,184,116,.28);
  background: rgba(20,184,116,.10);
  color: var(--green);
}
.chip-row.muted .chip {
  opacity: .74;
}
.launch-actions {
  margin-top: 14px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 36%);
  gap: 14px;
  align-items: center;
  border: 1px solid rgba(255,113,24,.22);
  border-radius: 12px;
  background: rgba(255,113,24,.06);
  padding: 14px;
}
.launch-actions p { margin: 4px 0 0; }
.launch-actions .btn {
  min-width: 0;
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  padding-inline: 14px;
}

.modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 10020;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(8,7,15,.58);
  backdrop-filter: blur(8px);
}
.auth-modal {
  width: min(620px, 100%);
  display: grid;
  gap: 14px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 16px;
  background: var(--panel);
  color: var(--ink);
  box-shadow: 0 28px 80px rgba(8,7,15,.35);
  padding: 18px;
}
.auth-modal.unlock-pricing-modal {
  width: min(820px, 100%);
}
.modal-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}
.modal-head span {
  color: var(--brand-dark);
  text-transform: uppercase;
  letter-spacing: 1.6px;
  font-size: 12px;
  font-weight: 950;
}
.modal-head h3 {
  margin: 4px 0 0;
  font-size: 24px;
}
.modal-head button {
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--muted);
  font-weight: 950;
  cursor: pointer;
}
.permission-lists {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.permission-lists.compact {
  margin-top: -2px;
}
.permission-lists div {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.permission-lists span {
  color: var(--muted);
  font-weight: 850;
}
.modal-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.site-footer {
  width: min(920px, calc(100% - 32px));
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin: 34px auto 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .75px;
}
.site-footer b {
  color: var(--ink);
}
.site-footer a {
  border: 1px solid rgba(104,96,113,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.42);
  color: var(--muted);
  padding: 4px 7px;
  text-decoration: none;
}
.site-footer a:hover {
  border-color: rgba(255,113,24,.36);
  background: rgba(255,113,24,.08);
  color: var(--brand-dark);
}
.site-footer small {
  color: var(--brand-dark);
  font: inherit;
}
.public-page {
  min-height: 100vh;
  background: linear-gradient(180deg, #fffaf3 0, #f7f1e8 48%, #efe8de 100%);
}
.public-hero {
  color: #fffaf3;
  background:
    radial-gradient(circle at 76% 12%, rgba(255,176,74,.18) 0%, transparent 30%),
    linear-gradient(90deg, rgba(8,7,15,.98) 0%, rgba(8,7,15,.88) 58%, rgba(8,7,15,.55) 100%),
    url("/bridge/public/stonepath-hero-bridge.png");
  background-size: 100% 100%, 100% 100%, min(1320px, 82vw) auto;
  background-position: center, center, center 88%;
  background-repeat: no-repeat;
  padding: 24px clamp(18px, 5vw, 72px) 54px;
}
.public-hero-compact {
  padding-bottom: 40px;
}
.public-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  margin-bottom: 52px;
}
.public-nav a {
  border: 1px solid rgba(255,250,243,.34);
  border-radius: 999px;
  background: rgba(8,7,15,.64);
  color: #fffaf3;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 950;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .6px;
}
.public-nav a:hover {
  border-color: rgba(255,113,24,.72);
  color: #ffb06a;
}
.public-hero p {
  margin: 0 0 8px;
  color: #ffb06a;
  font-size: 13px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 1.3px;
}
.public-hero h1 {
  max-width: 900px;
  margin: 0;
  font-size: clamp(36px, 6vw, 76px);
  line-height: .95;
  letter-spacing: 0;
}
.public-hero span {
  display: block;
  max-width: 820px;
  margin-top: 16px;
  color: rgba(255,250,243,.78);
  font-size: 16px;
  font-weight: 850;
  line-height: 1.45;
}
.public-doc {
  width: min(920px, calc(100% - 32px));
  margin: -28px auto 72px;
  border: 1px solid rgba(255,113,24,.18);
  border-radius: 8px;
  background: rgba(255,253,249,.96);
  box-shadow: 0 24px 72px rgba(8,7,15,.10);
  padding: clamp(18px, 4vw, 38px);
}
.public-lead {
  border-left: 4px solid var(--brand);
  background: rgba(255,113,24,.06);
  margin: 0 0 24px;
  padding: 12px 14px;
  color: var(--ink);
  font-size: 17px;
  font-weight: 850;
  line-height: 1.45;
}
.public-doc h2 {
  margin: 28px 0 8px;
  color: var(--brand-dark);
  font-size: 22px;
  line-height: 1.12;
}
.public-doc p,
.public-doc li {
  color: var(--ink);
  font-size: 16px;
  line-height: 1.58;
}
.public-doc p {
  margin: 0 0 12px;
}
.public-doc ul {
  margin: 8px 0 18px;
  padding-left: 24px;
}
.public-doc a {
  color: var(--brand-dark);
  font-weight: 900;
}
.public-cta {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(255,113,24,.34);
  border-radius: 8px;
  background: var(--brand);
  color: #fff !important;
  padding: 11px 14px;
  text-decoration: none;
}
.software-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.software-card {
  display: grid;
  gap: 8px;
  min-height: 148px;
  border: 1px solid rgba(104,96,113,.16);
  border-radius: 8px;
  background: rgba(104,96,113,.045);
  padding: 16px;
  color: var(--ink);
  text-decoration: none;
}
.software-card:hover {
  border-color: rgba(255,113,24,.42);
  background: rgba(255,113,24,.06);
}
.software-card b {
  color: var(--brand-dark);
  font-size: 22px;
}
.software-card span {
  color: var(--muted);
  font-size: 15px;
  font-weight: 850;
  line-height: 1.4;
}
.stax-gateway-modal {
  width: min(680px, 100%);
}
.stax-gateway-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, .75fr);
  gap: 12px;
}
.stax-project-field,
.stax-account-status {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}
.stax-project-field span,
.stax-account-status span {
  color: var(--brand-dark);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .7px;
  text-transform: uppercase;
}
.stax-account-status b {
  color: var(--ink);
}
.stax-project-field b {
  color: var(--ink);
  font-size: 15px;
}
.stax-account-status small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.stax-account-status em {
  border: 1px solid rgba(255,113,24,.22);
  border-radius: 8px;
  background: rgba(255,113,24,.07);
  color: var(--brand-dark);
  padding: 7px 8px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  line-height: 1.25;
}
.stax-project-field em,
.stax-project-field small {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  line-height: 1.25;
}
.stax-existing-projects.locked {
  opacity: .92;
}
.stax-admin-details {
  border-color: rgba(35,95,147,.26);
}
.stax-admin-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}
.stax-admin-summary div,
.stax-admin-note,
.stax-admin-section,
.stax-locked-fields,
.stax-history {
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 12px;
  background: rgba(35,95,147,.045);
}
.stax-admin-summary div {
  display: grid;
  gap: 4px;
  padding: 11px;
}
.stax-admin-summary span,
.stax-admin-section-head span,
.stax-admin-field span,
.stax-locked-fields summary span,
.stax-history summary span {
  color: #235f93;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .7px;
  text-transform: uppercase;
}
.stax-admin-summary b,
.stax-admin-section-head b,
.stax-locked-grid b,
.stax-history-list b {
  color: var(--ink);
  font-size: 14px;
}
.stax-admin-summary small,
.stax-admin-section p,
.stax-admin-field small,
.stax-locked-grid span,
.stax-history-list span,
.stax-history-list p {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.stax-admin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}
.stax-admin-note {
  margin: 0 0 12px;
  padding: 11px 12px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}
.stax-admin-section-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.stax-admin-section {
  display: grid;
  gap: 10px;
  padding: 12px;
}
.stax-admin-section-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.stax-admin-field {
  display: grid;
  gap: 6px;
}
.stax-admin-field input,
.stax-admin-field textarea {
  background: rgba(255,255,255,.86);
}
.stax-locked-fields,
.stax-history {
  margin-top: 12px;
  padding: 11px;
}
.stax-locked-grid,
.stax-history-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}
.stax-locked-grid div,
.stax-history-list div {
  display: grid;
  gap: 3px;
  border: 1px solid rgba(104,96,113,.14);
  border-radius: 10px;
  background: rgba(255,255,255,.62);
  padding: 9px;
}

.ai-widget {
  position: fixed;
  right: max(24px, env(safe-area-inset-right));
  bottom: max(24px, env(safe-area-inset-bottom));
  z-index: 80;
  width: min(360px, calc(100vw - 48px));
  display: grid;
  justify-items: end;
  gap: 10px;
  pointer-events: none;
  max-width: calc(100vw - 48px);
}
.ai-widget:not(.open) {
  width: auto;
}
.ai-widget > * { pointer-events: auto; }
.ai-bubble {
  display: grid;
  grid-template-columns: auto;
  gap: 0;
  align-items: center;
  justify-items: center;
  border: 1px solid rgba(255,113,24,.42);
  border-radius: 999px;
  background: linear-gradient(135deg, #08070f, #23140d 72%, #ff7118);
  color: #fff;
  box-shadow: 0 18px 54px rgba(31,24,14,.28), 0 0 0 5px rgba(255,113,24,.10);
  padding: 10px 13px;
  cursor: pointer;
  text-align: center;
  max-width: 100%;
}
.ai-bubble span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: #a93800; color: #fff; font-weight: 950; line-height: 1; text-align: center; }
.ai-bubble b { display: block; font-size: 15px; white-space: nowrap; }
.ai-panel {
  display: none;
  border: 1px solid rgba(255,113,24,.24);
  border-radius: 16px;
  background: rgba(255,253,249,.98);
  box-shadow: 0 22px 70px rgba(31,24,14,.24);
  padding: 14px;
  max-height: min(460px, max(260px, calc(100vh - 330px)));
  overflow: auto;
  width: 100%;
  box-sizing: border-box;
}
.ai-widget.open .ai-panel { display: grid; gap: 12px; }
.ai-head { justify-content: space-between; }
.ai-head small { display: block; color: var(--muted); margin-top: 4px; }
.ai-head button { width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 8px; background: #fff; font-weight: 950; cursor: pointer; }
.ask-counter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid rgba(35,95,147,.16);
  border-radius: 10px;
  background: rgba(35,95,147,.06);
  padding: 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 950;
}
.ask-counter div {
  display: flex;
  gap: 5px;
}
.ask-counter i {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(23,21,31,.18);
}
.ask-counter i.available {
  background: var(--brand);
  box-shadow: 0 0 10px rgba(255,113,24,.45);
}
.ai-context {
  display: grid;
  gap: 3px;
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,113,24,.07);
  padding: 10px;
}
.ai-context b,
.ai-context span {
  display: block;
}
.ai-context span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}
.ai-helper-status {
  display: grid;
  gap: 8px;
}
.ai-helper-status div {
  display: grid;
  gap: 3px;
  border: 1px solid rgba(104,96,113,.16);
  border-radius: 10px;
  background: rgba(104,96,113,.045);
  padding: 9px;
}
.ai-helper-status b {
  color: var(--ink);
  font-size: 12px;
}
.ai-helper-status span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}
.ai-stage-notes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.ai-stage-notes article,
.ai-autonomy-note {
  border: 1px solid rgba(255,113,24,.20);
  border-radius: 10px;
  background: rgba(255,113,24,.055);
  color: var(--muted);
  padding: 9px;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.38;
}
.ai-autonomy-note {
  border-color: rgba(255,68,36,.25);
  background: rgba(255,68,36,.065);
}
.ai-autonomy-note b {
  color: var(--ink);
}
.ai-prompts { display: flex; flex-wrap: wrap; gap: 8px; }
.ai-prompts button { border: 1px solid rgba(255,113,24,.28); border-radius: 999px; background: rgba(255,113,24,.08); color: var(--brand-dark); padding: 8px 10px; font-size: 12px; font-weight: 900; cursor: pointer; }
.ai-response {
  border: 1px dashed rgba(104,96,113,.24);
  border-radius: 12px;
  background: rgba(104,96,113,.045);
  color: var(--muted);
  padding: 11px;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.45;
  white-space: pre-wrap;
}
.ai-response.has-response {
  border-style: solid;
  border-color: rgba(20,184,116,.24);
  background: rgba(20,184,116,.075);
  color: var(--ink);
}

.launch-plan-grid .plan-price {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 6px !important;
}
.launch-plan-grid .plan-price-row {
  width: 100% !important;
}
.launch-plan-grid .plan-price-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
}

.theme-dark {
  --ink: #fffaf3;
  --muted: rgba(255,255,255,.62);
  --panel: #121018;
  --line: rgba(255,255,255,.13);
  --soft: #15121c;
  --dark-stage-surface: rgba(12,10,18,.88);
  --dark-stage-surface-soft: rgba(255,250,243,.075);
  --dark-stage-accent-surface: rgba(255,113,24,.115);
  --dark-stage-text: #fffaf3;
  --dark-stage-copy: rgba(255,250,243,.78);
  --dark-stage-dim: rgba(255,250,243,.64);
  --dark-stage-accent: #ffb06a;
  --dark-stage-accent-strong: #ffcf9f;
  --dark-stage-border: rgba(255,250,243,.20);
  background: radial-gradient(circle at 70% 0, rgba(255,113,24,.22), transparent 28%), #08070f;
}
.theme-dark .ai-stage-notes article,
.theme-dark .ai-autonomy-note {
  background: rgba(255,255,255,.055);
  color: var(--muted);
  border-color: var(--line);
}
.theme-dark .ai-autonomy-note b {
  color: var(--ink);
}
.theme-dark .early-believer-count {
  --early-pill-glow-rest:
    0 0 0 1px rgba(255,176,74,.12),
    0 0 22px rgba(255,113,24,.25),
    inset 0 1px 0 rgba(255,255,255,.08);
  --early-pill-glow-peak:
    0 0 0 1px rgba(255,176,74,.20),
    0 0 30px rgba(255,113,24,.35),
    inset 0 1px 0 rgba(255,255,255,.12);
  border-color: rgba(255,136,38,.58);
  background: linear-gradient(135deg, rgba(255,113,24,.18), rgba(255,176,74,.10));
  box-shadow: var(--early-pill-glow-rest);
}
.theme-dark .early-believer-count b {
  color: #ffd4a8;
}
.theme-dark .early-believer-count em {
  color: #ffb06a;
}
.theme-dark .early-believer-count small {
  color: rgba(255,238,219,.82);
}
.theme-dark .early-believer-count.closed b {
  color: #ffb8ad;
}
.theme-dark .plan-price-row {
  border-color: rgba(255,250,243,.16);
}
.theme-dark .plan-price-row small {
  color: #ffb06a;
}
.theme-dark .plan-price-row b {
  color: #62b7ff;
}
.theme-dark .plan-price-row em {
  color: var(--dark-stage-copy);
}
.theme-dark .early-believer-strip {
  --early-strip-glow-rest: 0 0 22px rgba(255,113,24,.18);
  --early-strip-glow-peak: 0 0 30px rgba(255,113,24,.28);
  background: linear-gradient(135deg, rgba(255,113,24,.16), rgba(255,250,243,.05));
  border-color: rgba(255,136,38,.50);
  box-shadow: var(--early-strip-glow-rest);
}
.theme-dark .early-believer-strip span {
  color: #ffb06a;
}
.theme-dark .early-believer-strip.closed {
  background: rgba(255,184,173,.07);
  border-color: rgba(255,184,173,.22);
}
.theme-dark .early-believer-strip.closed span {
  color: #ffb8ad;
}
.theme-dark .launch-offer-summary {
  background: linear-gradient(135deg, rgba(255,113,24,.09), rgba(255,250,243,.075));
  border-color: rgba(255,136,38,.42);
  box-shadow: 0 0 18px rgba(255,113,24,.12);
}
.theme-dark .launch-offer-card {
  background: rgba(255,255,255,.095);
  border-color: rgba(255,136,38,.20);
}
.theme-dark .launch-offer-card:hover,
.theme-dark .launch-offer-card:focus-visible {
  background: linear-gradient(135deg, rgba(255,113,24,.22), rgba(255,250,243,.08));
  border-color: rgba(255,136,38,.70);
  box-shadow: 0 14px 30px rgba(255,113,24,.20);
}
.theme-dark .launch-offer-card span {
  color: #ff8a2a;
}
.theme-dark .launch-offer-card b,
.theme-dark .unlock-pricing-rows .plan-price-row b {
  color: #62b7ff;
}
.theme-dark .pricing-shared-slot-pill {
  border-color: rgba(255,136,38,.50);
  background: rgba(255,113,24,.14);
  color: #ffd4a8;
}
.theme-dark .paid-mode-badge {
  border-color: rgba(98,183,255,.36);
  background: rgba(98,183,255,.10);
  color: #cae8ff;
}
.theme-dark .launch-offer-summary.assisted-mode .paid-mode-badge {
  border-color: rgba(20,184,116,.42);
  background: rgba(20,184,116,.12);
  color: #b8f2d2;
}
.theme-dark .unlock-pricing-option,
.theme-dark .unlock-pricing-rows,
.theme-dark .unlock-pricing-explain article {
  background: rgba(255,255,255,.055);
  border-color: rgba(255,250,243,.14);
}
.theme-dark .unlock-pricing-option.selected {
  background: linear-gradient(135deg, rgba(20,184,116,.12), rgba(255,255,255,.055));
  border-color: rgba(20,184,116,.36);
}
.theme-dark .unlock-pricing-option-head span {
  color: #ffb06a;
}
.theme-dark .unlock-pricing-option-head .btn.primary,
.theme-dark .unlock-pricing-modal .modal-actions .btn.primary {
  background: var(--brand);
  color: #fff;
  border-color: var(--brand);
  box-shadow: 0 10px 24px rgba(255,113,24,.28);
}
.theme-dark .route-box-locked-name.locked,
.theme-dark .route-box-locked-name.locked:hover,
.theme-dark .route-box-locked-name input[readonly] {
  background: rgba(255,255,255,.045);
}
.theme-dark .topbar {
  background:
    radial-gradient(circle at 72% 29%, rgba(255,176,74,.18) 0%, rgba(255,176,74,.08) 12%, transparent 26%),
    linear-gradient(90deg, rgba(8,7,15,.97) 0%, rgba(8,7,15,.85) 45%, rgba(8,7,15,.40) 100%),
    linear-gradient(180deg, rgba(8,7,15,.30) 0%, rgba(8,7,15,.10) 50%, rgba(8,7,15,.60) 100%),
    url("/bridge/public/stonepath-hero-bridge.png");
  background-size: 100% 100%, 100% 100%, 100% 100%, min(1320px, 82vw) auto;
  background-position: center, center, center, center 88%;
  background-repeat: no-repeat;
}
.theme-dark .notice, .theme-dark .card, .theme-dark .ai-panel { background: rgba(18,16,24,.94); }
.theme-dark .route-box, .theme-dark .mode, .theme-dark .mode-locked-card, .theme-dark .template-family, .theme-dark .route-confidence div, .theme-dark .confidence-legend div, .theme-dark .first-route-grid article, .theme-dark .readiness-metrics div, .theme-dark .readiness-gates article, .theme-dark .handoff-grid article, .theme-dark .handoff-wait, .theme-dark .rehearsal-steps article, .theme-dark .guided-demo-step, .theme-dark .demo-talk-track, .theme-dark .mock-account-grid article, .theme-dark .mock-account-details, .theme-dark .mock-acceptance div, .theme-dark .unlock-preview, .theme-dark .unlock-preview-grid article, .theme-dark .unlock-preview-route, .theme-dark .plan-service-difference, .theme-dark .plan-service-grid article, .theme-dark .launch-blockers-preview, .theme-dark .launch-blocker-grid article, .theme-dark .locked-action-rehearsal, .theme-dark .action-preview, .theme-dark .action-preview-grid div, .theme-dark .payment-fixture, .theme-dark .plan-price, .theme-dark .founder-pricing-note, .theme-dark .checkout-trust, .theme-dark .checkout-status, .theme-dark .ai-helper-status div, .theme-dark .ai-response, .theme-dark .preview-gate-card, .theme-dark .preview-boundary-grid div, .theme-dark .launch-locked, .theme-dark .launch-lock-grid div, .theme-dark .connector, .theme-dark .stats div, .theme-dark .check, .theme-dark .launch-grid div, .theme-dark .launch-protection, .theme-dark .launch-check, .theme-dark .approval-item, .theme-dark .never-auto, .theme-dark .slot-grid div, .theme-dark .entitlement-grid div, .theme-dark .upgrade-row button, .theme-dark .upgrade-row div, .theme-dark .activity-list article, .theme-dark .readiness-grid div, .theme-dark .prelaunch-packet, .theme-dark .prelaunch-packet-grid article, .theme-dark .verify-list div, .theme-dark .data-field, .theme-dark .missing-list div, .theme-dark .sensitive-grid div, .theme-dark .auth-flow div, .theme-dark .security-summary div, .theme-dark .stage-proof, .theme-dark .connector-reason, .theme-dark .connector-fill, .theme-dark .located-provider, .theme-dark .located-account, .theme-dark .automation-card, .theme-dark .provider-proof-grid article, .theme-dark .permission-lists div, .theme-dark .modal-head button, .theme-dark input, .theme-dark select, .theme-dark textarea, .theme-dark .project-display-name, .theme-dark .project-bar, .theme-dark .project-pill, .theme-dark .project-pill-main, .theme-dark .project-drawer, .theme-dark .drawer-editor, .theme-dark .project-dashboard div, .theme-dark .project-row, .theme-dark .project-row-main, .theme-dark .auth-bar, .theme-dark .auth-compact, .theme-dark .auth-modal, .theme-dark .tab, .theme-dark .btn { background: rgba(255,255,255,.055); color: var(--ink); border-color: var(--line); }
.theme-dark .stage-nav .tab {
  background: #fff;
  color: #111019;
  border-color: var(--brand);
}
.theme-dark select {
  color-scheme: dark;
  background-color: rgba(74, 45, 31, .78);
  color: #fff4e8;
  border-color: rgba(255,136,38,.42);
}
.theme-dark select option {
  background-color: #211721;
  color: #fff4e8;
}
.theme-dark .route-picker-toggle,
.theme-dark .route-picker-menu {
  background: rgba(74, 45, 31, .78);
  color: #fff4e8;
  border-color: rgba(255,136,38,.42);
}
.theme-dark .route-picker-menu button {
  color: #fff4e8;
}
.theme-dark .route-picker-menu button:hover,
.theme-dark .route-picker-menu button:focus-visible,
.theme-dark .route-picker-menu button[aria-selected="true"] {
  background: rgba(255,176,106,.18);
}
.theme-dark .preview-gate-card,
.theme-dark .launch-locked {
  background: linear-gradient(135deg, rgba(18,16,24,.96), rgba(12,10,18,.92));
  border-color: rgba(255,136,38,.32);
}
.theme-dark .simple-step,
.theme-dark .stage-proof,
.theme-dark .connector,
.theme-dark .connector-detail,
.theme-dark .connector-reason,
.theme-dark .connector-fill,
.theme-dark .connector-permissions div,
.theme-dark .auth-flow div,
.theme-dark .security-summary div,
.theme-dark .located-provider,
.theme-dark .located-account,
.theme-dark .automation-card,
.theme-dark .data-field,
.theme-dark .missing-list div,
.theme-dark .sensitive-grid div,
.theme-dark .verify-list div,
.theme-dark .launch-protection,
.theme-dark .launch-check,
.theme-dark .approval-item,
.theme-dark .approval-note,
.theme-dark .never-auto,
.theme-dark .slot-grid div,
.theme-dark .launch-lock-grid div,
.theme-dark .unlock-preview-grid article,
.theme-dark .unlock-preview-route,
.theme-dark .plan-service-grid article,
.theme-dark .launch-blocker-grid article,
.theme-dark .locked-action-rehearsal,
.theme-dark .action-preview,
.theme-dark .action-preview-grid div {
  background: var(--dark-stage-surface);
  color: var(--dark-stage-text);
  border-color: var(--dark-stage-border);
}
.theme-dark .stage-proof,
.theme-dark .connector-reason,
.theme-dark .connector-fill,
.theme-dark .connector-permissions div,
.theme-dark .security-summary div,
.theme-dark .launch-actions,
.theme-dark .unlock-preview,
.theme-dark .plan-service-difference,
.theme-dark .launch-blockers-preview,
.theme-dark .locked-action-rehearsal,
.theme-dark .approval-item small {
  background: var(--dark-stage-accent-surface);
  border-color: rgba(255,176,106,.30);
}
.theme-dark .simple-step:hover,
.theme-dark .simple-step:focus-within {
  background: rgba(255,113,24,.22);
  border-color: rgba(255,176,106,.62);
  box-shadow: 0 10px 28px rgba(0,0,0,.26), 0 0 0 2px rgba(255,113,24,.16);
}
.theme-dark .simple-step:hover .simple-step-icon,
.theme-dark .simple-step:focus-within .simple-step-icon {
  background: rgba(255,113,24,.30);
  border-color: rgba(255,176,106,.70);
  color: #fffaf4;
}
.theme-dark .simple-step p,
.theme-dark .stage-note,
.theme-dark .stage-proof small,
.theme-dark .connector p,
.theme-dark .connector-detail,
.theme-dark .connector-reason span,
.theme-dark .connector-fill span,
.theme-dark .connector-permissions span,
.theme-dark .security-summary span,
.theme-dark .located-head span,
.theme-dark .located-account span,
.theme-dark .automation-card p,
.theme-dark .automation-card small,
.theme-dark .automation-card ol,
.theme-dark .data-field p,
.theme-dark .data-field small,
.theme-dark .missing-list p,
.theme-dark .sensitive-grid p,
.theme-dark .verify-list p,
.theme-dark .launch-protection p,
.theme-dark .launch-protection span,
.theme-dark .launch-check p,
.theme-dark .approval-item p,
.theme-dark .slot-grid p,
.theme-dark .launch-lock-grid p,
.theme-dark .unlock-preview-grid p,
.theme-dark .plan-service-grid p,
.theme-dark .unlock-preview-route span,
.theme-dark .launch-blocker-grid p,
.theme-dark .locked-action-rehearsal p,
.theme-dark .action-preview-grid p,
.theme-dark .action-preview-grid span,
.theme-dark .checkout-trust span,
.theme-dark .checkout-status span {
  color: var(--dark-stage-copy);
}
.theme-dark .simple-step b,
.theme-dark .stage-proof strong,
.theme-dark .connector h3,
.theme-dark .connector-detail b,
.theme-dark .data-field b,
.theme-dark .missing-list b,
.theme-dark .sensitive-grid b,
.theme-dark .verify-list b,
.theme-dark .launch-protection b,
.theme-dark .launch-check b,
.theme-dark .approval-item b,
.theme-dark .never-auto b,
.theme-dark .slot-grid b,
.theme-dark .launch-lock-grid b,
.theme-dark .unlock-preview-grid b,
.theme-dark .plan-service-grid b,
.theme-dark .unlock-preview-route b,
.theme-dark .launch-blocker-grid b,
.theme-dark .locked-action-rehearsal b,
.theme-dark .automation-card b {
  color: var(--dark-stage-text);
}
.theme-dark .stage-proof > b,
.theme-dark .connector-reason b,
.theme-dark .connector-fill b,
.theme-dark .connector-permissions b,
.theme-dark .action-preview summary,
.theme-dark .automation-card li::marker,
.theme-dark .launch-lock-grid span,
.theme-dark .permission-row span {
  color: var(--dark-stage-accent-strong);
}
.theme-dark .simple-step-icon,
.theme-dark .data-field > span,
.theme-dark .missing-list span,
.theme-dark .sensitive-grid span,
.theme-dark .launch-check > span,
.theme-dark .approval-item > span,
.theme-dark .approval-item > em,
.theme-dark .slot-grid span,
.theme-dark .located-account em,
.theme-dark .automation-card span,
.theme-dark .launch-blocker-grid span {
  background: rgba(255,250,243,.08);
  border-color: rgba(255,250,243,.22);
  color: var(--dark-stage-copy);
}
.theme-dark .connector-state.state-sign-in,
.theme-dark .connector-state.state-not-connected,
.theme-dark .connector-state.state-needs-approval,
.theme-dark .data-field.status-needs-sign-in > span,
.theme-dark .data-field.status-needs-user > span,
.theme-dark .launch-check.status-needs-sign-in > span,
.theme-dark .launch-check.status-needs-domain > span,
.theme-dark .launch-check.status-needs-purchase > span,
.theme-dark .approval-item.status-deferred > em {
  background: rgba(255,113,24,.16);
  border-color: rgba(255,176,106,.36);
  color: var(--dark-stage-accent-strong);
}
.theme-dark .connector.connected,
.theme-dark .auth-flow .active,
.theme-dark .located-account.selected,
.theme-dark .launch-protection.selected,
.theme-dark .data-field.status-found,
.theme-dark .data-field.status-ready,
.theme-dark .sensitive-grid div.safe,
.theme-dark .launch-check.status-ready,
.theme-dark .launch-check.status-prepared,
.theme-dark .approval-item.status-approved {
  background: rgba(20,184,116,.13);
  border-color: rgba(86,236,171,.34);
}
.theme-dark .connector-state.state-read-only-connected,
.theme-dark .connector-state.state-ready,
.theme-dark .data-field.status-found > span,
.theme-dark .data-field.status-ready > span,
.theme-dark .launch-check.status-ready > span,
.theme-dark .launch-check.status-prepared > span,
.theme-dark .approval-item.status-approved > em,
.theme-dark .auth-flow .active b,
.theme-dark .simple-step.done .simple-step-icon {
  background: rgba(20,184,116,.18);
  border-color: rgba(86,236,171,.38);
  color: #9ff4c9;
}
.theme-dark .connector-state.state-guided-setup,
.theme-dark .connector-state.state-optional,
.theme-dark .automation-card span,
.theme-dark .launch-blocker-grid span {
  background: rgba(86,164,255,.14);
  border-color: rgba(134,190,255,.30);
  color: #b8d8ff;
}
.theme-dark .data-field.status-needs-sign-in,
.theme-dark .data-field.status-needs-user,
.theme-dark .launch-check.status-needs-sign-in,
.theme-dark .launch-check.status-needs-domain,
.theme-dark .launch-check.status-needs-purchase,
.theme-dark .approval-item.status-deferred {
  background: rgba(255,113,24,.11);
  border-color: rgba(255,176,106,.32);
}
.theme-dark .data-field.status-approval-required,
.theme-dark .launch-check.status-approval-required,
.theme-dark .approval-advice {
  background: rgba(86,164,255,.10);
  border-color: rgba(134,190,255,.24);
}
.theme-dark .sensitive-grid div.server,
.theme-dark .data-field.status-server-only {
  background: rgba(255,250,243,.075);
  border-color: rgba(255,250,243,.20);
}
.theme-dark .never-auto span {
  background: rgba(255,96,96,.12);
  border-color: rgba(255,128,128,.28);
  color: #ffb6b6;
}
.theme-dark .stax-gateway-modal {
  background: rgba(18,16,24,.96);
  border-color: rgba(255,250,243,.24);
  box-shadow: 0 30px 86px rgba(0,0,0,.52);
}
.theme-dark .automation-wiring-list article,
.theme-dark .provider-navigation-list article,
.theme-dark .screenshot-queue-grid article,
.theme-dark .ai-guidance-route,
.theme-dark .ai-guidance-preview-grid article,
.theme-dark .provider-action-route,
.theme-dark .provider-action-grid article,
.theme-dark .provider-coverage-summary,
.theme-dark .provider-coverage-grid article,
.theme-dark .route-action-summary,
.theme-dark .route-action-grid article,
.theme-dark .runtime-execution-summary,
.theme-dark .runtime-execution-grid article,
.theme-dark .approval-packet-summary,
.theme-dark .approval-packet-grid article,
.theme-dark .pre-stripe-summary,
.theme-dark .pre-stripe-grid > article,
.theme-dark .pre-stripe-item,
.theme-dark .stax-plan-summary,
.theme-dark .stax-plan-grid > article,
.theme-dark .stax-plan-item,
.theme-dark .ai-runtime-summary,
.theme-dark .ai-runtime-grid article {
  background: rgba(255,255,255,.055);
  border-color: var(--line);
}
.theme-dark .route-rehearsal {
  background: rgba(255,255,255,.055);
  border-color: var(--line);
}
.theme-dark .project-pill {
  background: #fff;
  color: #111019;
  border-color: var(--brand);
}
.theme-dark .project-pill-main {
  background: #fff;
  color: #111019;
  border-color: transparent;
}
.theme-dark .project-pill-main span {
  color: #686071;
}
.theme-dark .project-drawer,
.theme-dark .project-drawer .project-row,
.theme-dark .project-drawer .drawer-editor,
.theme-dark .project-drawer input,
.theme-dark .project-drawer .btn,
.theme-dark .project-drawer .project-row-main {
  background: #fff;
  color: #111019;
  border-color: #ded7ce;
}
.theme-dark .project-drawer {
  border-color: var(--brand);
}
.theme-dark .project-drawer p,
.theme-dark .project-drawer span,
.theme-dark .project-drawer .project-row-main span,
.theme-dark .project-drawer .project-dashboard span {
  color: #686071;
}
.theme-dark .tab.active {
  background: var(--brand);
  color: #fff;
  border-color: #fffaf3;
  box-shadow: 0 0 0 2px rgba(255,250,243,.18), 0 10px 26px rgba(255,113,24,.26);
}
.theme-dark .btn.dark {
  background: #fffaf3;
  color: #08070f;
  border-color: #fffaf3;
}
.theme-dark .mark { background: #111019; border-color: rgba(255,255,255,.24); }
.theme-dark .theme-switcher {
  background: rgba(8,7,15,.74);
  border-color: rgba(255,250,243,.34);
  box-shadow: 0 8px 20px rgba(0,0,0,.28);
}
.theme-dark .theme-switcher button { color: rgba(255,250,243,.86); }
.theme-dark .theme-switcher button.active { background: #fffaf3; color: #08070f; }
.theme-dark .launch-actions { background: rgba(255,113,24,.10); border-color: rgba(255,113,24,.28); }
.theme-dark .view-only-banner {
  background: rgba(255,113,24,.18);
  border-color: rgba(255,113,24,.42);
  color: #fffaf3;
}
.theme-dark .view-only-banner b { color: #fffaf3; }
.theme-dark .view-only-banner span { color: rgba(255,250,243,.76); }
.theme-dark .ask-counter { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.12); }
.theme-dark .ask-counter i { background: rgba(255,255,255,.22); }
.theme-dark .ai-context { background: rgba(255,113,24,.10); border-color: rgba(255,113,24,.24); }
.theme-dark .stax-gateway {
  background: rgba(22,16,15,.82);
  color: #fffaf3;
  border-color: rgba(255,113,24,.68);
  box-shadow: 0 10px 26px rgba(0,0,0,.30), 0 0 18px rgba(255,113,24,.16);
}
.theme-dark .stax-gateway span {
  color: #ffb06a;
}
.theme-dark .stax-gateway small {
  color: rgba(255,250,243,.82);
}
.theme-dark .site-footer,
.theme-dark .site-footer span {
  color: rgba(255,250,243,.66);
}
.theme-dark .site-footer a {
  border-color: rgba(255,250,243,.18);
  background: rgba(255,255,255,.055);
  color: rgba(255,250,243,.70);
}
.theme-dark .site-footer a:hover {
  border-color: rgba(255,113,24,.42);
  background: rgba(255,113,24,.12);
  color: #ffb16f;
}
.theme-dark .site-footer b {
  color: #fffaf3;
}
.theme-dark .site-footer small {
  color: #ffb16f;
}
.theme-dark .stax-project-field,
.theme-dark .stax-account-status,
.theme-dark .stax-admin-summary div,
.theme-dark .stax-admin-note,
.theme-dark .stax-admin-section,
.theme-dark .stax-locked-fields,
.theme-dark .stax-history,
.theme-dark .stax-locked-grid div,
.theme-dark .stax-history-list div {
  background: rgba(255,255,255,.055);
  border-color: var(--line);
}
.theme-dark .stax-admin-summary span,
.theme-dark .stax-admin-section-head span,
.theme-dark .stax-admin-field span,
.theme-dark .stax-project-field span,
.theme-dark .stax-account-status span {
  color: #9cc9ef;
}

@media (max-width: 900px) {
  .public-nav {
    justify-content: flex-start;
    margin-bottom: 34px;
  }
  .public-hero {
    padding: 18px 18px 44px;
  }
  .public-hero h1 {
    font-size: 38px;
  }
  .public-hero span {
    font-size: 15px;
  }
  .public-doc {
    width: min(100% - 24px, 920px);
    margin-top: -22px;
    padding: 18px;
  }
  .software-grid {
    grid-template-columns: 1fr;
  }
  .main, .workbar { grid-template-columns: 1fr; }
  .topbar { min-height: 0; align-content: start; }
  .topbar-inner {
    min-height: 0;
  }
  .top-actions { top: 12px; right: 12px; }
  .theme-switcher {
    width: 132px;
  }
  .theme-switcher button {
    min-height: 21px;
  }
  .stax-gateway {
    width: 132px;
    min-width: 132px;
    min-height: 32px;
    padding: 5px 8px;
  }
  .stax-gateway span {
    font-size: 12px;
  }
  .stax-gateway-icon {
    width: 21px;
    height: 21px;
  }
  .stax-gateway small {
    font-size: 8px;
  }
  .site-footer {
    flex-wrap: wrap;
    gap: 6px 10px;
    text-align: center;
  }
  .ai-stage-notes {
    grid-template-columns: 1fr;
  }
  .route-grid, .mode-grid, .launch-plan-grid, .plan-service-grid, .connector-grid, .field-grid, .data-grid, .preview-boundary-grid, .sensitive-grid, .entitlement-grid, .upgrade-row, .readiness-grid, .launch-readiness, .prelaunch-packet, .prelaunch-packet-grid, .route-confidence, .route-rehearsal, .confidence-legend, .template-summary, .template-lists, .template-family-grid, .first-route-grid, .readiness-metrics, .readiness-gates, .handoff-grid, .rehearsal-steps, .guided-demo-grid, .mock-account-grid, .mock-acceptance, .unlock-preview-grid, .launch-blocker-grid, .action-preview-grid, .payment-fixture-grid, .launch-grid, .launch-mode-grid, .slot-grid, .launch-lock-grid, .auth-flow, .security-summary, .stage-proof > div, .located-grid, .automation-grid, .automation-wiring-list, .provider-navigation-list, .provider-proof-grid, .screenshot-queue-grid, .ai-guidance-preview-grid, .ai-runtime-grid, .provider-action-grid, .provider-coverage-grid, .route-action-grid, .runtime-execution-grid, .approval-packet-grid, .pre-stripe-grid, .stax-plan-grid, .stax-admin-summary, .stax-admin-section-grid, .stax-gateway-grid, .permission-lists, .unlock-pricing-options, .unlock-pricing-explain { grid-template-columns: 1fr; }
  .unlock-preview-route { grid-template-columns: 1fr; }
  .mode-locked {
    grid-template-columns: 1fr;
  }
  .mode .plan-price {
    align-items: center;
  }
  .early-believer-strip {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .early-believer-strip small {
    text-align: left;
  }
  .launch-offer-head {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .launch-offer-head small {
    text-align: left;
  }
  .mode-locked-side {
    justify-items: start;
  }
  .launch-actions { grid-template-columns: 1fr; }
  .launch-actions .btn { width: 100%; min-width: 0; }
  .checkout-trust { align-items: flex-start; flex-direction: column; }
  .approval-item {
    grid-template-columns: 1fr;
  }
  .approval-buttons {
    justify-content: stretch;
  }
  .approval-buttons .btn {
    flex: 1;
  }
  .left-rail {
    gap: 8px;
  }
  .project-sticky {
    top: var(--header-height, 250px);
    left: 0;
    width: 100%;
    padding: 10px 16px 9px;
    background: #fff;
    border-bottom: 1px solid rgba(255,113,24,.24);
    box-shadow: 0 10px 22px rgba(8,7,15,.08);
  }
  .project-pill {
    width: min(330px, calc(100vw - 32px));
  }
  .panel {
    padding-top: 118px;
  }
  .main-simple .panel {
    padding-top: 24px;
  }
  .header-stage-nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    justify-content: stretch;
  }
  .project-drawer {
    left: 12px;
    right: 12px;
    width: auto;
    max-height: 42vh;
  }
  .card {
    padding: 14px;
  }
  .card-head {
    margin-bottom: 11px;
  }
  .card h3 {
    font-size: 18px;
    line-height: 1.18;
  }
  .route-box,
  .mode,
  .connector,
  .launch-grid div,
  .data-field,
  .launch-check,
  .approval-item,
  .launch-protection {
    padding: 11px;
    gap: 8px;
  }
  .route-box span,
  .mode span {
    font-size: 16px;
  }
  .connector-detail,
  .connector-reason,
  .connector-fill,
  .connector-permissions div,
  .security-summary div,
  .auth-flow div,
  .automation-card,
  .permission-lists div {
    padding: 8px;
  }
  .connector-permissions,
  .security-summary,
  .auth-flow,
  .automation-grid,
  .located-grid,
  .launch-checks,
  .approval-queue {
    gap: 8px;
  }
  .connector-permissions span,
  .connector-fill span,
  .connector-reason span,
  .launch-check p,
  .approval-item p,
  .simple-step p,
  .data-field p,
  .data-field small,
  .missing-list p,
  .sensitive-grid p,
  .verify-list p {
    font-size: 12px;
    line-height: 1.28;
  }
  .approval-item > span,
  .approval-item > em,
  .launch-check > span,
  .slot-grid span {
    width: fit-content;
  }
  .notice { position: static; margin-top: 0; }
  .header-tagline {
    white-space: normal;
  }
}

@media (max-width: 560px) {
  .shell {
    padding-bottom: 156px;
  }
  .modal-backdrop {
    padding: 10px;
    align-items: start;
    overflow-y: auto;
  }
  .auth-modal.unlock-pricing-modal {
    width: 100%;
    max-height: none;
    gap: 11px;
    border-radius: 14px;
    padding: 14px;
  }
  .unlock-pricing-option {
    gap: 10px;
    padding: 11px;
  }
  .unlock-pricing-option-head {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
  }
  .unlock-pricing-option-head b {
    font-size: 16px;
  }
  .unlock-pricing-option-head .btn {
    min-width: 74px;
    min-height: 38px;
    padding-inline: 10px;
  }
  .unlock-pricing-option p,
  .unlock-pricing-explain p {
    font-size: 12px;
    line-height: 1.34;
  }
  .topbar { padding: 12px; }
  .topbar-inner {
    padding: 0;
  }
  .brand-row {
    align-items: start;
    padding-right: 128px;
  }
  .mark {
    width: 40px;
    height: 48px;
  }
  .brand-row .theme-switcher {
    margin-left: 0;
  }
  .brand h1 {
    font-size: 14px;
    line-height: 1.1;
  }
  .brand {
    gap: 4px;
  }
  .brand-name {
    font-size: 27px;
  }
  .brand-company {
    font-size: 15px;
  }
  .brand-version {
    font-size: 9px;
  }
  .header-tagline {
    font-size: 10.5px;
    line-height: 1.2;
    text-align: left;
    justify-self: stretch;
    white-space: normal;
  }
  .account-pill,
  .account-form {
    flex: 1 1 auto;
  }
  .account-form {
    grid-template-columns: minmax(160px, 1fr) auto;
  }
  .stage-nav .tab {
    width: 100%;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 1px 4px;
    padding-inline: 5px;
  }
  .stage-nav .tab {
    font-size: 11px;
  }
  .stage-nav .tab .tab-label { font-size: 9px; }
  .launch-offer-summary {
    gap: 8px;
    padding: 11px;
  }
  .launch-offer-head {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .launch-offer-head b {
    font-size: 17px;
  }
  .launch-offer-head small {
    text-align: left;
  }
  .launch-offer-grid {
    gap: 7px;
  }
  .launch-offer-grid b {
    font-size: 21px;
  }
  .launch-offer-grid small {
    font-size: 10px;
  }
  .mode .plan-price {
    align-items: start;
  }
  .project-pill { grid-template-columns: minmax(0, 1fr) auto; }
  .project-pill .btn { width: auto; min-width: 70px; }
  .top-actions {
    gap: 5px;
    align-items: flex-end;
    justify-items: end;
  }
  .theme-switcher {
    width: 106px;
  }
  .theme-switcher button {
    min-height: 20px;
    font-size: 9px;
  }
  .stax-gateway {
    width: 106px;
    min-width: 106px;
    padding-inline: 7px;
  }
  .stax-gateway-main {
    gap: 5px;
  }
  .stax-gateway-icon {
    width: 19px;
    height: 19px;
  }
  .stax-gateway small {
    display: none;
  }
  .stax-admin-actions .btn,
  .modal-actions .btn {
    flex: 1;
  }
  .project-bar { grid-template-columns: 1fr; }
  .project-actions {
    align-items: stretch;
  }
  .project-actions .btn {
    flex: 1;
  }
  .auth-compact-form {
    grid-template-columns: 1fr;
  }
  .project-dashboard {
    display: flex;
  }
  .simple-step {
    grid-template-columns: 30px minmax(0, 1fr);
  }
  .project-drawer-head {
    display: grid;
  }
  .drawer-actions {
    justify-content: stretch;
  }
  .drawer-actions .btn {
    flex: 1;
  }
  .project-drawer-head .btn {
    width: 100%;
  }
  .project-row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }
  .project-row-main b,
  .project-row-main span {
    white-space: normal;
  }
  .project-row-actions {
    justify-content: stretch;
  }
  .project-row-actions .btn {
    flex: 1;
  }
  .project-protected {
    justify-self: start;
  }
  .project-confirm {
    border-radius: 12px;
  }
  .auth-bar,
  .auth-form {
    grid-template-columns: 1fr;
  }
  .ai-widget {
    right: max(14px, env(safe-area-inset-right));
    bottom: max(14px, env(safe-area-inset-bottom));
    max-width: calc(100vw - 28px);
  }
  .ai-widget:not(.open) {
    width: auto;
  }
  .ai-widget.open {
    width: min(330px, calc(100vw - 28px));
  }
  .ai-widget:not(.open) .ai-bubble {
    width: 64px;
    height: 64px;
    min-width: 64px;
    padding: 0;
    place-items: center;
    text-align: center;
  }
  .ai-widget:not(.open) .ai-bubble b {
    display: none;
  }
  .ai-widget:not(.open) .ai-bubble span {
    width: 54px;
    height: 54px;
    background: #fffaf3;
    color: #7a3500;
    border: 2px solid var(--brand);
    box-shadow: inset 0 0 0 3px rgba(255,113,24,.10);
  }
  .ai-widget.open .ai-bubble { display: none; }
}

/* Mobile header system: compact enough for embedded browsers, tall enough not to crowd controls. */
@media (min-width: 561px) and (max-width: 1024px) {
  .topbar {
    padding: 14px;
  }

  .topbar-inner {
    min-height: 210px;
    padding: 14px 0 16px;
  }

  .brand-row {
    padding-right: 148px;
  }

  .mark {
    width: 52px;
    height: 52px;
  }

  .brand-name {
    font-size: clamp(38px, 5.2vw, 46px);
  }

  .brand-by,
  .brand-company {
    font-size: 15px;
  }

  .brand p,
  .header-tagline {
    max-width: min(560px, calc(100vw - 190px));
    font-size: 13px;
  }

  .top-actions {
    top: 14px;
    right: 0;
  }

  .theme-switcher,
  .stax-gateway {
    width: 130px;
    min-width: 130px;
  }

  .stax-gateway {
    min-height: 48px;
  }
}

@media (max-width: 560px) {
  .topbar {
    padding: 10px 10px 12px;
  }

  .topbar-inner {
    min-height: 174px;
    padding: 8px 0 10px;
    gap: 7px;
  }

  .brand-row {
    align-items: flex-start;
    gap: 8px;
    padding-right: 118px;
  }

  .mark {
    width: 42px;
    height: 42px;
    border-radius: 8px;
  }

  .brand h1 {
    gap: 2px 5px;
  }

  .brand-name {
    font-size: 32px;
    line-height: .94;
  }

  .brand-by,
  .brand-company {
    font-size: 13px;
  }

  .brand-version {
    font-size: 10px;
  }

  .brand p,
  .header-tagline {
    max-width: 238px;
    font-size: 12px;
    line-height: 1.22;
  }

  .top-actions {
    top: 8px;
    right: 0;
    gap: 5px;
  }

  .theme-switcher {
    width: 108px;
  }

  .theme-switcher button {
    min-height: 22px;
    font-size: 9px;
  }

  .stax-gateway {
    width: 108px;
    min-width: 108px;
    min-height: 44px;
    padding: 6px 7px;
  }

  .stax-gateway-icon {
    width: 20px;
    height: 20px;
  }

  .stax-gateway span {
    font-size: 12px;
    line-height: 1.05;
  }

  .stax-gateway small {
    font-size: 8px;
  }
}

@media (max-width: 390px) {
  .unlock-pricing-option-head {
    grid-template-columns: 1fr;
  }
  .unlock-pricing-option-head .btn {
    width: fit-content;
  }
  .topbar-inner {
    min-height: 184px;
  }

  .brand-row {
    padding-right: 108px;
  }

  .mark {
    width: 38px;
    height: 38px;
  }

  .brand-name {
    font-size: 28px;
  }

  .brand-by,
  .brand-company {
    font-size: 12px;
  }

  .brand p,
  .header-tagline {
    max-width: 214px;
    font-size: 11px;
  }

  .theme-switcher,
  .stax-gateway {
    width: 98px;
    min-width: 98px;
  }

  .stax-gateway small {
    display: none;
  }
}

/* Final shared header tagline lock: keep the line under the product name and wrap cleanly. */
.header-tagline {
  display: block !important;
  max-width: min(620px, calc(100vw - 210px)) !important;
  margin-top: 4px !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

@media (min-width: 561px) and (max-width: 1024px) {
  .header-tagline {
    max-width: min(520px, calc(100vw - 220px)) !important;
    line-height: 1.25 !important;
  }
}

@media (max-width: 560px) {
  .header-tagline {
    max-width: calc(100vw - 156px) !important;
    margin-top: 3px !important;
    line-height: 1.22 !important;
  }
}

@media (max-width: 390px) {
  .header-tagline {
    max-width: calc(100vw - 146px) !important;
    font-size: 10.4px !important;
  }
}

/* Unified ONE button: match Groundwork and Passage square icon treatment. */
.stax-gateway {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  gap: 2px !important;
  width: 112px !important;
  min-width: 112px !important;
  height: 112px !important;
  min-height: 112px !important;
  padding: 8px !important;
  border: 2px solid var(--brand) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #111 !important;
  box-shadow: 0 0 20px rgba(255, 113, 24, .72), 0 12px 28px rgba(0, 0, 0, .24) !important;
}

.stax-gateway-main {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  gap: 1px !important;
}

.stax-gateway-icon {
  width: 68px !important;
  height: 68px !important;
  flex-basis: 68px !important;
}

.stax-gateway span {
  color: #111 !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  letter-spacing: .16em !important;
  line-height: 1 !important;
}

.stax-gateway small {
  display: block !important;
  color: #ad4200 !important;
  font-size: 9px !important;
  font-weight: 950 !important;
  letter-spacing: .05em !important;
  line-height: 1 !important;
  text-transform: none !important;
}

@media (max-width: 560px) {
  .stax-gateway {
    width: 96px !important;
    min-width: 96px !important;
    height: 78px !important;
    min-height: 78px !important;
    padding: 6px !important;
  }

  .stax-gateway-icon {
    width: 46px !important;
    height: 46px !important;
    flex-basis: 46px !important;
  }

  .stax-gateway span {
    font-size: 11px !important;
  }

  .stax-gateway small {
    display: block !important;
    font-size: 7px !important;
  }
}

/* Bridge header polish: match Groundwork/Passage wordmark and stack theme over ONE. */
.brand-name {
  font-family: "Space Grotesk", Inter, ui-sans-serif, system-ui, sans-serif !important;
  font-weight: 700 !important;
  gap: 0 !important;
  letter-spacing: 0 !important;
}

.brand-base {
  color: #6b6f72 !important;
  font-weight: 700 !important;
}

.brand-jump {
  color: var(--brand) !important;
  font-style: normal !important;
  font-weight: 700 !important;
}

.top-actions {
  gap: 4px !important;
  align-items: flex-end !important;
  justify-items: end !important;
}

.theme-switcher {
  width: 112px !important;
  min-width: 112px !important;
  max-width: 112px !important;
  min-height: 22px !important;
}

.theme-switcher button {
  min-height: 18px !important;
  font-size: 8px !important;
}

@media (max-width: 560px) {
  .theme-switcher {
    width: 96px !important;
    min-width: 96px !important;
    max-width: 96px !important;
  }

  .theme-switcher button {
    min-height: 18px !important;
    font-size: 8px !important;
  }
}

/* Bridge Passage-style stage rail: steps live below the header with progress. */
.topbar {
  min-height: 194px !important;
}

.topbar-inner {
  min-height: 194px !important;
  align-content: center !important;
  padding: 18px 0 !important;
}

.workbar {
  display: none !important;
}

.bridge-guide-strip {
  position: sticky;
  top: 194px;
  z-index: 19;
  width: min(1168px, calc(100% - 48px));
  margin: 0 auto;
  padding: 0 16px 10px;
  border: 1px solid rgba(31, 27, 22, .12);
  border-top: 0;
  border-radius: 0 0 14px 14px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 14px 34px rgba(31, 27, 22, .08);
}

.bridge-guide-inner {
  width: 100%;
  margin: 0 auto;
}

.bridge-progress-rail {
  min-height: 86px;
  display: grid;
  align-items: center;
  gap: 0;
}

.bridge-stage-tabs {
  min-height: 56px;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
}

.bridge-stage-tabs .tab {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--brand);
  border-radius: 8px;
  background: #fffaf3;
  color: #171612;
  box-shadow: none;
}

.bridge-stage-tabs .tab.active {
  background: var(--brand);
  color: #fff;
  border-color: var(--brand);
}

.bridge-overall-progress-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  margin-top: 8px;
}

.bridge-overall-progress-row strong {
  color: #171612;
  font-size: 13px;
  line-height: 1;
  white-space: nowrap;
}

.bridge-overall-progress {
  height: 8px;
  border-radius: 999px;
  background: rgba(31, 27, 22, .12);
  overflow: hidden;
}

.bridge-overall-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--brand), var(--green));
  transition: width .18s ease;
}

.theme-dark .bridge-guide-strip {
  border-color: rgba(255, 255, 255, .12);
  background: linear-gradient(180deg, rgba(8, 7, 15, .96), rgba(18, 15, 19, .92));
  box-shadow: 0 14px 32px rgba(0, 0, 0, .28);
}

.theme-dark .bridge-overall-progress {
  background: rgba(255, 255, 255, .16);
}

.theme-dark .bridge-overall-progress-row strong {
  color: #fffaf3;
}

@media (max-width: 900px) {
  .bridge-guide-strip {
    top: var(--header-height, 194px);
    width: min(100% - 24px, 920px);
    padding-inline: 10px;
  }

  .bridge-stage-tabs {
    gap: 6px !important;
  }
}

@media (max-width: 560px) {
  .topbar {
    min-height: 178px !important;
  }

  .topbar-inner {
    min-height: 154px !important;
  }

  .bridge-guide-strip {
    position: sticky;
    top: 0;
    width: min(430px, calc(100% - 18px));
    padding: 0 10px 9px;
  }

  .bridge-progress-rail {
    min-height: 96px;
    gap: 4px;
  }

  .bridge-stage-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 70px;
    gap: 4px !important;
  }

  .bridge-stage-tabs .tab {
    min-height: 32px;
    padding: 8px 6px;
  }

  .bridge-stage-tabs .tab-label {
    font-size: 10px;
  }

  .bridge-overall-progress-row {
    margin-top: 7px;
  }
}

/* Match Passage desktop header and flat stage rail. */
.topbar-inner {
  max-width: 1120px !important;
}

.mark {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  flex: 0 0 58px !important;
  border-radius: 10px !important;
}

.brand h1 {
  gap: 4px 9px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

.brand-name {
  font-size: 48px !important;
  line-height: .92 !important;
  font-weight: 800 !important;
}

.brand-base {
  color: rgba(255, 255, 255, .54) !important;
  font-weight: 800 !important;
}

.brand-jump {
  font-weight: 800 !important;
}

.brand-by,
.brand-company {
  color: rgba(255, 255, 255, .78) !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

.brand-version {
  transform: translateY(-2px) !important;
  border: .5px solid rgba(255, 255, 255, .18) !important;
  border-radius: 999px !important;
  padding: 2px 6px !important;
  background: rgba(255, 255, 255, .12) !important;
  color: rgba(255, 255, 255, .78) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.bridge-stage-tabs {
  display: flex !important;
  justify-content: space-between !important;
  gap: 0 !important;
}

.bridge-stage-tabs .tab {
  display: inline-grid !important;
  justify-items: center !important;
  align-content: center !important;
  gap: 5px !important;
  min-width: 0 !important;
  min-height: 56px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #1a1928 !important;
  padding: 15px 10px 12px !important;
  position: relative !important;
  z-index: 1 !important;
  box-shadow: none !important;
}

.bridge-stage-tabs .tab-step {
  display: none !important;
}

.bridge-stage-tabs .tab-label {
  color: inherit !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.bridge-stage-tabs .tab.active {
  background: transparent !important;
  color: var(--brand) !important;
}

.bridge-stage-tabs .tab.active .tab-label {
  font-weight: 700 !important;
}

.bridge-stage-tabs .tab.active::after,
.bridge-stage-tabs .tab.stage-complete::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  border-radius: 999px;
  background: var(--brand);
}

.theme-dark .bridge-stage-tabs .tab,
.theme-dark .bridge-stage-tabs .tab.active {
  background: transparent !important;
  color: #f5efe7 !important;
}

.theme-dark .bridge-stage-tabs .tab.active {
  color: var(--brand) !important;
}

@media (max-width: 560px) {
  .brand-name {
    font-size: 28px !important;
  }

  .brand-by,
  .brand-company {
    font-size: 12px !important;
  }

  .brand-version {
    font-size: 9px !important;
  }

  .bridge-stage-tabs {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .bridge-stage-tabs .tab {
    min-height: 34px !important;
    padding: 10px 4px 7px !important;
  }

  .bridge-stage-tabs .tab-label {
    font-size: 8.5px !important;
    line-height: 1.02 !important;
  }
}

/* Shared StonePath launch polish - 2026-06-28 */
.topbar {
  min-height: 194px !important;
  --header-height: 194px;
}

.topbar-inner {
  min-height: 194px !important;
  align-items: flex-start !important;
  padding-top: 18px !important;
}

.brand-row {
  align-items: flex-start !important;
  justify-content: flex-start !important;
  max-width: calc(100% - 300px) !important;
  margin-left: 0 !important;
}

.brand h1 {
  align-items: baseline !important;
  font-weight: 700 !important;
}

.brand-name,
.brand-base,
.brand-jump,
.brand-company,
.brand-by {
  font-family: var(--font-display, "Space Grotesk", system-ui, sans-serif) !important;
  font-weight: 700 !important;
}

.brand-base {
  color: rgba(255, 255, 255, .58) !important;
}

.brand-company,
.brand-by {
  color: rgba(255, 255, 255, .82) !important;
}

.header-tagline {
  margin-top: 5px !important;
  margin-left: 0 !important;
  max-width: 560px !important;
  text-align: left !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.top-actions {
  right: 0 !important;
  top: 18px !important;
  align-items: stretch !important;
}

.theme-switcher {
  height: 24px !important;
  min-height: 24px !important;
  padding: 2px !important;
}

.theme-switcher button {
  width: 28px !important;
  height: 20px !important;
  min-height: 20px !important;
  font-size: 9px !important;
}

.stax-gateway {
  width: 108px !important;
  height: 108px !important;
  padding: 7px !important;
  border-radius: 9px !important;
}

.stax-gateway-icon {
  width: 64px !important;
  height: 64px !important;
}

.stax-gateway span,
.stax-gateway strong,
.stax-gateway small {
  color: #171612 !important;
}

.bridge-guide-strip {
  top: var(--header-height, 194px) !important;
}

.stax-gateway-modal {
  color: #171612 !important;
  background: #fffaf4 !important;
}

.stax-gateway-modal *,
.stax-gateway-modal .stax-project-field *,
.stax-gateway-modal .stax-account-status *,
.stax-gateway-modal .modal-reason *,
.stax-gateway-modal .approval-note {
  color: #171612 !important;
}

.stax-gateway-modal .modal-head span,
.stax-gateway-modal .stax-project-field > span,
.stax-gateway-modal .stax-account-status > span,
.stax-gateway-modal .modal-reason b {
  color: #ad4200 !important;
}

.modal-theme-switcher {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  width: max-content;
  min-height: 30px;
  padding: 3px;
  border: 1px solid rgba(31, 27, 22, .14);
  border-radius: 999px;
  background: rgba(255, 255, 255, .72);
}

.modal-theme-switcher button {
  width: 30px;
  height: 24px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #5f5968 !important;
  font-weight: 900;
  font-size: 10px;
  cursor: pointer;
}

.modal-theme-switcher button.active {
  background: #ff781e;
  color: #fff !important;
}

select,
option,
input,
textarea {
  color: #171612 !important;
}

select,
option {
  background: #fffaf4 !important;
}

.site-footer {
  margin: 28px auto 54px !important;
  width: min(900px, calc(100% - 32px)) !important;
}

.site-footer a {
  text-transform: uppercase !important;
}

@media (max-width: 560px) {
  .topbar {
    min-height: 178px !important;
    --header-height: 178px;
  }

  .topbar-inner {
    min-height: 178px !important;
    padding: 10px 12px 18px !important;
  }

  .brand-row {
    max-width: calc(100% - 116px) !important;
  }

  .mark {
    width: 42px !important;
    height: 42px !important;
  }

  .brand h1 {
    gap: 3px 5px !important;
  }

  .brand-name {
    font-size: 32px !important;
  }

  .header-tagline {
    margin-top: 4px !important;
    max-width: calc(100vw - 140px) !important;
    font-size: 11px !important;
    line-height: 1.18 !important;
  }

  .top-actions {
    top: 10px !important;
    right: 12px !important;
  }

  .stax-gateway {
    width: 96px !important;
    height: 78px !important;
    padding: 7px !important;
  }

  .stax-gateway-icon {
    width: 46px !important;
    height: 46px !important;
  }

  .bridge-guide-strip {
    top: 0 !important;
  }
}

/* True EOF mobile header lock - 2026-06-28 */
@media (max-width: 560px) {
  .topbar { min-height: 178px !important; height: 178px !important; --header-height: 178px !important; overflow: hidden !important; }
  .topbar-inner { min-height: 178px !important; height: 178px !important; }
  .brand-row { margin-top: 12px !important; }
  .bridge-guide-strip { top: 178px !important; position: sticky !important; }
}

/* Header and ONE final punch-list lock - 2026-06-28 */
.topbar {
  min-height: 194px !important;
  height: 194px !important;
  padding: 0 16px !important;
}

.topbar-inner {
  display: block !important;
  width: min(1120px, calc(100% - 56px)) !important;
  max-width: none !important;
  min-height: 194px !important;
  height: 194px !important;
  padding: 0 !important;
}

.brand-row {
  position: absolute !important;
  top: 18px !important;
  left: 0 !important;
  margin: 0 !important;
  padding-right: 300px !important;
}

.mark {
  width: 58px !important;
  height: 58px !important;
  border-radius: 10px !important;
}

.brand h1 {
  gap: 4px 9px !important;
  line-height: .94 !important;
  font-weight: 700 !important;
}

.brand-name {
  font-size: 48px !important;
  line-height: .94 !important;
  font-weight: 700 !important;
}

.brand-base,
.brand-jump,
.brand-by,
.brand-company {
  font-weight: 700 !important;
}

.brand-jump {
  font-style: normal !important;
}

.brand-base {
  color: rgba(255, 255, 255, .58) !important;
}

.brand-by,
.brand-company {
  color: rgba(255, 255, 255, .82) !important;
  font-size: 16px !important;
}

.brand-version {
  display: inline-flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  padding: 2px 6px !important;
  background: rgba(255, 255, 255, .14) !important;
  color: rgba(255, 255, 255, .84) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  vertical-align: baseline !important;
}

.header-tagline {
  position: absolute !important;
  top: 54px !important;
  left: 70px !important;
  margin: 0 !important;
  max-width: 560px !important;
  color: #ff781e !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.top-actions {
  top: 36px !important;
  right: max(18px, calc((100vw - 1120px) / 2)) !important;
  width: 112px !important;
  height: 112px !important;
  display: block !important;
}

.stax-gateway {
  width: 112px !important;
  min-width: 112px !important;
  height: 112px !important;
  min-height: 112px !important;
  padding: 7px !important;
  border-radius: 9px !important;
}

.stax-gateway-icon {
  width: 64px !important;
  height: 64px !important;
}

.stax-gateway span,
.stax-gateway small {
  color: #171612 !important;
}

.header-theme {
  position: absolute !important;
  left: 26px !important;
  bottom: 18px !important;
  width: 92px !important;
}

.theme-switcher.header-theme {
  width: 92px !important;
  min-width: 92px !important;
  max-width: 92px !important;
}

.theme-switcher {
  min-height: 24px !important;
  height: 24px !important;
  padding: 2px !important;
}

.theme-switcher button {
  width: 28px !important;
  height: 20px !important;
  min-height: 20px !important;
  font-size: 9px !important;
}

.bridge-guide-strip {
  top: 194px !important;
}

.modal-backdrop.stax-modal-backdrop {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.modal-theme-switcher {
  display: none !important;
}

@media (max-width: 560px) {
  .topbar {
    min-height: 178px !important;
    height: 178px !important;
    padding: 0 9px !important;
  }

  .topbar-inner {
    width: min(430px, calc(100% - 18px)) !important;
    min-height: 178px !important;
    height: 178px !important;
  }

  .brand-row {
    top: 11px !important;
    left: 4px !important;
    padding-right: 116px !important;
    gap: 8px !important;
  }

  .mark {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    flex: 0 0 42px !important;
  }

  .brand-name {
    font-size: 32px !important;
  }

  .brand-by,
  .brand-company {
    font-size: 13px !important;
  }

  .brand-version {
    font-size: 9px !important;
    padding: 2px 5px !important;
  }

  .header-tagline {
    top: 60px !important;
    left: 51px !important;
    margin: 0 !important;
    max-width: calc(100vw - 142px) !important;
    font-size: 11px !important;
    line-height: 1.18 !important;
  }

  .top-actions {
    top: 21px !important;
    right: 16px !important;
    width: 96px !important;
    height: 78px !important;
  }

  .stax-gateway {
    width: 96px !important;
    min-width: 96px !important;
    height: 78px !important;
    min-height: 78px !important;
  }

  .stax-gateway-icon {
    width: 46px !important;
    height: 46px !important;
  }

  .header-theme {
    left: 11px !important;
    bottom: 18px !important;
  }

  .bridge-guide-strip {
    top: 178px !important;
    position: sticky !important;
  }
}

/* Light-theme header contrast correction - 2026-06-28 */
body:not(.theme-dark) .brand-base {
  color: rgba(148, 143, 135, .96) !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .58) !important;
}

body:not(.theme-dark) .brand-by,
body:not(.theme-dark) .brand-company,
body:not(.theme-dark) .brand-version {
  color: rgba(148, 143, 135, .96) !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .58) !important;
}

body.theme-dark .brand-base {
  color: rgba(255, 255, 255, .58) !important;
}

body.theme-dark .brand-by,
body.theme-dark .brand-company,
body.theme-dark .brand-version {
  color: rgba(255, 255, 255, .82) !important;
}

/* Desktop web markup pass - keep mobile rules untouched. */
@media (min-width: 901px) {
  .topbar {
    min-height: 194px !important;
    height: 194px !important;
    padding: 0 28px !important;
  }

  .topbar-inner {
    position: relative !important;
    width: min(1120px, calc(100% - 56px)) !important;
    height: 194px !important;
    min-height: 194px !important;
    margin-inline: auto !important;
    display: block !important;
  }

  .brand-row {
    position: absolute !important;
    top: 16px !important;
    left: 0 !important;
    right: 150px !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  .mark {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    flex: 0 0 58px !important;
  }

  .brand h1 {
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
  }

  .brand-base {
    color: rgba(255, 255, 255, .72) !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .62) !important;
  }

  .brand-by,
  .brand-company,
  .brand-version {
    color: rgba(255, 255, 255, .86) !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .62) !important;
  }

  .header-tagline {
    top: 60px !important;
    left: 70px !important;
    max-width: 660px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.22 !important;
    overflow-wrap: normal !important;
  }

  .top-actions {
    position: absolute !important;
    top: 20px !important;
    right: 0 !important;
    left: auto !important;
    width: 108px !important;
    height: 108px !important;
  }

  .stax-gateway {
    width: 108px !important;
    min-width: 108px !important;
    height: 108px !important;
    min-height: 108px !important;
  }

  .header-theme {
    position: absolute !important;
    left: 18px !important;
    bottom: 18px !important;
  }

  .bridge-guide-strip {
    margin-top: 0 !important;
    top: 0 !important;
  }
}

.site-footer .brand-tm {
  color: currentColor;
  font-size: .9em;
  line-height: 0;
  margin-left: 2px;
  vertical-align: super;
}

/* Match Passage logo treatment on desktop. */
@media (min-width: 901px) {
  .mark {
    display: block !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    flex: 0 0 58px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .mark img {
    display: block !important;
    width: 58px !important;
    height: 58px !important;
    object-fit: contain !important;
    border-radius: 10px !important;
  }
}

/* Desktop theme/logo lock: mirror the Groundwork/Passage header controls. */
@media (min-width: 901px) {
  .mark {
    display: block !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    flex: 0 0 58px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .mark img {
    display: block !important;
    width: 58px !important;
    height: 58px !important;
    object-fit: contain !important;
    border-radius: 10px !important;
  }

  .theme-switcher.header-theme {
    display: inline-flex !important;
    grid-template-columns: none !important;
    align-items: center !important;
    gap: 2px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 24px !important;
    height: 24px !important;
    padding: 2px !important;
    border: 1px solid rgba(222, 215, 206, .92) !important;
    border-radius: 999px !important;
    background: rgba(255, 253, 249, .88) !important;
    box-shadow: 0 8px 20px rgba(31, 35, 28, .08) !important;
  }

  .theme-switcher.header-theme button {
    width: 28px !important;
    height: 20px !important;
    min-height: 20px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #686071 !important;
    font-size: 9px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
  }

  .theme-switcher.header-theme button.active {
    background: #ff781e !important;
    color: #fff !important;
  }

  body.theme-dark .theme-switcher.header-theme {
    border-color: rgba(255, 255, 255, .22) !important;
    background: rgba(255, 250, 243, .92) !important;
  }

  body.theme-dark .theme-switcher.header-theme button {
    color: #686071 !important;
  }

  body.theme-dark .theme-switcher.header-theme button.active {
    background: #ff781e !important;
    color: #fff !important;
  }
}

/* Desktop suite alignment: match Groundwork/Passage header x positions. */
@media (min-width: 901px) {
  .brand-row {
    left: 7px !important;
  }

  .header-tagline {
    left: 70px !important;
  }

  .theme-switcher.header-theme {
    margin-left: 7px !important;
  }

  .top-actions {
    right: -7px !important;
    width: 112px !important;
    height: 112px !important;
  }

  .stax-gateway {
    width: 112px !important;
    min-width: 112px !important;
    height: 112px !important;
    min-height: 112px !important;
  }

  .bridge-guide-strip {
    transform: translateX(7px) !important;
  }
}

/* Mobile header fit pass - app name, tagline, and ONE button only. */
@media (max-width: 560px) {
  .topbar {
    min-height: 152px !important;
    height: 152px !important;
    padding: 0 9px !important;
  }

  .topbar-inner {
    width: min(430px, calc(100% - 18px)) !important;
    min-height: 152px !important;
    height: 152px !important;
  }

  .brand-row {
    top: 10px !important;
    left: 2px !important;
    padding-right: 88px !important;
    gap: 7px !important;
  }

  .mark {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    flex-basis: 36px !important;
  }

  .brand-name {
    font-size: 28px !important;
    line-height: .94 !important;
  }

  .brand-by,
  .brand-company {
    font-size: 10px !important;
    line-height: 1.05 !important;
  }

  .brand-version {
    font-size: 8px !important;
    padding: 1px 4px !important;
  }

  .header-tagline {
    top: 50px !important;
    left: 45px !important;
    right: 86px !important;
    max-width: none !important;
    font-size: 10px !important;
    line-height: 1.12 !important;
  }

  .top-actions {
    top: 12px !important;
    right: 10px !important;
    width: 76px !important;
    height: 64px !important;
  }

  .stax-gateway {
    width: 76px !important;
    min-width: 76px !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 5px !important;
  }

  .stax-gateway-icon {
    width: 34px !important;
    height: 34px !important;
  }

  .stax-gateway span,
  .stax-gateway small {
    font-size: 9px !important;
    line-height: 1 !important;
  }

  .header-theme {
    left: 10px !important;
    bottom: 12px !important;
  }

  .bridge-guide-strip {
    top: 152px !important;
  }
}

@media (max-width: 390px) {
  .brand-name {
    font-size: 25px !important;
  }

  .brand-by,
  .brand-company {
    font-size: 9px !important;
  }

  .header-tagline {
    top: 48px !important;
    left: 43px !important;
    right: 82px !important;
    font-size: 9px !important;
  }

  .top-actions {
    right: 8px !important;
    width: 72px !important;
    height: 62px !important;
  }

  .stax-gateway {
    width: 72px !important;
    min-width: 72px !important;
    height: 62px !important;
    min-height: 62px !important;
  }
}

/* Mobile exact alignment pass: shared header geometry across SolidOATH apps. */
@media (max-width: 560px) {
  .topbar {
    min-height: 168px !important;
    height: 168px !important;
  }

  .topbar-inner {
    min-height: 168px !important;
    height: 168px !important;
  }

  .brand-row {
    top: 10px !important;
    left: 2px !important;
  }

  .mark {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    flex-basis: 36px !important;
  }

  .brand-name {
    font-size: 25px !important;
    line-height: 23px !important;
  }

  .brand-version {
    font-size: 8px !important;
    line-height: 1 !important;
    padding: 2px 5px !important;
  }

  .brand-by,
  .brand-company {
    font-size: 10px !important;
    line-height: 1.05 !important;
  }

  .header-tagline {
    top: 64px !important;
    left: 20px !important;
    right: auto !important;
    width: min(270px, calc(100vw - 120px)) !important;
    max-width: none !important;
    color: #ff781e !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 11.8px !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: normal !important;
  }

  .top-actions {
    top: 10px !important;
    right: 9px !important;
    width: 78px !important;
    height: 72px !important;
  }

  .stax-gateway {
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
    height: 72px !important;
    min-height: 72px !important;
    max-height: 72px !important;
    padding: 5px !important;
  }

  .stax-gateway-icon {
    width: 38px !important;
    height: 38px !important;
  }

  .stax-gateway span,
  .stax-gateway strong,
  .stax-gateway small {
    font-size: 9px !important;
    line-height: 8.82px !important;
    font-weight: 950 !important;
    letter-spacing: .18px !important;
    text-transform: none !important;
  }

  .theme-switcher.header-theme {
    left: 11px !important;
    bottom: 14px !important;
  }

  .bridge-guide-strip {
    top: 168px !important;
    width: min(430px, calc(100% - 18px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Mobile final numeric alignment: logo margin, ONE right edge, stage tab insets. */
@media (max-width: 560px) {
  .header-tagline {
    left: -25px !important;
    width: min(270px, calc(100vw - 120px)) !important;
  }

  .top-actions {
    right: -10px !important;
  }

  .bridge-stage-tabs {
    padding-inline: 9px !important;
  }
}

/* Mobile review correction: roomier Bridge header and Launch-style stage rail. */
@media (max-width: 560px) {
  .topbar {
    min-height: 168px !important;
    height: 168px !important;
  }

  .topbar-inner {
    min-height: 168px !important;
    height: 168px !important;
  }

  .brand-row {
    top: 10px !important;
    left: 2px !important;
    padding-right: 98px !important;
  }

  .brand h1 {
    display: grid !important;
    grid-template-columns: auto auto !important;
    grid-template-areas:
      "name version"
      "by by" !important;
    align-items: center !important;
    justify-content: start !important;
    column-gap: 5px !important;
    row-gap: 1px !important;
  }

  .brand-name {
    grid-area: name !important;
    font-size: 28px !important;
    line-height: .92 !important;
  }

  .brand-version {
    grid-area: version !important;
    align-self: center !important;
    margin: 0 !important;
    font-size: 8px !important;
    line-height: 1 !important;
    padding: 2px 5px !important;
  }

  .brand-by {
    grid-area: by !important;
    justify-self: start !important;
  }

  .brand-company {
    grid-area: by !important;
    justify-self: start !important;
    margin-left: 15px !important;
  }

  .brand-by,
  .brand-company {
    font-size: 10px !important;
    line-height: 1.05 !important;
  }

  .header-tagline {
    top: 55px !important;
    left: 45px !important;
    right: auto !important;
    width: min(224px, calc(100vw - 170px)) !important;
    max-width: none !important;
    font-size: 10.5px !important;
    line-height: 1.18 !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: normal !important;
  }

  .top-actions {
    top: 11px !important;
    right: 10px !important;
    width: 82px !important;
    height: 72px !important;
  }

  .stax-gateway {
    width: 82px !important;
    min-width: 82px !important;
    max-width: 82px !important;
    height: 72px !important;
    min-height: 72px !important;
    max-height: 72px !important;
    padding: 5px !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
  }

  .stax-gateway-main {
    display: grid !important;
    place-items: center !important;
    gap: 0 !important;
  }

  .stax-gateway-icon {
    width: 38px !important;
    height: 38px !important;
  }

  .stax-gateway span,
  .stax-gateway small {
    font-size: 9px !important;
    line-height: .98 !important;
    letter-spacing: .02em !important;
  }

  .theme-switcher.header-theme {
    left: -7px !important;
    bottom: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    width: 92px !important;
    min-width: 92px !important;
    height: 24px !important;
    min-height: 24px !important;
    padding: 2px !important;
    border: 1px solid rgba(222, 215, 206, .92) !important;
    border-radius: 999px !important;
    background: rgba(255, 253, 249, .90) !important;
    box-shadow: 0 8px 20px rgba(31, 35, 28, .08) !important;
  }

  .theme-switcher.header-theme button {
    width: 28px !important;
    height: 20px !important;
    min-height: 20px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #686071 !important;
    font-size: 9px !important;
    line-height: 1 !important;
  }

  .theme-switcher.header-theme button.active {
    background: #ff781e !important;
    color: #fff !important;
  }

  body.theme-dark .theme-switcher.header-theme {
    border-color: rgba(255, 255, 255, .22) !important;
    background: rgba(255, 250, 243, .92) !important;
  }

  body.theme-dark .theme-switcher.header-theme button {
    color: #686071 !important;
  }

  body.theme-dark .theme-switcher.header-theme button.active {
    background: #ff781e !important;
    color: #fff !important;
  }

  .bridge-guide-strip {
    top: 168px !important;
  }

  .bridge-stage-tabs {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    min-height: 56px !important;
    gap: 0 !important;
    align-items: center !important;
  }

  .bridge-stage-tabs .tab {
    display: inline-grid !important;
    justify-items: center !important;
    align-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 42px !important;
    padding: 12px 5px 8px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #1a1928 !important;
    text-align: center !important;
    position: relative !important;
    box-shadow: none !important;
  }

  .bridge-stage-tabs .tab-label {
    display: block !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: 100% !important;
    font-size: 10.5px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .bridge-stage-tabs .tab.active {
    background: transparent !important;
    color: var(--brand) !important;
  }

  .bridge-stage-tabs .tab.active::after,
  .bridge-stage-tabs .tab.stage-complete::after {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 2px !important;
    border-radius: 999px !important;
  }
}

@media (max-width: 390px) {
  .brand-name {
    font-size: 25px !important;
  }

  .header-tagline {
    right: auto !important;
    width: min(204px, calc(100vw - 170px)) !important;
    font-size: 10px !important;
  }

  .top-actions,
  .stax-gateway {
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
  }
}

/* True final mobile Bridge alignment override. */
@media (max-width: 560px) {
  .header-tagline {
    left: 0 !important;
    right: auto !important;
    width: min(270px, calc(100vw - 120px)) !important;
  }

  .top-actions {
    right: -9px !important;
  }

  .bridge-stage-tabs {
    padding-inline: 9px !important;
  }
}

/* Mobile source-of-truth lock: BASE is the header and stage centering reference. */
@media (max-width: 560px) {
  .mark {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    flex-basis: 36px !important;
    position: relative !important;
    top: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .mark img {
    width: 34px !important;
    height: 34px !important;
    min-width: 0 !important;
    flex-basis: auto !important;
    object-fit: contain !important;
    transform: none !important;
  }

  .bridge-stage-tabs .tab {
    place-items: center !important;
    justify-content: center !important;
    align-content: center !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
  }

  .bridge-stage-tabs .tab-label {
    width: auto !important;
    min-width: 0 !important;
    justify-self: center !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .ai-widget {
    right: max(16px, env(safe-area-inset-right)) !important;
    bottom: max(16px, env(safe-area-inset-bottom)) !important;
    z-index: 90 !important;
  }

  .ai-widget:not(.open) .ai-bubble {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 2px solid #ff781e !important;
    border-radius: 999px !important;
    background: #fffaf4 !important;
    color: #ad4200 !important;
    box-shadow: 0 0 0 3px rgba(255, 120, 30, .18), 0 16px 36px rgba(8, 7, 15, .22), 0 0 26px rgba(255, 120, 30, .30) !important;
    font-family: "Space Mono", ui-monospace, SFMono-Regular, Consolas, monospace !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
  }

  .ai-widget:not(.open) .ai-bubble span {
    display: block !important;
    width: auto !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
    box-shadow: none !important;
    font: inherit !important;
  }

  .ai-widget:not(.open) .ai-bubble b {
    display: none !important;
  }
}

/* Mobile bobble fix: make the BASE AI label explicit and cache-stale proof. */
@media (max-width: 560px) {
  .brand-version {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 15px !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    font-size: 8.5px !important;
    line-height: 1 !important;
  }

  .ai-widget:not(.open) button.ai-bubble > span {
    display: grid !important;
    place-items: center !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #ad4200 !important;
    font-family: "Space Mono", ui-monospace, SFMono-Regular, Consolas, monospace !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-indent: 0 !important;
    transform: none !important;
    clip-path: none !important;
  }
}

/* Final mobile version pill lock: match START's white filled pill in both themes. */
@media (max-width: 560px) {
  .brand-version,
  body:not(.theme-dark) .brand-version,
  body.theme-dark .brand-version {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 15px !important;
    padding: 2px 7px !important;
    border: 1px solid rgba(255, 120, 30, .35) !important;
    border-radius: 999px !important;
    background: rgba(255, 250, 243, .92) !important;
    color: #ad4200 !important;
    box-shadow: 0 4px 10px rgba(31, 24, 14, .10) !important;
    font-size: 8.5px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-shadow: none !important;
  }
}

/* Final dark mobile stage surface: warm separation from the forest header. */
@media (max-width: 560px) {
  body.theme-dark .bridge-guide-strip {
    border-color: rgba(255, 120, 30, .20) !important;
    background:
      radial-gradient(circle at 50% -34%, rgba(255, 120, 30, .16), transparent 72%),
      linear-gradient(180deg, rgba(18, 11, 13, .98), rgba(10, 8, 12, .96)) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 120, 30, .08) !important;
  }

  body.theme-dark .bridge-overall-progress {
    background: rgba(255, 176, 106, .16) !important;
  }

  body.theme-dark .bridge-stage-tabs .tab:not(.active),
  body.theme-dark .bridge-stage-tabs .tab:not(.active) .tab-label {
    color: #fffaf4 !important;
  }

  body.theme-dark .bridge-stage-tabs .tab.active,
  body.theme-dark .bridge-stage-tabs .tab.active .tab-label {
    color: var(--brand) !important;
  }
}

/* Final BASE dark stage text lock: beat older mobile tab color rules. */
body.theme-dark .bridge-stage-tabs .tab,
body.theme-dark .bridge-stage-tabs .tab .tab-label,
body.theme-dark .bridge-stage-tabs .tab.active,
body.theme-dark .bridge-stage-tabs .tab.active .tab-label {
  color: #fffaf4 !important;
}

body.theme-dark .bridge-stage-tabs .tab.active::after,
body.theme-dark .bridge-stage-tabs .tab.stage-complete::after {
  background: var(--brand) !important;
}

/* Desktop web pass: align BASE header/rail to the main content measure and center tab labels. */
@media (min-width: 901px) {
  .topbar-inner {
    max-width: 920px !important;
  }

  .brand-row {
    left: 0 !important;
  }

  .header-tagline {
    left: 63px !important;
  }

  .theme-switcher.header-theme {
    margin-left: 0 !important;
  }

  .top-actions {
    right: 0 !important;
  }

  .bridge-guide-strip {
    width: min(920px, calc(100% - 48px)) !important;
    transform: none !important;
  }

  .bridge-stage-tabs {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    justify-items: stretch !important;
  }

  .bridge-stage-tabs .tab {
    grid-template-columns: 1fr !important;
    place-items: center !important;
    justify-content: center !important;
    align-content: center !important;
    text-align: center !important;
  }

  .bridge-stage-tabs .tab-label {
    grid-column: 1 !important;
    justify-self: center !important;
    width: auto !important;
    min-width: 0 !important;
    text-align: center !important;
  }
}

/* Desktop/mobile version pill lock: match START's filled white badge in both themes. */
.brand-version,
body:not(.theme-dark) .brand-version,
body.theme-dark .brand-version {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 16px !important;
  padding: 2px 7px !important;
  border: 1px solid rgba(255, 120, 30, .38) !important;
  border-radius: 999px !important;
  background: rgba(255, 250, 243, .94) !important;
  color: #ad4200 !important;
  box-shadow: 0 4px 10px rgba(31, 24, 14, .12) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow: none !important;
}

@media (max-width: 560px) {
  .brand-version,
  body:not(.theme-dark) .brand-version,
  body.theme-dark .brand-version {
    min-height: 15px !important;
    padding: 2px 7px !important;
    font-size: 8.5px !important;
  }
}

/* Local desktop correction: keep BASE tagline and stage strokes aligned to the label text. */
@media (min-width: 901px) {
  .topbar-inner {
    max-width: 888px !important;
    width: min(888px, calc(100% - 48px)) !important;
  }

  .brand-row {
    left: 0 !important;
    right: 132px !important;
  }

  .header-tagline {
    left: 70px !important;
  }

  .top-actions {
    right: 0 !important;
  }

  .theme-switcher.header-theme {
    left: 0 !important;
    margin-left: 0 !important;
  }

  .bridge-guide-strip {
    width: min(888px, calc(100% - 48px)) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .bridge-progress-rail {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .bridge-stage-tabs .tab.active::after,
  .bridge-stage-tabs .tab.stage-complete::after {
    left: 50% !important;
    right: auto !important;
    width: min(96px, calc(100% - 48px)) !important;
    transform: translateX(-50%) !important;
  }

  .bridge-stage-tabs .tab.stage-complete:not(.active)::after {
    content: none !important;
    display: none !important;
  }

  .launch-offer-head {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .ai-widget:not(.open) .ai-bubble {
    width: 118px !important;
    min-width: 118px !important;
    height: auto !important;
    min-height: 78px !important;
    display: grid !important;
    justify-items: center !important;
    align-content: center !important;
    gap: 6px !important;
    padding: 10px 12px !important;
    text-align: center !important;
  }

  .ai-widget:not(.open) .ai-bubble span {
    display: grid !important;
    place-items: center !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 999px !important;
    background: var(--brand) !important;
    color: #fff !important;
    font-family: "Space Mono", ui-monospace, SFMono-Regular, Consolas, monospace !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    line-height: 1 !important;
  }

  .ai-widget:not(.open) .ai-bubble b {
    display: block !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 950 !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
  }
}

.site-footer .brand-tm {
  display: inline-block !important;
  font-size: 1.22em !important;
  line-height: .7 !important;
  margin-left: 3px !important;
  transform: translateY(-.12em) !important;
  vertical-align: baseline !important;
}

/* Mobile scroll rail: header leaves with the page, progress stays pinned. */
@media (max-width: 560px) {
  .topbar {
    position: relative !important;
    top: auto !important;
    z-index: 1 !important;
  }

  .bridge-guide-strip {
    position: sticky !important;
    top: 0 !important;
    z-index: 60 !important;
    margin-top: 0 !important;
    border-color: rgba(31, 27, 22, .10) !important;
    background: rgba(255, 255, 255, .82) !important;
    box-shadow: 0 10px 24px rgba(31, 27, 22, .10), inset 0 1px 0 rgba(255, 255, 255, .62) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
  }

  body.theme-dark .bridge-guide-strip {
    top: 0 !important;
    border-color: rgba(255, 120, 30, .20) !important;
    background:
      radial-gradient(circle at 50% -34%, rgba(255, 120, 30, .16), transparent 72%),
      linear-gradient(180deg, rgba(18, 11, 13, .92), rgba(10, 8, 12, .88)) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 120, 30, .08) !important;
  }
}

/* Final BASE wordmark font lock: match START/LAUNCH without the extra-heavy face. */
.brand h1,
.brand-name,
.brand-base,
.brand-jump,
.brand-by,
.brand-company {
  font-family: "Space Grotesk", Inter, ui-sans-serif, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-style: normal !important;
  letter-spacing: 0 !important;
}

/* Mobile header controls: align ONE button bottom to the theme pill. */
@media (max-width: 560px) {
  .top-actions {
    top: auto !important;
    bottom: 10px !important;
  }
}

/* Mobile BASE stage underline lock: only the selected stage draws a line. */
@media (max-width: 560px) {
  .bridge-stage-tabs .tab::after,
  .bridge-stage-tabs .tab.stage-complete::after,
  .bridge-stage-tabs .tab.stage-complete:not(.active)::after {
    content: none !important;
    display: none !important;
  }

  .bridge-stage-tabs .tab.active::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    width: min(80px, calc(100% - 18px)) !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: var(--brand) !important;
    transform: translateX(-50%) !important;
  }
}

/* Mobile ONE button lock: match START placement and size exactly. */
@media (max-width: 560px) {
  .top-actions {
    top: auto !important;
    right: -10px !important;
    bottom: 14px !important;
    width: 78px !important;
    height: 72px !important;
  }

  .stax-gateway {
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
    height: 72px !important;
    min-height: 72px !important;
    max-height: 72px !important;
    padding: 5px !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    gap: 0 !important;
    text-align: center !important;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    letter-spacing: .18px !important;
  }

  .stax-gateway-main {
    display: grid !important;
    place-items: center !important;
    gap: 0 !important;
    width: 38px !important;
  }

  .stax-gateway-icon {
    width: 38px !important;
    height: 38px !important;
    flex-basis: 38px !important;
    position: relative !important;
    top: -1px !important;
  }

  .stax-gateway span,
  .stax-gateway small {
    display: block !important;
    color: #171612 !important;
    font-size: 9px !important;
    line-height: 8.82px !important;
    font-weight: 950 !important;
    letter-spacing: .18px !important;
    text-transform: none !important;
    text-align: center !important;
    transform: none !important;
  }
}

/* Desktop web lock: center ONE button and match START's SolidOATH Core modal. */
@media (min-width: 901px) {
  .top-actions {
    top: 50% !important;
    transform: translateY(-50%) !important;
  }

  .stax-gateway-modal {
    position: relative !important;
    display: grid !important;
    width: min(620px, calc(100vw - 28px)) !important;
    gap: 18px !important;
    padding: 22px !important;
    border: 1px solid rgb(60, 65, 56) !important;
    border-radius: 8px !important;
    background: #fffaf4 !important;
    color: #171612 !important;
    box-shadow: 0 22px 60px rgba(0, 0, 0, .28) !important;
  }

  .stax-gateway-modal .help-close {
    position: absolute !important;
    top: 18px !important;
    right: 18px !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 34px !important;
    height: 34px !important;
    padding: 1px 6px !important;
    border: 1px solid rgba(255, 120, 30, .55) !important;
    border-radius: 9px !important;
    background: #fffaf4 !important;
    color: #171612 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 18px !important;
    cursor: pointer !important;
  }

  .stax-gateway-modal h2 {
    margin: 0 34px 8px 0 !important;
    color: #171612 !important;
    font-size: 16.8px !important;
    line-height: 21px !important;
    font-weight: 700 !important;
  }

  .stax-gateway-modal > p {
    margin: 0 !important;
    color: #171612 !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
  }

  .stax-gateway-modal .one-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(210px, .75fr) !important;
    gap: 12px !important;
  }

  .stax-gateway-modal .one-grid > div,
  .stax-gateway-modal .one-grid > section {
    display: grid !important;
    gap: 6px !important;
    padding: 12px !important;
    border: 1px solid var(--line) !important;
    border-radius: 12px !important;
    background: #fffaf4 !important;
  }

  .stax-gateway-modal .one-kicker,
  .stax-gateway-modal .one-grid span {
    color: #ad4200 !important;
    font-family: "Space Mono", ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace !important;
    font-size: 11px !important;
    font-weight: 950 !important;
    letter-spacing: .1em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
  }

  .stax-gateway-modal .one-grid b,
  .stax-gateway-modal .one-grid strong {
    color: #171612 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
  }

  .stax-gateway-modal .one-grid p {
    margin: 0 !important;
    color: #68606a !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
  }

  .stax-gateway-modal .one-merge-note {
    grid-column: 1 / -1 !important;
    border-color: rgba(255, 120, 30, .28) !important;
    background: rgba(255, 120, 30, .06) !important;
  }

  .stax-gateway-modal .one-note {
    margin: 0 !important;
    padding: 12px !important;
    border: 1px solid #d8e3e9 !important;
    border-radius: 8px !important;
    background: #eef3f5 !important;
    color: #171612 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
  }

  .stax-gateway-modal .one-actions {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 10px !important;
  }

  .stax-gateway-modal .one-action-primary,
  .stax-gateway-modal .one-action-secondary {
    min-height: 40px !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    cursor: pointer !important;
  }

  .stax-gateway-modal .one-action-primary {
    border: 0 !important;
    background: var(--brand) !important;
    color: #171612 !important;
  }

  .stax-gateway-modal .one-action-secondary {
    border: 1px solid var(--line) !important;
    background: #fffaf4 !important;
    color: #171612 !important;
  }
}

/* Footer lock: match Passage's footer type and wrapping in light/dark, web/mobile. */
.site-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  width: min(900px, calc(100% - 32px)) !important;
  margin: 28px auto 54px !important;
  color: #171612 !important;
  font-family: "Space Grotesk", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
}

.site-footer b {
  color: #171612 !important;
}

.site-footer a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  padding: 5px 11px !important;
  border: 1px solid rgba(31, 27, 22, .12) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .72) !important;
  color: #6a6272 !important;
  font: inherit !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
}

.theme-dark .site-footer,
.theme-dark .site-footer b {
  color: #fffaf4 !important;
}

/* SolidOATH Core tooltip lock: match Passage's anchored popover. */
.stax-gateway[data-tip]::after,
.stax-gateway:is(:hover, :focus-visible, .tip-open)::after {
  content: none !important;
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

.header-tip-popover {
  position: fixed;
  z-index: 20000;
  display: block;
  pointer-events: none;
  padding: 10px 12px;
  border: 1px solid rgba(255, 120, 30, .78);
  border-radius: 10px;
  background: #fffdf9;
  color: #171612;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  text-align: left;
  box-shadow: 0 18px 46px rgba(8, 7, 15, .28);
}

.header-tip-popover[hidden] {
  display: none;
}

.theme-dark .header-tip-popover {
  border-color: rgba(255, 120, 30, .9);
  background: #fff1e4;
  color: #171612;
  box-shadow:
    0 0 0 2px rgba(255, 120, 30, .26),
    0 18px 46px rgba(0, 0, 0, .62);
}

.ai-widget:not(.open) .ai-bubble span,
button.ai-bubble > span {
  background: #8f3200 !important;
  color: #ffffff !important;
}

/* BASE route picker fit: long selected values must stay inside their cards. */
.route-card .route-grid,
.route-card .route-grid > *,
.route-card .route-box,
.route-card .route-picker,
.route-card .route-picker-toggle,
.route-card .route-picker-menu {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.route-card .route-picker-toggle {
  overflow: hidden !important;
  padding-inline: 12px 10px !important;
}

.route-card .route-picker-toggle span {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: clamp(13px, 1vw, 15px) !important;
  line-height: 1.1 !important;
}

.route-card .route-picker-toggle b {
  flex: 0 0 auto !important;
  margin-left: 4px !important;
}

.route-card .route-picker-menu {
  width: 100% !important;
  overflow-x: hidden !important;
}

.route-card .route-picker-menu button {
  min-width: 0 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.route-card .route-picker-menu .route-option span {
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.route-card .route-picker-pill {
  display: none !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  column-gap: 4px !important;
  align-items: start !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-top: -2px !important;
  padding: 5px 8px !important;
  border: 1px solid rgba(255, 113, 24, .22) !important;
  border-radius: 999px !important;
  background: rgba(255, 113, 24, .07) !important;
  color: #bd4800 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

.route-card .route-picker-pill span {
  min-width: 0 !important;
  color: inherit !important;
  font: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

.theme-dark .route-card .route-picker-pill {
  border-color: rgba(255, 138, 42, .32) !important;
  background: rgba(255, 113, 24, .12) !important;
  color: #ff8a2a !important;
}

.theme-dark .route-card .route-box-locked-name input,
.theme-dark .route-card .route-box-locked-name input[readonly] {
  border-color: rgba(255, 138, 42, .28) !important;
  background: rgba(255, 255, 255, .08) !important;
  color: #fffaf4 !important;
  -webkit-text-fill-color: #fffaf4 !important;
}

.theme-dark .route-card .route-box-locked-name input::placeholder {
  color: rgba(255, 250, 244, .68) !important;
  opacity: 1 !important;
}

.theme-dark .route-card .route-box-choice:hover,
.theme-dark .route-card .route-box-choice:focus-within {
  border-color: rgba(255, 138, 42, .72) !important;
  background: rgba(255, 113, 24, .13) !important;
  box-shadow:
    0 0 0 1px rgba(255, 138, 42, .22),
    0 12px 28px rgba(8, 7, 15, .30) !important;
  transform: translateY(-1px) !important;
}

.theme-dark .route-card .route-box-choice:hover .route-picker-toggle,
.theme-dark .route-card .route-box-choice:focus-within .route-picker-toggle {
  border-color: rgba(255, 138, 42, .62) !important;
  background: rgba(255, 113, 24, .16) !important;
  color: #fffaf4 !important;
}

.theme-dark .route-card .route-picker-toggle,
.theme-dark .route-card .route-picker-menu {
  border-color: rgba(255, 138, 42, .46) !important;
  background: rgba(255, 113, 24, .12) !important;
  color: #fffaf4 !important;
}

.theme-dark .route-card .route-picker.open .route-picker-toggle {
  border-color: rgba(255, 138, 42, .68) !important;
  background: rgba(255, 113, 24, .18) !important;
  box-shadow: 0 0 0 3px rgba(255, 113, 24, .14) !important;
}

.theme-dark .route-card .route-box-locked-name.locked:hover {
  transform: none !important;
}

/* BASE dark only: later-stage numbered cards should hover soft-orange, not brown. */
.theme-dark .simple-step:hover,
.theme-dark .simple-step:focus-within {
  background: rgba(255, 113, 24, .24) !important;
  border-color: rgba(255, 176, 106, .66) !important;
  box-shadow:
    0 10px 28px rgba(0, 0, 0, .26),
    0 0 0 2px rgba(255, 113, 24, .18) !important;
}

.theme-dark .simple-step:not(.done):hover .simple-step-icon,
.theme-dark .simple-step:not(.done):focus-within .simple-step-icon {
  background: rgba(255, 113, 24, .34) !important;
  border-color: rgba(255, 176, 106, .74) !important;
  color: #fffaf4 !important;
}

/* ONE modal polish: keep the private-info note readable and action labels stable. */
.stax-gateway-modal .one-note,
body.theme-dark .stax-gateway-modal .one-note {
  border-color: rgba(35, 95, 147, .30) !important;
  background: #f7fbff !important;
  color: #171612 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

.stax-gateway-modal .one-note *,
.stax-gateway-modal .one-note strong,
body.theme-dark .stax-gateway-modal .one-note *,
body.theme-dark .stax-gateway-modal .one-note strong {
  color: #171612 !important;
}

.stax-gateway-modal .help-close,
body.theme-dark .stax-gateway-modal .help-close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;
  padding: 1px 6px !important;
  border: 1px solid rgba(255, 120, 30, .55) !important;
  border-radius: 9px !important;
  background: #fffaf4 !important;
  color: #171612 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 18px !important;
  cursor: pointer !important;
}

.stax-gateway-modal .one-actions .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 8px 8px !important;
  font-size: 10px !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: keep-all !important;
  hyphens: none !important;
  text-wrap: balance !important;
}

.stax-gateway-modal .one-actions .one-action-primary,
body.theme-dark .stax-gateway-modal .one-actions .one-action-primary {
  background: #ff781e !important;
  color: #fff !important;
  border-color: #ff781e !important;
  box-shadow: 0 10px 22px rgba(255, 120, 30, .24) !important;
}

.stax-gateway-modal .one-actions .one-action-secondary,
body.theme-dark .stax-gateway-modal .one-actions .one-action-secondary {
  background: #fff !important;
  color: #171612 !important;
  border-color: rgba(31, 27, 22, .16) !important;
}

@media (max-width: 560px) {
  .stax-gateway-modal .one-actions {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .stax-gateway-modal .one-actions .btn {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}

/* StonePath product lockup: Stone grey, Path white, app name orange italic. */
.brand-name {
  display: inline-flex !important;
  grid-area: name !important;
  align-items: baseline !important;
  column-gap: 0 !important;
  row-gap: 0 !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}

.brand-by,
.brand-company {
  display: none !important;
}

.brand h1 {
  grid-template-columns: max-content max-content !important;
  grid-template-areas: "name version" !important;
  align-items: baseline !important;
  column-gap: 8px !important;
  row-gap: 0 !important;
}

.brand-stone {
  color: #77716b !important;
  font-style: normal !important;
}

.brand-path-word {
  color: #fff !important;
  font-style: normal !important;
}

.brand-app-name {
  color: var(--brand) !important;
  font-style: italic !important;
  font-weight: 800 !important;
  margin-left: .2em !important;
}

.brand-version {
  grid-area: version !important;
  width: auto !important;
  min-width: 44px !important;
  max-width: none !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
  justify-content: center !important;
  text-align: center !important;
  box-sizing: border-box !important;
  padding-inline: 7px !important;
}

@media (max-width: 560px) {
  .brand {
    max-width: calc(100% - 18px) !important;
  }

  .brand-name {
    font-size: clamp(21px, 5.9vw, 24px) !important;
    line-height: .96 !important;
  }
}

/* Final app-header art stage: centered app-width canvas, not a full webpage banner. */
:root {
  --bridge-header-art-x: 84%;
  --bridge-header-art-y: 120%;
  --bridge-header-art-size: 365px;
  --bridge-header-art-opacity: .87;
}

.topbar,
.theme-dark .topbar {
  background: transparent !important;
  border-bottom-color: transparent !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

.topbar::before,
.theme-dark .topbar::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  width: min(888px, calc(100% - 48px)) !important;
  margin-inline: auto !important;
  background:
    linear-gradient(90deg, rgba(5, 5, 7, .88) 0%, rgba(5, 5, 7, .44) 28%, rgba(5, 5, 7, .30) 68%, rgba(5, 5, 7, .78) 100%),
    url("/bridge/public/stonepath-hero-bridge.png") var(--bridge-header-art-x) var(--bridge-header-art-y) / var(--bridge-header-art-size) auto no-repeat,
    linear-gradient(#050507, #050507) !important;
  opacity: var(--bridge-header-art-opacity) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

.topbar-inner {
  position: relative !important;
  z-index: 1 !important;
}

@media (min-width: 561px) and (max-width: 920px) {
  :root {
    --bridge-header-art-x: 73%;
    --bridge-header-art-y: 104%;
    --bridge-header-art-size: 330px;
    --bridge-header-art-opacity: .90;
  }

  .topbar::before,
  .theme-dark .topbar::before {
    width: min(888px, calc(100% - 24px)) !important;
    background:
      linear-gradient(90deg, rgba(5, 5, 7, .90) 0%, rgba(5, 5, 7, .52) 30%, rgba(5, 5, 7, .34) 70%, rgba(5, 5, 7, .82) 100%),
      url("/bridge/public/stonepath-hero-bridge.png") var(--bridge-header-art-x) var(--bridge-header-art-y) / var(--bridge-header-art-size) auto no-repeat,
      linear-gradient(#050507, #050507) !important;
  }
}

@media (max-width: 560px) {
  :root {
    --bridge-header-art-x: 40%;
    --bridge-header-art-y: 70%;
    --bridge-header-art-size: 250px;
    --bridge-header-art-opacity: 1;
  }

  .topbar::before,
  .theme-dark .topbar::before {
    width: min(430px, calc(100% - 18px)) !important;
    background:
      linear-gradient(90deg, rgba(5, 5, 7, .92) 0%, rgba(5, 5, 7, .62) 34%, rgba(5, 5, 7, .42) 72%, rgba(5, 5, 7, .86) 100%),
      url("/bridge/public/stonepath-hero-bridge.png") var(--bridge-header-art-x) var(--bridge-header-art-y) / var(--bridge-header-art-size) auto no-repeat,
      linear-gradient(#050507, #050507) !important;
  }
}

.bridge-header-art-tool {
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 50000;
  width: min(320px, calc(100vw - 36px));
  padding: 14px;
  border: 1px solid rgba(255, 120, 30, .42);
  border-radius: 10px;
  background: rgba(5, 5, 7, .90);
  color: #fffaf3;
  box-shadow: 0 20px 50px rgba(0, 0, 0, .35);
  backdrop-filter: blur(16px);
  font-family: inherit;
}

.bridge-header-art-tool h2 {
  margin: 0 0 10px;
  color: #fffaf3;
  font-size: 14px;
  line-height: 1.2;
}

.bridge-header-art-tool label {
  display: grid;
  grid-template-columns: 78px 1fr 48px;
  gap: 8px;
  align-items: center;
  margin-top: 8px;
  color: rgba(255, 250, 243, .82);
  font-size: 12px;
  font-weight: 800;
}

.bridge-header-art-tool input[type="range"] {
  width: 100%;
  accent-color: #ff781e;
}

.bridge-header-art-tool output {
  color: #ffb36a;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.bridge-header-art-tool-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 12px;
}

.bridge-header-art-tool button {
  min-height: 34px;
  border: 1px solid rgba(255, 120, 30, .45);
  border-radius: 8px;
  background: rgba(255, 120, 30, .14);
  color: #fffaf3;
  font-weight: 900;
  cursor: pointer;
}

.bridge-header-art-tool button:hover,
.bridge-header-art-tool button:focus-visible {
  background: rgba(255, 120, 30, .24);
  outline: none;
}

.bridge-header-art-tool-note {
  margin: 10px 0 0;
  color: rgba(255, 250, 243, .66);
  font-size: 11px;
  line-height: 1.35;
}

/* Mobile sticky stage rail lock: Bridge matches Passage and Groundwork. */
@media (max-width: 560px) {
  .bridge-guide-strip,
  body.theme-dark .bridge-guide-strip {
    position: sticky !important;
    top: 0 !important;
    z-index: 80 !important;
    margin-top: 0 !important;
    transform: none !important;
  }
}

@media (min-width: 561px) and (max-width: 920px) {
  .brand-name {
    font-size: clamp(26px, 3.55vw, 30px) !important;
    line-height: .96 !important;
  }
}

/* Mobile tagline reset: align under the wordmark, close to the name. */
@media (max-width: 560px) {
  .header-tagline,
  body.theme-dark .header-tagline {
    left: 43px !important;
    right: 112px !important;
    top: 30px !important;
    width: auto !important;
    max-width: none !important;
    transform: none !important;
    text-align: left !important;
    font-size: 10px !important;
    line-height: 1.18 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

/* View-specific header rulebook: each view owns its tagline placement. */
@media (min-width: 921px) {
  .header-tagline,
  body.theme-dark .header-tagline {
    left: 70px !important;
    right: 160px !important;
    top: 58px !important;
    max-width: 600px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }
}

/* Bridge app-width header: keep the canvas aligned, but give the controls an inner gutter. */
@media (min-width: 921px) {
  .brand-row {
    left: 16px !important;
    right: 148px !important;
  }

  .header-tagline,
  body.theme-dark .header-tagline {
    left: 70px !important;
    right: 176px !important;
  }

  .theme-switcher.header-theme {
    left: 16px !important;
    margin-left: 0 !important;
  }

  .top-actions {
    right: 16px !important;
  }
}

@media (min-width: 561px) and (max-width: 920px) {
  .header-tagline,
  body.theme-dark .header-tagline {
    left: 70px !important;
    right: auto !important;
    top: 36px !important;
    width: max-content !important;
    max-width: min(420px, calc(100vw - 300px)) !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }
}

@media (max-width: 560px) {
  .header-tagline,
  body.theme-dark .header-tagline {
    left: 43px !important;
    right: 112px !important;
    top: 30px !important;
    max-width: none !important;
    font-size: 10px !important;
    line-height: 1.18 !important;
    white-space: nowrap !important;
  }
}

/* Shared ONE modal lock: Groundwork, Passage, and Bridge use the same window language. */
.stax-gateway-modal.one-card,
body.theme-dark .stax-gateway-modal.one-card {
  position: relative !important;
  display: grid !important;
  width: min(680px, calc(100vw - 28px)) !important;
  max-height: min(86vh, 860px) !important;
  gap: 18px !important;
  overflow: auto !important;
  padding: 22px !important;
  border: 2px solid #ff781e !important;
  border-radius: 14px !important;
  background: #fffaf4 !important;
  color: #171612 !important;
  box-shadow: 0 26px 70px rgba(0, 0, 0, .34) !important;
}

.stax-gateway-modal.one-card .help-close,
body.theme-dark .stax-gateway-modal.one-card .help-close {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  display: inline-grid !important;
  place-items: center !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  border: 1px solid rgba(255, 120, 30, .58) !important;
  border-radius: 10px !important;
  background: #fffaf4 !important;
  color: #171612 !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

.stax-gateway-modal.one-card h2 {
  margin: 0 44px 0 0 !important;
  color: #171612 !important;
  font-size: 24px !important;
  line-height: 1.14 !important;
}

.stax-gateway-modal.one-card > p {
  margin: 0 !important;
  color: #171612 !important;
  font-size: 15px !important;
  line-height: 1.42 !important;
}

.stax-gateway-modal.one-card .one-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(210px, .75fr) !important;
  gap: 12px !important;
}

.stax-gateway-modal.one-card .one-grid > section,
.stax-gateway-modal.one-card .one-grid > div {
  display: grid !important;
  gap: 6px !important;
  padding: 12px !important;
  border: 1px solid rgba(31, 27, 22, .16) !important;
  border-radius: 12px !important;
  background: #fffaf4 !important;
}

.stax-gateway-modal.one-card .one-kicker,
.stax-gateway-modal.one-card .one-grid span {
  color: #ad4200 !important;
  font-family: var(--mono), ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .1em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}

.stax-gateway-modal.one-card .one-grid strong,
.stax-gateway-modal.one-card .one-grid b {
  color: #171612 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.stax-gateway-modal.one-card .one-grid p {
  margin: 0 !important;
  color: #5f5962 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.stax-gateway-modal.one-card .one-merge-note {
  grid-column: 1 / -1 !important;
  border-color: rgba(255, 120, 30, .28) !important;
  background: rgba(255, 120, 30, .08) !important;
}

.stax-gateway-modal.one-card .one-note {
  margin: 0 !important;
  padding: 12px !important;
  border: 1px solid #d8e3e9 !important;
  border-radius: 8px !important;
  background: #eef3f5 !important;
  color: #171612 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

.stax-gateway-modal.one-card .one-note *,
body.theme-dark .stax-gateway-modal.one-card .one-note * {
  color: #171612 !important;
}

.stax-gateway-modal.one-card .one-actions {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 10px !important;
}

.stax-gateway-modal.one-card .one-action-primary,
.stax-gateway-modal.one-card .one-action-secondary {
  min-height: 44px !important;
  padding: 10px 16px !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  text-transform: none !important;
  white-space: normal !important;
}

.stax-gateway-modal.one-card .one-action-primary {
  border: 0 !important;
  background: #ff781e !important;
  color: #fff !important;
}

.stax-gateway-modal.one-card .one-action-secondary {
  border: 1px solid rgba(31, 27, 22, .18) !important;
  background: #fffaf4 !important;
  color: #171612 !important;
}

@media (max-width: 560px) {
  .stax-gateway-modal.one-card,
  body.theme-dark .stax-gateway-modal.one-card {
    width: min(346px, calc(100vw - 28px)) !important;
    max-height: min(82vh, 760px) !important;
    gap: 16px !important;
    padding: 20px !important;
  }

  .stax-gateway-modal.one-card h2 {
    font-size: 24px !important;
    line-height: 1.18 !important;
  }

  .stax-gateway-modal.one-card .one-grid {
    grid-template-columns: 1fr !important;
  }

  .stax-gateway-modal.one-card .one-merge-note {
    grid-column: auto !important;
  }

  .stax-gateway-modal.one-card .one-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
}

/* Responsive header edge rule: tablet and mobile use full-bleed header canvases. */
@media (max-width: 920px) {
  .shell > .topbar,
  .theme-dark .shell > .topbar,
  .topbar,
  .theme-dark .topbar,
  .shell > .topbar::before,
  .theme-dark .shell > .topbar::before,
  .topbar::before,
  .theme-dark .topbar::before {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-inline: 0 !important;
  }

  .shell > .topbar,
  .theme-dark .shell > .topbar,
  .topbar,
  .theme-dark .topbar {
    border-left-width: 0 !important;
    border-right-width: 0 !important;
    border-top-width: 0 !important;
    box-sizing: border-box !important;
  }
}

/* Bridge responsive header controls: align to the stage rail edges. */
@media (min-width: 561px) and (max-width: 920px) {
  .topbar-inner {
    width: calc(100% - 46px) !important;
    margin-left: 23px !important;
    margin-right: 23px !important;
  }

  .brand-row {
    left: 0 !important;
    right: 132px !important;
  }

  .theme-switcher.header-theme {
    left: 0 !important;
    right: auto !important;
    margin-left: 0 !important;
  }

  .top-actions {
    left: auto !important;
    right: 0 !important;
  }

  /* Match the shared tablet header selector used by the other apps. */
  .theme-switcher.header-theme,
  body.theme-dark .theme-switcher.header-theme {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2px !important;
    width: 92px !important;
    min-width: 92px !important;
    max-width: 92px !important;
    min-height: 24px !important;
    height: 24px !important;
    padding: 2px !important;
    border: 1px solid rgba(31, 27, 22, .14) !important;
    border-radius: 999px !important;
    background: rgba(255, 253, 249, .92) !important;
    box-shadow: 0 8px 20px rgba(31, 35, 28, .08) !important;
  }

  .theme-switcher.header-theme button,
  body.theme-dark .theme-switcher.header-theme button {
    width: 28px !important;
    height: 20px !important;
    min-height: 20px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: #686071 !important;
    font-size: 9px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
  }

  .theme-switcher.header-theme button.active,
  body.theme-dark .theme-switcher.header-theme button.active {
    background: #ff781e !important;
    color: #fff !important;
  }
}

@media (max-width: 560px) {
  .theme-switcher.header-theme {
    left: 2px !important;
    right: auto !important;
    margin-left: 0 !important;
  }

  .top-actions {
    left: auto !important;
    right: 2px !important;
  }
}

/* Bridge walkthrough rail: let the brand header scroll away, keep stages reachable. */
.topbar,
.theme-dark .topbar {
  position: relative !important;
  top: auto !important;
  z-index: 1 !important;
}

.bridge-guide-strip,
.theme-dark .bridge-guide-strip {
  position: sticky !important;
  top: 0 !important;
  z-index: 80 !important;
  margin-top: 0 !important;
  transform: none !important;
  background: rgba(255, 253, 249, .96) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
  box-shadow: 0 8px 22px rgba(33, 25, 18, .08) !important;
}

.theme-dark .bridge-guide-strip {
  background: rgba(24, 18, 15, .94) !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .24) !important;
}

/* SolidOATH Core logo refresh: the supplied image is the full badge. */
.stax-gateway,
.theme-dark .stax-gateway {
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.stax-gateway-main {
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  gap: 0 !important;
}

.stax-gateway-icon {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 102px !important;
  max-height: 102px !important;
  flex: 0 0 auto !important;
  object-fit: contain !important;
  border-radius: 18px !important;
  filter: drop-shadow(0 12px 22px rgba(255, 106, 0, .2)) !important;
}

.stax-gateway-main > span,
.stax-gateway > small {
  display: none !important;
}

@media (max-width: 560px) {
  .stax-gateway-icon {
    max-width: 76px !important;
    max-height: 76px !important;
    border-radius: 14px !important;
  }
}
