:root {
  --bg: #000000;
  --panel: #111312;
  --panel-2: #171a18;
  --panel-3: #20231f;
  --line: rgba(241, 238, 229, 0.13);
  --line-strong: rgba(241, 238, 229, 0.22);
  --text: #f4f1e8;
  --muted: #9da3a0;
  --muted-2: #6f7772;
  --accent: #bfff00;
  --accent-soft: rgba(191, 255, 0, 0.12);
  --danger: #ff6b5f;
  --ok: #bfff00;
  --shadow: 0 24px 90px rgba(0, 0, 0, 0.58);
  --radius: 8px;
  --workspace-topbar-height: 56px;
  --font: "Avenir Next", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

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

html {
  background: var(--bg);
  overflow-x: hidden;
}

body {
  margin: 0;
  min-width: 320px;
  color: var(--text);
  background: var(--bg);
  font-family: var(--font);
  letter-spacing: 0;
}

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

button {
  cursor: pointer;
}

button:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

a {
  color: inherit;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.app-shell {
  min-height: 100dvh;
  display: grid;
  grid-template-rows: auto 1fr;
}

.workspace-shell {
  grid-template-columns: 288px minmax(0, 1fr);
  grid-template-rows: 1fr;
  background: var(--bg);
  max-width: 100vw;
  overflow-x: hidden;
}

.workspace-shell.is-sidebar-collapsed {
  grid-template-columns: 78px minmax(0, 1fr);
}

.app-shell-auth {
  grid-template-rows: 1fr;
}

.workspace-frame {
  min-width: 0;
  max-width: 100%;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow-x: hidden;
}

.ai-workspace-sidebar {
  position: sticky;
  top: 0;
  z-index: 30;
  height: 100dvh;
  min-width: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  align-content: stretch;
  gap: 18px;
  padding: 16px 14px;
  border-right: 1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.045), transparent 34%),
    #070807;
}

.sidebar-brand-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.sidebar-collapse-btn {
  flex: 0 0 auto;
}

.workspace-nav {
  display: grid;
  gap: 6px;
}

.workspace-list {
  min-height: 0;
  display: grid;
  align-content: start;
  gap: 16px;
  overflow: auto;
  padding-bottom: 12px;
}

.workspace-list-section {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.workspace-list-heading {
  margin: 0 0 2px;
  color: var(--muted-2);
  font-size: 0.68rem;
  font-weight: 840;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.workspace-list-item {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  border: 1px solid transparent;
  border-radius: var(--radius);
  padding: 6px 8px;
  background: transparent;
  color: var(--muted);
  text-align: left;
  text-decoration: none;
}

.workspace-list-item:hover,
.workspace-list-item:focus-visible,
.workspace-list-item.is-active {
  outline: none;
  border-color: rgba(191, 255, 0, 0.34);
  background: rgba(191, 255, 0, 0.08);
  color: var(--text);
}

.workspace-list-item.is-journey-memory {
  border-color: rgba(191, 255, 0, 0.14);
  background: rgba(191, 255, 0, 0.045);
}

.workspace-list-item.is-journey-memory .workspace-nav-icon {
  border-color: rgba(191, 255, 0, 0.32);
  background: rgba(191, 255, 0, 0.1);
}

.workspace-run-row {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 30px;
  align-items: center;
  gap: 6px;
}

.workspace-run-row .workspace-list-item {
  min-height: 44px;
}

.workspace-run-rename-btn {
  width: 30px;
  height: 30px;
  color: var(--muted);
}

.workspace-run-rename-btn:hover,
.workspace-run-rename-btn:focus-visible {
  color: var(--text);
  border-color: rgba(191, 255, 0, 0.34);
  background: rgba(191, 255, 0, 0.08);
}

.workspace-list-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.workspace-list-copy span,
.workspace-list-copy small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workspace-list-copy span {
  color: var(--text);
  font-size: 0.86rem;
  font-weight: 790;
}

.workspace-list-copy small {
  color: var(--muted);
  font-size: 0.71rem;
  font-weight: 660;
}

.workspace-list-empty {
  margin: 0;
  border: 1px dashed rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 9px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.workspace-utility-section {
  padding-top: 4px;
  border-top: 1px solid rgba(241, 238, 229, 0.09);
}

.sidebar-credit-block {
  position: relative;
  display: grid;
  gap: 6px;
  border: 1px solid rgba(191, 255, 0, 0.18);
  border-radius: var(--radius);
  padding: 10px;
  background: #0a0c0a;
  box-shadow: 0 -12px 34px rgba(0, 0, 0, 0.28);
}

.sidebar-bottom-stack {
  min-width: 0;
  display: grid;
  gap: 10px;
}

.sidebar-account-block {
  min-width: 0;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 8px;
  background: #0a0c0a;
}

.sidebar-account-avatar {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(191, 255, 0, 0.34);
  border-radius: var(--radius);
  background: rgba(191, 255, 0, 0.08);
  color: var(--accent);
  font-size: 0.78rem;
  font-weight: 900;
}

.sidebar-account-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.sidebar-account-copy span,
.sidebar-account-copy strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sidebar-account-copy span {
  color: var(--muted-2);
  font-size: 0.68rem;
  font-weight: 780;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.sidebar-account-copy strong {
  color: var(--text);
  font-size: 0.78rem;
  font-weight: 760;
}

.sidebar-account-logout {
  min-height: 32px;
  padding-inline: 10px;
  color: var(--muted);
  font-size: 0.74rem;
}

.sidebar-credit-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--text);
  font-size: 0.75rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.sidebar-credit-head small,
.sidebar-credit-plan,
.sidebar-credit-note {
  margin: 0;
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
}

.sidebar-credit-balance {
  margin: 0;
  color: var(--text);
  font-size: 0.92rem;
  font-weight: 820;
}

.workspace-nav-link {
  min-width: 0;
  min-height: 48px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  border: 1px solid transparent;
  border-radius: var(--radius);
  padding: 7px 9px;
  color: var(--muted);
  text-decoration: none;
}

.workspace-nav-link:hover,
.workspace-nav-link:focus-visible,
.workspace-nav-link.is-active {
  outline: none;
  border-color: rgba(191, 255, 0, 0.36);
  background: rgba(191, 255, 0, 0.09);
  color: var(--text);
}

.workspace-nav-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(241, 238, 229, 0.13);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
  color: var(--accent);
  font-size: 0.78rem;
  font-weight: 900;
}

.workspace-nav-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.workspace-nav-copy span,
.workspace-nav-copy small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workspace-nav-copy span {
  color: var(--text);
  font-size: 0.9rem;
  font-weight: 820;
}

.workspace-nav-copy small {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 680;
}

.workspace-shell.is-sidebar-collapsed .ai-workspace-sidebar {
  padding-inline: 10px;
}

.workspace-shell.is-sidebar-collapsed .sidebar-brand-row {
  flex-direction: column;
}

.workspace-shell.is-sidebar-collapsed .brand-copy,
.workspace-shell.is-sidebar-collapsed .workspace-nav-copy,
.workspace-shell.is-sidebar-collapsed .workspace-list-copy,
.workspace-shell.is-sidebar-collapsed .workspace-list-heading,
.workspace-shell.is-sidebar-collapsed .workspace-list-empty,
.workspace-shell.is-sidebar-collapsed .sidebar-credit-block,
.workspace-shell.is-sidebar-collapsed .workspace-run-rename-btn,
.workspace-shell.is-sidebar-collapsed .sidebar-account-copy,
.workspace-shell.is-sidebar-collapsed .sidebar-account-logout span {
  display: none;
}

.workspace-shell.is-sidebar-collapsed .workspace-nav-link,
.workspace-shell.is-sidebar-collapsed .workspace-list-item {
  grid-template-columns: 1fr;
  justify-items: center;
  padding-inline: 6px;
}

.workspace-shell.is-sidebar-collapsed .sidebar-account-block {
  grid-template-columns: 1fr;
  justify-items: center;
  padding-inline: 6px;
}

.workspace-shell.is-sidebar-collapsed .sidebar-account-logout {
  width: 34px;
  min-height: 30px;
  padding: 0;
  font-size: 0.62rem;
}

.workspace-shell.is-sidebar-collapsed .sidebar-account-logout::before {
  content: "Out";
}

.workspace-topbar {
  position: sticky;
  top: 0;
  z-index: 18;
  min-height: var(--workspace-topbar-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px clamp(16px, 2.4vw, 26px);
  border-bottom: 1px solid var(--line);
  background: rgba(0, 0, 0, 0.86);
  backdrop-filter: blur(18px);
}

.workspace-title-block {
  min-width: 0;
}

.workspace-kicker {
  margin: 0;
  color: var(--accent);
  font-size: 0.68rem;
  font-weight: 840;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.workspace-title-block h1 {
  margin: 2px 0 0;
  color: var(--text);
  font-size: 0.98rem;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.workspace-title-block p:last-child {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 650;
  overflow-wrap: anywhere;
}

.workspace-frame-results {
  height: 100dvh;
  overflow: hidden;
}

.workspace-frame-results .workspace-topbar {
  position: relative;
  height: var(--workspace-topbar-height);
}

.workspace-frame-results .workspace-title-block {
  display: grid;
  min-width: 0;
}

.workspace-frame-results .workspace-title-block h1,
.workspace-frame-results .workspace-title-block p:last-child {
  max-width: min(980px, 72vw);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow-wrap: normal;
}

.app-topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px clamp(18px, 4vw, 42px);
  background: rgba(0, 0, 0, 0.88);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
}

.session-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: 280px;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.035);
}

.session-chip span {
  min-width: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 720;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.brand-lockup {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(191, 255, 0, 0.55);
  border-radius: var(--radius);
  color: var(--accent);
  background: #060806;
  font-weight: 900;
}

.brand-copy {
  display: grid;
  gap: 2px;
}

.brand-title {
  margin: 0;
  color: var(--text);
  font-size: 0.98rem;
  font-weight: 780;
  letter-spacing: 0;
}

.brand-subtitle {
  margin: 0;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 650;
}

.app-nav {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.nav-link,
.ghost-btn,
.primary-btn,
.danger-btn,
.icon-btn {
  min-height: 38px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.035);
  color: var(--text);
  text-decoration: none;
  transition: border-color 160ms ease, background 160ms ease, transform 160ms ease;
}

.nav-link {
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  color: var(--muted);
  font-size: 0.83rem;
  font-weight: 720;
}

.nav-link:hover,
.nav-link:focus-visible,
.nav-link.is-active,
.ghost-btn:hover,
.ghost-btn:focus-visible,
.icon-btn:hover,
.icon-btn:focus-visible {
  outline: none;
  color: var(--text);
  border-color: rgba(191, 255, 0, 0.42);
  background: rgba(191, 255, 0, 0.08);
}

.primary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 18px;
  border-color: rgba(191, 255, 0, 0.74);
  background: var(--accent);
  color: #060806;
  font-weight: 860;
}

.primary-btn:hover,
.primary-btn:focus-visible {
  outline: none;
  transform: translateY(-1px);
  box-shadow: 0 0 28px rgba(191, 255, 0, 0.18);
}

.ghost-btn,
.danger-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 14px;
  font-weight: 760;
}

.danger-btn {
  border-color: rgba(255, 107, 95, 0.55);
  background: rgba(255, 107, 95, 0.12);
  color: #ffd8d4;
}

.danger-btn:hover,
.danger-btn:focus-visible {
  outline: none;
  border-color: rgba(255, 107, 95, 0.84);
  background: rgba(255, 107, 95, 0.2);
}

.icon-btn {
  width: 38px;
  padding: 0;
  color: var(--muted);
}

.app-main {
  width: min(1600px, 100%);
  margin: 0 auto;
  padding: clamp(18px, 2.2vw, 32px);
}

.app-main-results {
  width: min(1760px, 100%);
}

.workspace-frame-results .app-main-results {
  width: 100%;
  max-width: none;
  height: calc(100dvh - var(--workspace-topbar-height));
  min-height: 0;
  overflow: hidden;
  padding: 10px clamp(14px, 1.7vw, 24px) 14px;
}

.home-view {
  min-height: calc(100dvh - 74px);
  display: grid;
  align-items: center;
  padding: clamp(22px, 4.4vw, 52px) 0;
}

.home-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(300px, 0.58fr);
  gap: clamp(24px, 4vw, 64px);
  align-items: center;
}

.home-hero {
  max-width: 980px;
}

.home-brand-lockup {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-bottom: clamp(12px, 2vw, 20px);
}

.home-brand-mark {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(191, 255, 0, 0.72);
  border-radius: var(--radius);
  background: #050705;
  color: var(--accent);
  font-size: 0.88rem;
  font-weight: 900;
  box-shadow: 0 0 28px rgba(191, 255, 0, 0.12);
}

.home-brand-name {
  color: var(--text);
  font-size: clamp(1.6rem, 2.2vw, 2.35rem);
  font-weight: 860;
  line-height: 1;
}

.home-kicker,
.panel-label {
  margin: 0;
  color: var(--accent);
  font-size: 0.72rem;
  font-weight: 820;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.home-title {
  margin: 8px 0 0;
  max-width: 980px;
  color: var(--text);
  font-size: clamp(3.6rem, 5.85vw, 6rem);
  font-weight: 860;
  line-height: 0.94;
  letter-spacing: 0;
}

.home-copy {
  max-width: 620px;
  margin: 20px 0 0;
  color: var(--muted);
  font-size: clamp(1rem, 1.6vw, 1.18rem);
  line-height: 1.58;
}

.home-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.home-rule {
  max-width: 520px;
  margin-top: 12px;
  padding-left: 18px;
  border-left: 2px solid var(--accent);
  color: var(--text);
  font-size: 0.98rem;
  line-height: 1.5;
}

.home-explainer-card {
  justify-self: end;
  align-self: center;
  width: min(420px, 100%);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: clamp(18px, 2.4vw, 24px);
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.055), transparent 44%),
    var(--panel);
  box-shadow: var(--shadow);
}

.home-step-list {
  display: grid;
  gap: 18px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}

.home-step-list li {
  display: grid;
  gap: 5px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}

.home-step-list li:first-child {
  padding-top: 0;
  border-top: 0;
}

.home-step-list strong {
  color: var(--text);
  font-size: 0.98rem;
}

.home-step-list span {
  color: var(--muted);
  line-height: 1.55;
}

.page-stack {
  display: grid;
  gap: 18px;
}

.results-workspace-shell {
  height: 100%;
  min-height: 0;
  min-width: 0;
  max-width: 100%;
  grid-template-rows: minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
}

.page-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 6px;
}

.page-title {
  margin: 0;
  color: var(--text);
  font-size: clamp(2rem, 4.2vw, 4rem);
  line-height: 1;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.app-main-results .page-title {
  font-size: clamp(2rem, 3.2vw, 3.2rem);
}

.page-copy {
  max-width: 680px;
  margin: 10px 0 0;
  color: var(--muted);
  line-height: 1.6;
}

.panel {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
  box-shadow: var(--shadow);
}

.analysis-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
  gap: 18px;
  align-items: stretch;
}

.upload-panel,
.context-panel,
.settings-panel,
.beta-login-panel,
.founder-apply-form,
.empty-state,
.activity-panel {
  padding: clamp(18px, 3vw, 28px);
}

.beta-login-view {
  min-height: calc(100dvh - 90px);
  display: grid;
  place-items: center;
  padding: clamp(18px, 4vw, 42px);
}

.beta-login-shell {
  width: min(100%, 480px);
  display: grid;
  gap: 12px;
}

.beta-login-panel {
  display: grid;
  gap: 18px;
}

.beta-owner-recovery {
  display: grid;
  gap: 12px;
  padding: clamp(14px, 2.4vw, 18px);
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.04), transparent 70%),
    rgba(255, 255, 255, 0.018);
}

.beta-owner-recovery-toggle {
  justify-self: start;
}

.owner-recovery-form,
.owner-recovery-copy {
  display: grid;
  gap: 12px;
}

.owner-recovery-copy h2 {
  margin: 0;
  color: var(--text);
  font-size: 1rem;
}

.owner-recovery-copy p,
.owner-recovery-note {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.consent-wall {
  min-height: calc(100dvh - 126px);
  display: grid;
  align-items: center;
  padding: clamp(12px, 2vw, 24px) 0;
}

.consent-shell {
  width: min(980px, 100%);
  margin: 0 auto;
  display: grid;
  gap: 18px;
  padding: clamp(18px, 3vw, 30px);
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.06), rgba(191, 255, 0, 0.018) 42%, transparent),
    var(--panel);
}

.consent-hero {
  display: grid;
  gap: 10px;
}

.consent-hero .page-title {
  max-width: 820px;
  font-size: clamp(2.2rem, 4.6vw, 4.6rem);
}

.consent-authority-note {
  max-width: 760px;
  margin: 0;
  border-left: 2px solid rgba(191, 255, 0, 0.62);
  padding-left: 12px;
  color: var(--text);
  font-size: 0.95rem;
  line-height: 1.5;
}

.consent-version-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid rgba(191, 255, 0, 0.22);
  border-radius: var(--radius);
  padding: 12px 14px;
  background: rgba(191, 255, 0, 0.045);
}

.consent-version-row span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 760;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.consent-version-row strong {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--accent);
  font-size: 0.9rem;
  font-weight: 840;
}

.consent-component-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.consent-component-list li {
  min-width: 0;
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr);
  gap: 10px;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 12px;
  background: rgba(255, 255, 255, 0.032);
}

.consent-component-list li > span {
  width: 10px;
  height: 10px;
  margin-top: 5px;
  border: 1px solid rgba(191, 255, 0, 0.7);
  border-radius: 50%;
  background: rgba(191, 255, 0, 0.2);
  box-shadow: 0 0 18px rgba(191, 255, 0, 0.14);
}

.consent-component-list strong {
  color: var(--text);
  font-size: 0.92rem;
  line-height: 1.25;
}

.consent-component-list p,
.consent-boundary p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.48;
}

.consent-boundary {
  border: 1px solid rgba(191, 255, 0, 0.2);
  border-radius: var(--radius);
  padding: 14px;
  background: rgba(191, 255, 0, 0.04);
}

.consent-boundary strong {
  color: var(--text);
}

.consent-acknowledgement {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 12px;
  background: rgba(255, 255, 255, 0.035);
  color: var(--text);
  font-size: 0.92rem;
  font-weight: 760;
  line-height: 1.4;
}

.consent-acknowledgement input {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  flex: 0 0 auto;
  accent-color: var(--accent);
}

.consent-acknowledgement:focus-within {
  border-color: rgba(191, 255, 0, 0.58);
  box-shadow: 0 0 0 3px rgba(191, 255, 0, 0.09);
}

.consent-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
}

.settings-toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
}

.settings-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 9px 11px;
  color: var(--text);
  background: rgba(241, 238, 229, 0.035);
  font-size: 0.86rem;
  font-weight: 780;
}

.settings-toggle input {
  width: 18px;
  height: 18px;
  accent-color: var(--accent);
}

.form-field {
  display: grid;
  gap: 8px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 760;
}

.form-field input,
.form-field textarea,
.form-field select {
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 0 12px;
  background: #090b0a;
  color: var(--text);
  font: inherit;
}

.form-field textarea {
  min-height: 132px;
  resize: vertical;
  padding: 12px;
  line-height: 1.5;
}

.form-field input:focus-visible,
.form-field textarea:focus-visible,
.form-field select:focus-visible {
  outline: none;
  border-color: rgba(191, 255, 0, 0.58);
  box-shadow: 0 0 0 3px rgba(191, 255, 0, 0.1);
}

.founder-apply-view {
  min-height: calc(100dvh - 90px);
  display: grid;
  align-items: center;
  padding: clamp(18px, 4vw, 42px);
}

.founder-apply-layout {
  width: min(1180px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
  gap: 20px;
  align-items: stretch;
}

.founder-hero-panel,
.founder-explainer-panel {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.072), transparent 42%),
    #090b0a;
  box-shadow: var(--shadow);
}

.founder-hero-panel {
  min-height: 100%;
  display: grid;
  align-content: center;
  gap: 18px;
  padding: clamp(24px, 4.2vw, 48px);
}

.founder-hero-panel .page-title {
  max-width: 760px;
  font-size: clamp(2.7rem, 5.6vw, 5.7rem);
}

.founder-apply-form,
.founder-explainer-panel {
  display: grid;
  align-content: start;
  gap: 16px;
}

.founder-apply-form {
  background:
    linear-gradient(180deg, rgba(241, 238, 229, 0.035), transparent 52%),
    var(--panel);
}

.founder-apply-form h2 {
  margin: 6px 0 0;
  color: var(--text);
  font-size: clamp(1.55rem, 2.4vw, 2rem);
}

.founder-signal-grid,
.founder-status-grid {
  display: grid;
  gap: 10px;
}

.founder-signal-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 8px;
}

.founder-status-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 8px 0;
}

.founder-signal-grid div,
.founder-status-grid div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 14px;
  background: rgba(241, 238, 229, 0.035);
}

.founder-signal-grid strong,
.founder-status-grid strong {
  display: block;
  color: var(--text);
  font-size: 0.96rem;
  line-height: 1.25;
}

.founder-signal-grid span,
.founder-status-grid span {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.42;
}

.founder-status-grid span {
  margin-top: 0;
  color: var(--accent);
  font-size: 0.7rem;
  font-weight: 820;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.founder-status-grid strong {
  margin-top: 6px;
}

.founder-check-stack {
  display: grid;
  gap: 10px;
}

.founder-check {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 12px;
  background: rgba(241, 238, 229, 0.035);
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.45;
}

.founder-check input {
  width: 18px;
  height: 18px;
  margin: 1px 0 0;
  accent-color: var(--accent);
}

.founder-boundary-note {
  margin: 0;
  border-left: 2px solid var(--accent);
  padding-left: 14px;
  color: var(--muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

.founder-explainer-panel {
  padding: clamp(18px, 3vw, 28px);
}

.form-error {
  margin: 0;
  color: #ffd8d4;
  line-height: 1.5;
}

.upload-drop {
  min-height: 320px;
  display: grid;
  place-items: center;
  border: 1px dashed rgba(241, 238, 229, 0.2);
  border-radius: var(--radius);
  background: #090b0a;
  text-align: center;
}

.upload-drop.is-ready {
  border-color: rgba(191, 255, 0, 0.58);
  background: rgba(191, 255, 0, 0.055);
}

.upload-drop.is-drag-over {
  border-color: rgba(191, 255, 0, 0.86);
  background: rgba(191, 255, 0, 0.09);
  box-shadow: 0 0 0 1px rgba(191, 255, 0, 0.2), 0 18px 56px rgba(0, 0, 0, 0.34);
}

.upload-inner {
  display: grid;
  justify-items: center;
  gap: 14px;
  padding: 28px;
}

.upload-title,
.panel h2,
.panel h3 {
  margin: 0;
  color: var(--text);
  letter-spacing: 0;
}

.upload-title {
  font-size: clamp(1.55rem, 3vw, 2.4rem);
  line-height: 1.05;
}

.processing-panel {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 34px);
  align-items: center;
  min-height: 520px;
  padding: clamp(20px, 3vw, 34px);
  background:
    linear-gradient(135deg, rgba(191, 255, 0, 0.08), transparent 34%),
    linear-gradient(180deg, #111511, #060806);
}

.processing-visual {
  position: relative;
  overflow: hidden;
  min-height: 300px;
  border: 1px solid rgba(191, 255, 0, 0.2);
  border-radius: var(--radius);
  background:
    repeating-linear-gradient(90deg, rgba(191, 255, 0, 0.06) 0 1px, transparent 1px 18px),
    repeating-linear-gradient(0deg, rgba(241, 238, 229, 0.055) 0 1px, transparent 1px 20px),
    #050705;
  box-shadow:
    inset 0 0 42px rgba(191, 255, 0, 0.08),
    0 0 34px rgba(191, 255, 0, 0.06);
}

.processing-core,
.processing-ring {
  position: absolute;
  border: 1px solid rgba(191, 255, 0, 0.3);
  border-radius: var(--radius);
  box-shadow: 0 0 24px rgba(191, 255, 0, 0.08);
}

.processing-core {
  inset: 42% 24%;
  background: rgba(191, 255, 0, 0.08);
  animation: processing-pulse 1.8s ease-in-out infinite;
}

.processing-ring-one {
  inset: 26% 14%;
  opacity: 0.72;
}

.processing-ring-two {
  inset: 12% 7%;
  opacity: 0.42;
}

.processing-scan {
  position: absolute;
  inset: 0 auto 0 -28%;
  width: 28%;
  background: linear-gradient(90deg, transparent, rgba(191, 255, 0, 0.24), transparent);
  animation: processing-scan 2.45s linear infinite;
}

.processing-copy {
  display: grid;
  gap: 12px;
  align-content: center;
}

.processing-copy h2 {
  margin: 0;
  max-width: 680px;
  font-size: clamp(2rem, 4vw, 4.6rem);
  line-height: 0.98;
}

.processing-copy p {
  max-width: 560px;
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

.processing-known-state {
  width: fit-content;
  border: 1px solid rgba(191, 255, 0, 0.28);
  border-radius: var(--radius);
  padding: 8px 10px;
  color: var(--accent) !important;
  background: rgba(191, 255, 0, 0.08);
  font-weight: 820;
}

.analysis-cost-estimate {
  width: fit-content;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.analysis-cost-estimate span {
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 7px 9px;
  background: rgba(255, 255, 255, 0.035);
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 760;
}

.processing-rail {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
  margin: 6px 0 0;
  padding: 0;
  list-style: none;
}

.processing-step {
  min-width: 0;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 10px;
  background: rgba(0, 0, 0, 0.28);
  color: var(--muted);
}

.processing-dot {
  display: block;
  width: 11px;
  height: 11px;
  margin-bottom: 8px;
  border: 1px solid rgba(191, 255, 0, 0.48);
  border-radius: 50%;
  background: rgba(191, 255, 0, 0.12);
  animation: processing-dot 1.8s ease-in-out infinite;
}

.processing-step strong {
  display: block;
  color: var(--text);
  font-size: 0.76rem;
  line-height: 1.22;
}

.analysis-failure-card h2 {
  margin: 0;
}

.analysis-failure-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

@keyframes processing-scan {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(460%);
  }
}

@keyframes processing-pulse {
  0%,
  100% {
    opacity: 0.5;
    box-shadow: 0 0 18px rgba(191, 255, 0, 0.08);
  }
  50% {
    opacity: 1;
    box-shadow: 0 0 34px rgba(191, 255, 0, 0.2);
  }
}

@keyframes processing-dot {
  0%,
  100% {
    opacity: 0.45;
  }
  50% {
    opacity: 1;
  }
}

.muted {
  color: var(--muted);
}

.file-name {
  margin: 0;
  color: var(--text);
  font-weight: 760;
}

.field-stack {
  display: grid;
  gap: 14px;
}

.field-label {
  display: grid;
  gap: 8px;
  color: var(--text);
  font-size: 0.82rem;
  font-weight: 780;
}

.declared-context-block {
  display: grid;
  gap: 14px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}

.declared-context-head {
  display: grid;
  gap: 6px;
}

.declared-context-head h3 {
  margin: 0;
  color: var(--text);
  font-size: 1rem;
  line-height: 1.25;
}

.declared-context-head p {
  margin: 0;
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.5;
}

.declared-context-fields {
  display: grid;
  gap: 12px;
}

.declared-context-fields select {
  width: 100%;
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 0 12px;
  background: #080908;
  color: var(--text);
  font: inherit;
}

.declared-context-secondary {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
}

.declared-context-secondary legend {
  padding: 0;
  color: var(--text);
  font-size: 0.82rem;
  font-weight: 780;
}

.declared-context-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.declared-context-check,
.declared-context-toggle {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 8px 10px;
  color: var(--text);
  background: rgba(241, 238, 229, 0.035);
  font-size: 0.84rem;
  font-weight: 720;
}

.declared-context-check input,
.declared-context-toggle input {
  width: 17px;
  height: 17px;
  accent-color: var(--accent);
}

.declared-context-fields select:focus-visible,
.declared-context-check:focus-within,
.declared-context-toggle:focus-within {
  outline: none;
  border-color: rgba(191, 255, 0, 0.58);
  box-shadow: 0 0 0 3px rgba(191, 255, 0, 0.09);
}

.text-input {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #080908;
  color: var(--text);
  padding: 12px 13px;
  outline: none;
  resize: vertical;
}

.text-input:focus {
  border-color: rgba(191, 255, 0, 0.58);
  box-shadow: 0 0 0 3px rgba(191, 255, 0, 0.09);
}

.status-copy {
  min-height: 24px;
  margin: 10px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.status-copy.is-error {
  color: #ffb7b1;
}

.results-grid {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.92fr);
  gap: clamp(14px, 1.5vw, 22px);
  align-items: stretch;
  overflow: hidden;
}

.results-evidence-stack {
  max-width: 100%;
  min-height: 0;
  height: 100%;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  gap: 10px;
  overflow: hidden;
  align-self: stretch;
  min-width: 0;
}

.results-evidence-stack .evidence-anchor {
  position: static;
  top: auto;
}

.results-evidence-tabs {
  min-height: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  padding: 0;
}

.declared-context-card {
  display: grid;
  gap: 10px;
  padding: 14px;
  overflow: hidden;
  border-color: rgba(191, 255, 0, 0.2);
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.055), rgba(191, 255, 0, 0.015)),
    #070907;
}

.declared-context-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.declared-context-head h2 {
  margin: 2px 0 0;
  font-size: 1rem;
  line-height: 1.15;
}

.declared-context-authority {
  flex: 0 0 auto;
  border: 1px solid rgba(191, 255, 0, 0.28);
  border-radius: 7px;
  padding: 5px 7px;
  color: var(--accent);
  background: rgba(191, 255, 0, 0.055);
  font-size: 0.72rem;
  font-weight: 820;
}

.declared-context-copy,
.declared-context-warning,
.declared-context-boundary,
.declared-context-note {
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.declared-context-note {
  border-left: 2px solid rgba(191, 255, 0, 0.32);
  padding-left: 10px;
  color: var(--text);
}

.declared-context-warning {
  color: #f1eee5;
}

.declared-context-human-status {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(191, 255, 0, 0.16);
  border-radius: 7px;
  background: rgba(191, 255, 0, 0.035);
  padding: 9px;
}

.declared-context-human-status div {
  display: grid;
  gap: 3px;
}

.declared-context-human-status span {
  color: var(--muted-2);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
}

.declared-context-human-status strong {
  color: var(--text);
  font-size: 0.8rem;
  font-weight: 800;
  line-height: 1.25;
}

.declared-context-human-status p {
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.declared-context-human-controls {
  display: grid;
  gap: 9px;
  border: 1px solid rgba(191, 255, 0, 0.18);
  border-radius: 7px;
  background: rgba(191, 255, 0, 0.035);
  padding: 9px;
}

.declared-context-human-status-heading {
  display: grid;
  gap: 3px;
}

.declared-context-human-status-heading span {
  color: var(--muted-2);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
}

.declared-context-human-status-heading strong {
  color: var(--text);
  font-size: 0.8rem;
  font-weight: 800;
  line-height: 1.25;
}

.declared-context-human-controls p,
.declared-context-control-error,
.declared-context-reference-future {
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.declared-context-control-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.declared-context-choice {
  min-width: 0;
  min-height: 82px;
  display: grid;
  gap: 5px;
  align-content: start;
  text-align: left;
  border: 1px solid rgba(241, 238, 229, 0.11);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.026);
  color: var(--text);
  padding: 8px;
  cursor: pointer;
}

.declared-context-choice:hover,
.declared-context-choice:focus-visible {
  border-color: rgba(191, 255, 0, 0.36);
  background: rgba(191, 255, 0, 0.052);
  outline: none;
}

.declared-context-choice.is-active {
  border-color: rgba(191, 255, 0, 0.48);
  background: rgba(191, 255, 0, 0.075);
}

.declared-context-choice:disabled {
  cursor: wait;
  opacity: 0.68;
}

.declared-context-choice span {
  color: var(--text);
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.25;
}

.declared-context-choice small {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
}

.declared-context-control-error {
  color: #ffb4a8;
}

.declared-context-reference-future {
  display: grid;
  gap: 2px;
  border-top: 1px solid rgba(241, 238, 229, 0.08);
  padding-top: 8px;
}

.declared-context-reference-future strong {
  color: var(--text);
  font-size: 0.76rem;
}

.declared-context-grid,
.declared-context-claims {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  margin: 0;
}

.declared-context-grid div,
.declared-context-claims div {
  min-width: 0;
  border: 1px solid rgba(241, 238, 229, 0.08);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.025);
  padding: 8px;
}

.declared-context-grid span,
.declared-context-claims dt {
  display: block;
  margin: 0 0 4px;
  color: var(--muted-2);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0;
}

.declared-context-grid strong,
.declared-context-claims dd {
  display: block;
  margin: 0;
  color: var(--text);
  font-size: 0.78rem;
  font-weight: 760;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.results-evidence-tab-list {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
  padding: 8px;
  scrollbar-width: thin;
}

.results-evidence-tab {
  flex: 0 0 auto;
  min-height: 32px;
  border: 1px solid rgba(241, 238, 229, 0.1);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.025);
  color: var(--muted);
  padding: 0 11px;
  font: inherit;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0;
  white-space: nowrap;
}

.results-evidence-tab:hover,
.results-evidence-tab:focus-visible {
  outline: none;
  border-color: rgba(191, 255, 0, 0.28);
  color: var(--text);
}

.results-evidence-tab.is-active,
.results-evidence-tab[aria-selected="true"] {
  border-color: rgba(191, 255, 0, 0.42);
  background: rgba(191, 255, 0, 0.1);
  color: var(--accent);
  box-shadow: inset 0 1px 0 rgba(244, 241, 232, 0.04);
}

.results-evidence-tab-panel {
  min-height: 0;
  overflow: auto;
  padding: 10px;
}

.evidence-structure-panel {
  display: grid;
  gap: 10px;
  min-width: 0;
  min-height: 0;
  align-content: start;
}

.evidence-anchor {
  position: static;
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 10px;
}

.visual-pro-readiness-card {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  display: grid;
  gap: 4px;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 9px 10px;
  background: #070907;
  color: var(--muted);
  overflow: hidden;
  overflow-wrap: anywhere;
}

.visual-pro-readiness-main {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.visual-pro-readiness-main strong {
  min-width: 0;
  color: var(--text);
  font-size: 0.86rem;
  font-weight: 820;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.visual-pro-readiness-card p {
  min-width: 0;
  margin: 0;
  color: var(--muted);
  font-size: 0.76rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.visual-pro-readiness-action-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
  padding-top: 2px;
}

.visual-pro-readiness-status {
  max-width: 100%;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.visual-pro-readiness-status.is-error {
  color: #ffb4a8;
}

.visual-pro-readiness-dot {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--muted-2);
  box-shadow: 0 0 0 1px rgba(241, 238, 229, 0.12);
}

.visual-pro-readiness-card.is-prepared {
  border-color: rgba(191, 255, 0, 0.3);
  background: linear-gradient(180deg, rgba(191, 255, 0, 0.075), rgba(191, 255, 0, 0.025)), #070907;
}

.visual-pro-readiness-card.is-prepared .visual-pro-readiness-dot {
  background: var(--accent);
  box-shadow: 0 0 14px rgba(191, 255, 0, 0.42);
}

.visual-pro-readiness-card.is-partial {
  border-color: rgba(241, 238, 229, 0.2);
  background: #0c0e0c;
}

.visual-pro-readiness-card.is-partial .visual-pro-readiness-dot {
  background: #d9d5c8;
}

.visual-pro-readiness-card.is-unavailable .visual-pro-readiness-dot,
.visual-pro-readiness-card.is-not-prepared .visual-pro-readiness-dot {
  background: var(--muted-2);
}

.evidence-detail-panel {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 4px;
}

.evidence-detail-head h2 {
  margin: 3px 0 0;
  color: var(--text);
  font-size: 1rem;
  letter-spacing: 0;
}

.text-evidence-panel {
  display: grid;
  gap: 14px;
  padding: 4px;
}

.text-evidence-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
}

.text-evidence-head h2 {
  margin: 3px 0 0;
  color: var(--text);
  font-size: 1rem;
  letter-spacing: 0;
}

.text-evidence-status {
  flex: 0 0 auto;
  border: 1px solid rgba(191, 255, 0, 0.25);
  border-radius: 999px;
  padding: 5px 9px;
  color: var(--text);
  font-size: 0.75rem;
}

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

.text-evidence-grid div,
.text-evidence-source-list li {
  min-width: 0;
  border: 1px solid rgba(241, 238, 229, 0.1);
  border-radius: var(--radius);
  padding: 9px;
  background: rgba(255, 255, 255, 0.025);
}

.text-evidence-grid dt,
.text-evidence-source-list span,
.text-evidence-attach span {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
}

.text-evidence-grid dd {
  margin: 4px 0 0;
  color: var(--text);
  font-size: 0.9rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.text-lane-status {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(191, 255, 0, 0.14);
  border-radius: var(--radius);
  padding: 11px;
  background: rgba(191, 255, 0, 0.035);
}

.text-lane-status-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.text-lane-status-head h3 {
  margin: 3px 0 0;
  color: var(--text);
  font-size: 0.94rem;
  line-height: 1.2;
}

.text-lane-status-head > span {
  flex: 0 0 auto;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: 7px;
  padding: 5px 7px;
  color: var(--muted);
  background: rgba(255, 255, 255, 0.025);
  font-size: 0.7rem;
  font-weight: 820;
}

.text-lane-status-list {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.text-lane-status-list li {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  border: 1px solid rgba(241, 238, 229, 0.08);
  border-radius: 7px;
  padding: 9px;
  background: rgba(0, 0, 0, 0.18);
}

.text-lane-status-list strong {
  display: block;
  color: var(--text);
  font-size: 0.8rem;
  font-weight: 820;
  line-height: 1.25;
}

.text-lane-status-list p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 0.75rem;
  line-height: 1.4;
}

.text-lane-pill {
  justify-self: end;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: 999px;
  padding: 4px 7px;
  color: var(--muted);
  background: rgba(255, 255, 255, 0.025);
  font-size: 0.68rem;
  font-weight: 820;
  white-space: nowrap;
}

.text-lane-pill.is-available {
  border-color: rgba(191, 255, 0, 0.34);
  color: var(--accent);
  background: rgba(191, 255, 0, 0.08);
}

.text-lane-pill.is-partial {
  border-color: rgba(241, 238, 229, 0.2);
  color: var(--text);
}

.text-lane-pill.is-inactive,
.text-lane-pill.is-blocked,
.text-lane-pill.is-unavailable {
  color: var(--muted);
}

.text-evidence-source-list {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.text-evidence-source-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.text-evidence-source-list strong {
  color: var(--text);
  font-size: 0.78rem;
}

.text-evidence-boundary {
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.5;
}

.text-evidence-attach {
  display: grid;
  grid-template-columns: minmax(120px, 0.7fr) minmax(180px, 1fr) auto;
  gap: 8px;
  align-items: end;
  border-top: 1px solid rgba(241, 238, 229, 0.1);
  padding-top: 12px;
}

.text-evidence-attach label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.text-evidence-attach select,
.text-evidence-attach input {
  width: 100%;
  min-width: 0;
  min-height: 36px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #070807;
  color: var(--text);
  font: inherit;
}

.text-evidence-attach select {
  padding: 0 10px;
}

.text-evidence-attach input {
  padding: 7px 8px;
}

.video-frame {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #050605;
  aspect-ratio: 16 / 9;
  min-height: 0;
}

.video-frame video {
  display: block;
  width: 100%;
  height: 100%;
  background: #000;
  object-fit: contain;
}

.preview-unavailable {
  height: 100%;
  display: grid;
  place-content: center;
  gap: 8px;
  padding: 24px;
  color: var(--muted);
  text-align: center;
}

.preview-unavailable strong {
  color: var(--text);
  font-size: 1.15rem;
}

.run-meta-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.run-meta-list li {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid var(--line);
  padding: 8px 0;
  color: var(--muted);
  font-size: 0.84rem;
  min-width: 0;
}

.run-meta-list strong {
  color: var(--text);
  font-weight: 760;
  text-align: right;
  min-width: 0;
  overflow-wrap: anywhere;
}

.structure-cardiogram {
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto auto auto auto auto;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgba(17, 19, 18, 0.98), rgba(8, 9, 8, 0.98));
  padding: 12px;
  box-shadow: inset 0 1px 0 rgba(244, 241, 232, 0.04);
}

.cardiogram-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 0;
}

.cardiogram-head h3 {
  margin: 2px 0 0;
  font-size: 1rem;
  line-height: 1.15;
}

.cardiogram-head span {
  color: var(--muted);
  font-size: 0.75rem;
  white-space: nowrap;
}

.cardiogram-stage-labels {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 6px;
  margin-bottom: 0;
  text-transform: uppercase;
  letter-spacing: 0;
}

.cardiogram-stage-btn {
  min-height: 24px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--muted-2);
  font-size: 0.68rem;
  font-weight: 760;
  text-transform: uppercase;
}

.cardiogram-stage-btn:hover,
.cardiogram-stage-btn:focus-visible,
.cardiogram-stage-btn.is-active {
  outline: none;
  color: var(--accent);
  background: rgba(191, 255, 0, 0.07);
}

.cardiogram-stage-btn.is-active {
  box-shadow: 0 0 18px rgba(191, 255, 0, 0.1);
}

.cardiogram-stage-btn[aria-pressed="true"] {
  color: var(--accent);
}

.cardiogram-chart {
  position: relative;
  overflow: hidden;
  height: clamp(148px, 16dvh, 184px);
  min-height: 0;
  max-height: 184px;
  border: 1px solid rgba(191, 255, 0, 0.18);
  border-radius: var(--radius);
  background:
    radial-gradient(circle at 64% 18%, rgba(191, 255, 0, 0.12), transparent 24%),
    repeating-linear-gradient(90deg, rgba(191, 255, 0, 0.075) 0 1px, transparent 1px 12px),
    repeating-linear-gradient(0deg, rgba(157, 163, 160, 0.08) 0 1px, transparent 1px 11px),
    linear-gradient(180deg, #101410 0%, #050705 100%),
    #050605;
  padding: 8px 10px 18px;
  box-shadow:
    inset 0 1px 0 rgba(244, 241, 232, 0.08),
    inset 0 -24px 38px rgba(0, 0, 0, 0.62),
    0 0 0 1px rgba(0, 0, 0, 0.28);
  cursor: pointer;
}

.cardiogram-chart::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(244, 241, 232, 0.05), transparent 24%),
    linear-gradient(90deg, rgba(0, 0, 0, 0.36), transparent 13% 87%, rgba(0, 0, 0, 0.46));
  pointer-events: none;
}

.cardiogram-chart:hover,
.cardiogram-chart:focus-visible {
  outline: none;
  border-color: rgba(191, 255, 0, 0.42);
  box-shadow:
    inset 0 1px 0 rgba(244, 241, 232, 0.08),
    inset 0 -24px 38px rgba(0, 0, 0, 0.62),
    0 0 0 3px rgba(191, 255, 0, 0.08);
}

.cardiogram-chart svg {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: calc(100% - 6px);
  overflow: hidden;
}

.cardiogram-vignette {
  fill: rgba(2, 5, 2, 0.12);
}

.cardiogram-stage-highlight {
  fill: rgba(191, 255, 0, 0.105);
  stroke: rgba(191, 255, 0, 0.34);
  stroke-width: 0.34;
  vector-effect: non-scaling-stroke;
}

.cardiogram-horizon {
  stroke: rgba(191, 255, 0, 0.22);
  stroke-width: 0.35;
  vector-effect: non-scaling-stroke;
}

.cardiogram-gridline {
  stroke: rgba(157, 163, 160, 0.08);
  stroke-width: 0.24;
  vector-effect: non-scaling-stroke;
}

.cardiogram-bar {
  fill: url(#cardioBar);
  opacity: 0.76;
  shape-rendering: crispEdges;
}

.cardiogram-area {
  fill: url(#cardioArea);
  opacity: 0.72;
}

.cardiogram-line-glow {
  fill: none;
  stroke: rgba(37, 255, 47, 0.5);
  stroke-width: 4.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: url(#cardioSoftGlow);
  vector-effect: non-scaling-stroke;
}

.cardiogram-line {
  fill: none;
  stroke: url(#cardioLine);
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.cardiogram-playhead {
  stroke: rgba(191, 255, 0, 0.86);
  stroke-width: 0.34;
  vector-effect: non-scaling-stroke;
}

.cardiogram-time-axis {
  position: absolute;
  z-index: 2;
  left: 10px;
  right: 10px;
  bottom: 4px;
  height: 14px;
  pointer-events: none;
}

.cardiogram-time-axis span {
  position: absolute;
  bottom: 0;
  transform: translateX(-50%);
  color: rgba(157, 163, 160, 0.86);
  font-size: 0.64rem;
  line-height: 1;
  white-space: nowrap;
}

.cardiogram-time-axis .is-first {
  transform: translateX(0);
}

.cardiogram-time-axis .is-last {
  transform: translateX(-100%);
}

.pulse-rail {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(191, 255, 0, 0.13);
  border-radius: 7px;
  padding: 7px 0 6px;
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.035), rgba(255, 255, 255, 0.018)),
    #070907;
  box-shadow: inset 0 1px 0 rgba(244, 241, 232, 0.04);
}

.pulse-rail-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 6px;
  padding: 0 10px;
}

.pulse-rail-head span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--accent);
  font-size: 0.64rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.pulse-rail-head small,
.pulse-rail-selected-copy {
  color: var(--muted);
  font-size: 0.62rem;
  line-height: 1.1;
}

.pulse-rail-head small {
  white-space: nowrap;
}

.pulse-rail-track {
  position: relative;
  height: 26px;
  margin: 0 10px;
  overflow: hidden;
  border-radius: 5px;
  background:
    linear-gradient(90deg, rgba(191, 255, 0, 0.18), rgba(191, 255, 0, 0.05)),
    linear-gradient(180deg, rgba(255, 255, 255, 0.028), rgba(0, 0, 0, 0.22));
}

.pulse-rail-track::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  background: rgba(191, 255, 0, 0.2);
  transform: translateY(-50%);
}

.pulse-rail-tick,
.pulse-rail-selected {
  position: absolute;
  top: 50%;
  width: 1px;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.pulse-rail-tick.is-half {
  height: 10px;
  background: rgba(191, 255, 0, 0.22);
}

.pulse-rail-tick.is-full {
  height: 20px;
  background: rgba(191, 255, 0, 0.62);
  box-shadow: 0 0 6px rgba(191, 255, 0, 0.16);
}

.pulse-rail-selected {
  z-index: 2;
  height: 26px;
  width: 2px;
  background: var(--accent);
  box-shadow: 0 0 12px rgba(191, 255, 0, 0.72);
}

.pulse-rail-selected-copy {
  margin: -1px 10px 0;
  color: rgba(241, 238, 229, 0.72);
}

.pulse-rail.is-unavailable {
  border-color: rgba(241, 238, 229, 0.1);
  padding: 8px 0;
  background: rgba(255, 255, 255, 0.012);
  box-shadow: inset 0 1px 0 rgba(244, 241, 232, 0.025);
}

.pulse-rail.is-unavailable .pulse-rail-head span {
  color: var(--muted);
}

.pulse-rail.is-unavailable .pulse-rail-head small {
  color: rgba(157, 163, 160, 0.82);
}

.cardiogram-moments {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(58px, 1fr));
  gap: 6px;
  margin-top: 0;
}

.cardiogram-moment-btn {
  min-height: 40px;
  display: grid;
  place-items: center;
  gap: 2px;
  border: 1px solid rgba(241, 238, 229, 0.13);
  border-radius: var(--radius);
  background: #080908;
  color: var(--text);
}

.cardiogram-moment-btn:hover,
.cardiogram-moment-btn:focus-visible,
.cardiogram-moment-btn.is-active {
  outline: none;
  border-color: rgba(191, 255, 0, 0.58);
  box-shadow: 0 0 0 3px rgba(191, 255, 0, 0.08);
}

.cardiogram-moment-btn.is-active {
  background: rgba(191, 255, 0, 0.08);
  color: var(--accent);
}

.cardiogram-moment-btn span {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--accent);
  color: #050605;
  font-size: 0.78rem;
  font-weight: 900;
}

.cardiogram-moment-btn small {
  color: var(--muted);
  font-size: 0.68rem;
}

.structure-selected-moment-panel {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) auto minmax(0, 1.15fr);
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 10px;
  background: rgba(255, 255, 255, 0.026);
}

.structure-selected-moment-panel h3,
.structure-selected-moment-panel p,
.structure-selected-moment-panel dl {
  margin: 0;
}

.structure-selected-moment-panel h3 {
  margin-top: 2px;
  color: var(--text);
  font-size: 0.92rem;
  letter-spacing: 0;
}

.structure-selected-moment-panel p {
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.structure-selected-moment-panel dl {
  display: grid;
  gap: 4px;
}

.structure-selected-moment-panel dt {
  color: var(--muted-2);
  font-size: 0.66rem;
  font-weight: 780;
  text-transform: uppercase;
}

.structure-selected-moment-panel dd {
  margin: 2px 0 0;
  color: var(--accent);
  font-size: 0.9rem;
  font-weight: 850;
}

.structure-selected-moment-panel.is-selected {
  border-color: rgba(191, 255, 0, 0.22);
  background: rgba(191, 255, 0, 0.045);
}

.wiz-panel {
  max-width: 100%;
  min-height: calc(100dvh - 138px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  align-self: stretch;
  height: 100%;
  min-width: 0;
  overflow: hidden;
}

.results-grid .wiz-panel {
  min-height: 0;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
}

.results-grid .wiz-panel .wiz-head {
  grid-row: 1;
}

.results-grid .wiz-panel .usage-meter {
  grid-row: 2;
}

.results-grid .wiz-panel .conversation-scroll {
  grid-row: 3;
}

.results-grid .wiz-panel .composer {
  grid-row: 4;
}

.general-wiz-view {
  max-width: 1280px;
  margin-inline: auto;
  width: 100%;
}

.general-wiz-view.has-messages {
  gap: 12px;
}

.general-wiz-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
}

.general-wiz-panel {
  min-height: calc(100dvh - 260px);
}

.general-wiz-panel.has-messages {
  min-height: calc(100dvh - 138px);
}

.general-wiz-panel .conversation-scroll {
  min-height: 420px;
  max-height: calc(100dvh - 430px);
}

.general-wiz-panel.has-messages .conversation-scroll {
  min-height: 520px;
  max-height: calc(100dvh - 285px);
}

.general-wiz-panel.has-messages .wiz-head {
  padding-block: 14px 10px;
}

.general-wiz-panel.has-messages .wiz-title {
  font-size: clamp(1.08rem, 1.4vw, 1.35rem);
  overflow-wrap: anywhere;
}

.wiz-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 18px 10px;
  border-bottom: 1px solid var(--line);
}

.results-grid .wiz-panel .wiz-head {
  gap: 10px;
  padding: 10px 14px 8px;
}

.wiz-actions {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.results-grid .wiz-panel .wiz-actions {
  align-items: center;
  gap: 8px;
}

.wiz-title {
  margin: 0;
  color: var(--text);
  font-size: clamp(1.4rem, 2vw, 2rem);
}

.results-grid .wiz-panel .wiz-title {
  font-size: clamp(1.08rem, 1.4vw, 1.35rem);
  line-height: 1.05;
}

.wiz-mode {
  color: var(--accent);
  font-size: 0.78rem;
  font-weight: 820;
}

.wiz-mode-selector {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #080908;
}

.mode-btn,
.wiz-mode-option {
  min-height: 32px;
  border: 0;
  border-radius: calc(var(--radius) - 2px);
  padding: 0 10px;
  background: transparent;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 780;
}

.mode-btn.is-active,
.wiz-mode-option.is-active,
.mode-btn:hover,
.mode-btn:focus-visible,
.wiz-mode-option:hover,
.wiz-mode-option:focus-visible {
  outline: none;
  background: rgba(191, 255, 0, 0.12);
  color: var(--text);
}

.usage-meter {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 18px 12px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 760;
}

.usage-meter span {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 0 10px;
  background: rgba(8, 9, 8, 0.66);
}

.results-grid .wiz-panel .usage-meter {
  padding: 0 14px 8px;
}

.wiz-mode-control {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.wiz-mode-option {
  white-space: nowrap;
}

.wiz-mode-billing-copy,
.message-billing-notice,
.message-mode {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 760;
}

.message-billing-notice {
  color: var(--accent);
}

.speech-control-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.speech-speed-control {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #080908;
}

.speech-voice-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 780;
}

.speech-voice-select {
  max-width: min(260px, 70vw);
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #080908;
  color: var(--text);
  padding: 0 10px;
  outline: none;
}

.speech-voice-select:focus {
  border-color: rgba(191, 255, 0, 0.58);
  box-shadow: 0 0 0 3px rgba(191, 255, 0, 0.09);
}

.run-materials-control {
  position: relative;
}

.run-materials-control summary {
  min-height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 0 12px;
  background: #080908;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 780;
  list-style: none;
  cursor: pointer;
}

.results-grid .wiz-panel .run-materials-control summary {
  min-height: 34px;
  padding: 0 10px;
  font-size: 0.76rem;
}

.run-materials-control summary::-webkit-details-marker {
  display: none;
}

.run-materials-control[open] summary,
.run-materials-control summary:hover,
.run-materials-control summary:focus-visible {
  outline: none;
  border-color: rgba(191, 255, 0, 0.4);
  color: var(--text);
}

.run-materials-control .download-card-grid {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 6;
  width: min(320px, 80vw);
  padding: 10px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: #090b0a;
  box-shadow: var(--shadow);
}

.conversation-scroll {
  min-height: 360px;
  max-height: calc(100dvh - 308px);
  overflow: auto;
  padding: 18px;
}

.results-grid .wiz-panel .conversation-scroll {
  min-height: 0;
  max-height: none;
  padding: 12px 14px;
}

.conversation-empty {
  min-height: 260px;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 8px;
  padding: 24px;
  border: 1px dashed rgba(241, 238, 229, 0.16);
  border-radius: var(--radius);
  background: rgba(8, 9, 8, 0.56);
  text-align: center;
}

.conversation-empty p {
  margin: 0;
  color: var(--text);
  font-weight: 780;
}

.conversation-empty span {
  max-width: 340px;
  color: var(--muted);
  line-height: 1.45;
}

.prompt-chip-row {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  max-width: 560px;
  margin-top: 14px;
}

.prompt-chip {
  min-height: 34px;
  border: 1px solid rgba(241, 238, 229, 0.14);
  border-radius: var(--radius);
  padding: 0 10px;
  background: rgba(191, 255, 0, 0.07);
  color: var(--text);
  font-size: 0.78rem;
  font-weight: 760;
  cursor: pointer;
}

.prompt-chip:hover,
.prompt-chip:focus-visible {
  outline: none;
  border-color: rgba(191, 255, 0, 0.44);
  background: rgba(191, 255, 0, 0.13);
}

.conversation-thread {
  display: grid;
  gap: 14px;
}

.message {
  max-width: 86%;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 14px;
  background: #090b0a;
}

.message-user {
  justify-self: end;
  background: rgba(191, 255, 0, 0.08);
  border-color: rgba(191, 255, 0, 0.28);
}

.message-assistant {
  justify-self: start;
  background: #111312;
}

.message-label {
  margin: 0 0 8px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 820;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.message-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 12px;
}

.quote-confirmation-card {
  display: grid;
  gap: 12px;
}

.analysis-quote-panel {
  align-content: start;
}

.analysis-quote-card h2 {
  margin: 0;
  color: var(--text);
  font-size: 1.25rem;
}

.quote-safe-message,
.quote-duplicate-copy,
.quote-context-copy,
.analysis-quote-warning {
  margin: 0;
  color: var(--text);
  line-height: 1.45;
}

.quote-duplicate-copy,
.quote-context-copy,
.analysis-quote-warning {
  color: var(--muted);
}

.quote-meter-list {
  display: grid;
  gap: 8px;
  margin: 0;
}

.quote-meter-list div {
  display: grid;
  grid-template-columns: minmax(110px, auto) minmax(0, 1fr);
  gap: 10px;
  align-items: baseline;
}

.quote-meter-list dt {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 820;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.quote-meter-list dd {
  margin: 0;
  color: var(--text);
  overflow-wrap: anywhere;
}

.quote-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.markdown {
  display: grid;
  gap: 10px;
  color: var(--text);
  line-height: 1.55;
}

.markdown p,
.markdown ul,
.markdown ol,
.markdown h2,
.markdown h3,
.markdown h4 {
  margin: 0;
}

.markdown h2,
.markdown h3,
.markdown h4 {
  font-size: 1rem;
  color: var(--text);
}

.markdown ul,
.markdown ol {
  padding-left: 1.2rem;
}

.message-assistant .markdown {
  display: block;
  max-width: min(100%, 74ch);
  line-height: 1.68;
}

.message-assistant .markdown p {
  margin: 0 0 14px;
}

.message-assistant .markdown h2 {
  margin: 22px 0 12px;
  padding: 8px 11px 8px 13px;
  border-left: 3px solid rgba(191, 255, 0, 0.82);
  border-top: 1px solid rgba(191, 255, 0, 0.2);
  border-bottom: 1px solid rgba(191, 255, 0, 0.14);
  border-radius: 7px;
  background: rgba(191, 255, 0, 0.055);
  color: var(--accent);
  font-size: 0.82rem;
  font-weight: 860;
  letter-spacing: 0.08em;
  line-height: 1.25;
  text-transform: uppercase;
}

.message-assistant .markdown h3 {
  margin: 18px 0 10px;
  padding: 0 0 7px 10px;
  border-left: 2px solid rgba(191, 255, 0, 0.62);
  border-bottom: 1px solid rgba(191, 255, 0, 0.16);
  color: #dfff82;
  font-size: 0.9rem;
  font-weight: 820;
  letter-spacing: 0.04em;
  line-height: 1.3;
}

.message-assistant .markdown h2:first-child,
.message-assistant .markdown h3:first-child {
  margin-top: 0;
}

.message-assistant .markdown ul,
.message-assistant .markdown ol {
  margin: 4px 0 16px;
  padding-left: 1.35rem;
}

.message-assistant .markdown li {
  margin: 0 0 8px;
  padding-left: 2px;
}

.message-assistant .markdown li:last-child {
  margin-bottom: 0;
}

.message-assistant .markdown strong {
  color: var(--text);
  font-weight: 860;
}

.message-assistant .markdown > :last-child {
  margin-bottom: 0;
}

.composer {
  position: relative;
  display: grid;
  gap: 8px;
  padding: 10px;
  border-top: 1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.035), transparent 70%),
    rgba(255, 255, 255, 0.018);
}

.composer-toolbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.composer-tools-drawer {
  position: relative;
}

.composer-tools-drawer summary {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 0;
  background: #080908;
  color: var(--muted);
  font-size: 1.05rem;
  font-weight: 820;
  list-style: none;
  cursor: pointer;
}

.composer-tools-drawer summary::-webkit-details-marker {
  display: none;
}

.composer-tools-drawer:not([open]) .composer-tools-menu {
  display: none;
}

.composer-tools-drawer[open] summary,
.composer-tools-drawer summary:hover,
.composer-tools-drawer summary:focus-visible {
  outline: none;
  border-color: rgba(191, 255, 0, 0.4);
  color: var(--text);
  background: rgba(191, 255, 0, 0.08);
}

.composer-tools-menu {
  position: absolute;
  left: 0;
  right: auto;
  bottom: calc(100% + 8px);
  z-index: 8;
  width: min(340px, 76vw);
  max-height: min(48dvh, 420px);
  display: grid;
  gap: 10px;
  overflow: auto;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  padding: 10px;
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.035), transparent 58%),
    #090b0a;
  box-shadow: var(--shadow);
}

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

.composer-tool-action {
  min-width: 0;
  min-height: 44px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(241, 238, 229, 0.11);
  border-radius: var(--radius);
  padding: 7px;
  background: rgba(255, 255, 255, 0.028);
  color: var(--text);
  text-align: left;
}

.composer-tool-action:hover,
.composer-tool-action:focus-visible {
  outline: none;
  border-color: rgba(191, 255, 0, 0.38);
  background: rgba(191, 255, 0, 0.075);
}

.composer-tool-action.is-journey {
  border-color: rgba(191, 255, 0, 0.18);
  background: rgba(191, 255, 0, 0.045);
}

.composer-tool-icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(191, 255, 0, 0.22);
  border-radius: var(--radius);
  color: var(--accent);
  background: rgba(191, 255, 0, 0.065);
  font-size: 0.72rem;
  font-weight: 900;
}

.composer-tool-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.composer-tool-copy span,
.composer-tool-copy small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.composer-tool-copy span {
  font-size: 0.82rem;
  font-weight: 790;
}

.composer-tool-copy small {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 650;
}

.composer-tool-footer {
  display: grid;
  gap: 8px;
  padding-top: 8px;
  border-top: 1px solid rgba(241, 238, 229, 0.1);
}

.composer-text-reference-panel {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(241, 238, 229, 0.1);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.025);
}

.composer-text-reference-copy {
  display: grid;
  gap: 3px;
}

.composer-text-reference-copy strong {
  color: var(--text);
  font-size: 0.84rem;
}

.composer-text-reference-copy span,
.composer-text-reference-type span,
.composer-text-reference-input span {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.35;
}

.composer-text-reference-type,
.composer-text-reference-input {
  display: grid;
  gap: 5px;
}

.composer-text-reference-type select,
.composer-text-reference-input textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #070807;
  color: var(--text);
  font: inherit;
}

.composer-text-reference-type select {
  min-height: 36px;
  padding: 0 10px;
}

.composer-text-reference-input textarea {
  min-height: 82px;
  max-height: 150px;
  padding: 10px;
  resize: vertical;
}

.composer-reference-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.composer-reference-chip,
.composer-runtime-text-chip {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid rgba(191, 255, 0, 0.2);
  border-radius: 999px;
  padding: 4px 8px;
  background: rgba(191, 255, 0, 0.055);
  color: var(--text);
  font-size: 0.74rem;
  font-weight: 720;
}

.composer-runtime-text-chip {
  border-color: rgba(241, 238, 229, 0.14);
  background: rgba(255, 255, 255, 0.045);
  color: var(--muted);
}

.composer-reference-chip button {
  width: 18px;
  height: 18px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 999px;
  padding: 0;
  background: rgba(255, 255, 255, 0.08);
  color: var(--muted);
  cursor: pointer;
}

.composer-reference-chip button:hover,
.composer-reference-chip button:focus-visible {
  outline: none;
  background: rgba(191, 255, 0, 0.16);
  color: var(--text);
}

.composer-tools-menu .run-materials-control .download-card-grid {
  position: static;
  width: 100%;
  margin-top: 8px;
}

.composer-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
  border: 1px solid rgba(241, 238, 229, 0.16);
  border-radius: 16px;
  padding: 6px;
  background: #070807;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.composer-row .text-input {
  flex: none;
  min-width: 0;
  min-height: 42px;
  max-height: 118px;
  border: 0;
  background: transparent;
  padding: 10px 4px;
  resize: none;
}

.composer-row .text-input:focus {
  box-shadow: none;
}

.compact-btn {
  min-height: 36px;
  white-space: nowrap;
}

.mic-btn {
  width: 42px;
  min-width: 42px;
  min-height: 42px;
  border-radius: 999px;
  padding: 0;
  font-size: 0.7rem;
}

.wiz-stop-btn {
  min-width: 42px;
}

.composer-send-btn {
  position: relative;
  width: 42px;
  min-width: 42px;
  min-height: 42px;
  border-radius: 999px;
  padding: 0;
}

.send-btn-label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

.send-btn-icon {
  font-size: 1.05rem;
  line-height: 1;
  font-weight: 900;
}

.wiz-stop-btn.is-active {
  border-color: rgba(255, 107, 95, 0.84);
  background: rgba(255, 107, 95, 0.18);
  box-shadow: inset 0 0 0 1px rgba(255, 107, 95, 0.18);
}

.wiz-status {
  color: var(--accent);
}

.mic-btn.is-listening {
  border-color: rgba(191, 255, 0, 0.55);
  background: rgba(191, 255, 0, 0.1);
  color: var(--text);
}

.mic-pulse {
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 1px solid rgba(191, 255, 0, 0.46);
  background: rgba(191, 255, 0, 0.12);
}

.mic-btn.is-listening .mic-pulse,
.mic-status.is-listening::before {
  animation: mic-pulse 1.2s ease-in-out infinite;
}

.mic-elapsed {
  color: var(--accent);
  font-size: 0.74rem;
  font-weight: 860;
}

.mic-status.is-listening {
  color: var(--text);
}

.mic-status.is-listening::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 7px;
  border-radius: 50%;
  background: var(--accent);
  vertical-align: 1px;
}

@keyframes mic-pulse {
  0%,
  100% {
    opacity: 0.45;
    box-shadow: 0 0 0 0 rgba(191, 255, 0, 0.2);
  }
  50% {
    opacity: 1;
    box-shadow: 0 0 0 6px rgba(191, 255, 0, 0);
  }
}

.composer textarea {
  min-height: 54px;
  max-height: 140px;
}

.inline-card-grid,
.download-card-grid {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.receipt-card,
.download-card {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 12px;
  background: var(--panel-3);
}

.download-card a {
  color: var(--accent);
  font-weight: 820;
  text-decoration: none;
}

.history-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.run-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 14px;
}

.run-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  min-height: 190px;
  min-width: 0;
  overflow: hidden;
}

.run-card h3 {
  font-size: 1.1rem;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.run-card p {
  min-width: 0;
  overflow-wrap: anywhere;
}

.run-card-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: auto;
}

.admin-usage-panel {
  display: grid;
  gap: 18px;
}

.admin-usage-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.admin-usage-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: var(--radius);
}

.admin-usage-table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
  color: var(--text);
  font-size: 0.85rem;
}

.admin-usage-table th,
.admin-usage-table td {
  padding: 12px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: top;
}

.admin-usage-table th {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 820;
  text-transform: uppercase;
}

.admin-usage-table tbody tr:last-child td {
  border-bottom: 0;
}

.founder-beta-control-panel {
  display: grid;
  gap: 18px;
  border-color: rgba(191, 255, 0, 0.22);
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.055), transparent 240px),
    var(--panel);
}

.founder-access-hero,
.founder-access-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.founder-access-hero h2,
.founder-access-section h3,
.founder-access-form h3 {
  margin: 0;
  color: var(--text);
  font-size: 1.02rem;
  line-height: 1.25;
}

.founder-access-status-grid,
.founder-access-boundary-grid,
.founder-access-form-columns,
.founder-access-detail-grid {
  display: grid;
  gap: 12px;
}

.founder-access-status-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.founder-access-status-card,
.founder-access-boundary-grid p,
.founder-access-section,
.founder-access-form {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(0, 0, 0, 0.24);
}

.founder-access-status-card,
.founder-access-section,
.founder-access-form {
  padding: 14px;
}

.founder-access-status-card {
  display: grid;
  gap: 9px;
}

.founder-access-status-card span,
.founder-access-detail-grid dt {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 840;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.founder-access-status-card strong {
  color: var(--accent);
  font-size: 1.02rem;
  line-height: 1.25;
}

.founder-access-status-card p,
.founder-access-boundary-grid p,
.founder-access-result p {
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.founder-access-status-card dl,
.founder-access-detail-grid {
  margin: 0;
}

.founder-access-status-card dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.founder-access-status-card dl div,
.founder-access-detail-grid div {
  min-width: 0;
  border: 1px solid rgba(241, 238, 229, 0.1);
  border-radius: var(--radius);
  padding: 9px;
  background: rgba(241, 238, 229, 0.025);
}

.founder-access-status-card dt,
.founder-access-status-card dd,
.founder-access-detail-grid dt,
.founder-access-detail-grid dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.founder-access-status-card dt {
  color: var(--muted-2);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.founder-access-status-card dd,
.founder-access-detail-grid dd {
  margin-top: 4px;
  color: var(--text);
  font-size: 0.84rem;
  line-height: 1.35;
}

.founder-access-boundary-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.founder-access-boundary-grid p {
  padding: 11px;
}

.founder-access-table-wrap {
  margin-top: 12px;
}

.founder-access-table tbody tr.is-selected td {
  background: rgba(191, 255, 0, 0.055);
}

.founder-access-pill {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  border: 1px solid rgba(191, 255, 0, 0.34);
  border-radius: var(--radius);
  padding: 6px 9px;
  color: var(--accent);
  background: rgba(191, 255, 0, 0.08);
  font-size: 0.72rem;
  font-weight: 820;
  text-transform: uppercase;
}

.founder-access-detail-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.founder-access-form-columns {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.founder-access-form {
  display: grid;
  gap: 14px;
}

.founder-access-form-wide {
  grid-column: 1 / -1;
}

.founder-access-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}

.founder-access-field-wide {
  grid-column: 1 / -1;
}

.founder-access-result,
.form-success {
  border: 1px solid rgba(191, 255, 0, 0.22);
  border-radius: var(--radius);
  padding: 10px;
  background: rgba(191, 255, 0, 0.07);
}

.founder-access-result.is-error {
  border-color: rgba(255, 107, 95, 0.34);
  background: rgba(255, 107, 95, 0.08);
}

.founder-access-result strong,
.form-success {
  color: var(--text);
  font-size: 0.86rem;
  font-weight: 800;
}

.founder-invite-created,
.founder-invite-copy-actions,
.founder-access-advanced {
  display: grid;
  gap: 12px;
}

.founder-invite-copy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}

.founder-invite-email-text {
  grid-column: 1 / -1;
}

.founder-invite-copy-actions {
  grid-template-columns: repeat(3, max-content);
  align-items: center;
}

.founder-access-advanced {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 12px;
  background: rgba(0, 0, 0, 0.18);
}

.founder-access-advanced summary {
  cursor: pointer;
  color: var(--text);
  font-size: 0.9rem;
  font-weight: 840;
}

.account-admin-read-shell,
.account-admin-read-subpanel,
.account-admin-readiness-block {
  display: grid;
  gap: 12px;
}

.account-admin-read-shell {
  border-color: rgba(119, 197, 255, 0.24);
  background:
    linear-gradient(180deg, rgba(119, 197, 255, 0.055), transparent 220px),
    rgba(0, 0, 0, 0.2);
}

.account-admin-read-subpanel,
.account-admin-readiness-block {
  min-width: 0;
  border: 1px solid rgba(241, 238, 229, 0.1);
  border-radius: var(--radius);
  padding: 12px;
  background: rgba(0, 0, 0, 0.22);
}

.account-admin-read-notice {
  margin: 0;
  border: 1px solid rgba(119, 197, 255, 0.28);
  border-radius: var(--radius);
  padding: 11px 12px;
  color: var(--text);
  background: rgba(119, 197, 255, 0.075);
  font-size: 0.86rem;
  line-height: 1.45;
}

.account-admin-read-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.account-admin-read-grid div {
  min-width: 0;
  border: 1px solid rgba(241, 238, 229, 0.09);
  border-radius: var(--radius);
  padding: 9px;
  background: rgba(241, 238, 229, 0.025);
}

.account-admin-read-grid dt,
.account-admin-read-grid dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.account-admin-read-grid dt {
  color: var(--muted-2);
  font-size: 0.68rem;
  font-weight: 820;
  text-transform: uppercase;
}

.account-admin-read-grid dd {
  margin-top: 4px;
  color: var(--text);
  font-size: 0.86rem;
  line-height: 1.35;
}

.account-admin-readiness-block h4 {
  margin: 0;
  color: var(--text);
  font-size: 0.88rem;
}

.account-admin-read-table {
  min-width: 980px;
}

.account-admin-read-table td {
  max-width: 220px;
  overflow-wrap: anywhere;
}

.admin-founder-intake-page {
  max-width: 1480px;
  margin-inline: auto;
  width: 100%;
}

.admin-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.admin-founder-summary-grid,
.admin-founder-draft-grid,
.admin-founder-detail-grid,
.admin-founder-ack-grid {
  display: grid;
  gap: 10px;
}

.admin-founder-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-founder-summary-grid div,
.admin-founder-draft-grid div,
.admin-founder-detail-grid div,
.admin-founder-export-note,
.founder-ack-pill {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 13px;
  background: rgba(241, 238, 229, 0.035);
}

.admin-founder-summary-grid span,
.admin-founder-draft-grid span,
.admin-founder-detail-grid span,
.admin-founder-export-note span,
.admin-founder-notes-block span,
.founder-ack-pill span {
  display: block;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 820;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.admin-founder-summary-grid strong,
.admin-founder-draft-grid strong,
.admin-founder-detail-grid strong,
.admin-founder-export-note strong,
.founder-ack-pill strong {
  display: block;
  margin-top: 7px;
  color: var(--text);
  font-size: 0.98rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.admin-founder-layout {
  display: grid;
  grid-template-columns: minmax(320px, 0.42fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.admin-founder-list-panel,
.admin-founder-detail-panel {
  display: grid;
  gap: 16px;
  padding: clamp(18px, 2.6vw, 26px);
}

.admin-founder-application-list,
.admin-founder-detail-stack,
.admin-founder-review-form {
  display: grid;
  gap: 12px;
}

.admin-founder-application-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(128px, 0.44fr);
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 13px;
  background: #090b0a;
  color: var(--text);
  text-align: left;
}

.admin-founder-application-row:hover,
.admin-founder-application-row:focus-visible,
.admin-founder-application-row.is-active {
  border-color: rgba(191, 255, 0, 0.46);
  outline: none;
}

.admin-founder-application-row strong,
.admin-founder-application-row small,
.admin-founder-application-row em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.admin-founder-application-row small {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.admin-founder-application-row em {
  color: var(--accent);
  font-size: 0.76rem;
  font-style: normal;
  font-weight: 820;
  text-transform: uppercase;
}

.admin-founder-status-chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  border: 1px solid rgba(191, 255, 0, 0.34);
  border-radius: var(--radius);
  padding: 6px 9px;
  color: var(--accent);
  background: rgba(191, 255, 0, 0.08);
  font-size: 0.72rem;
  font-weight: 820;
  text-transform: uppercase;
}

.admin-founder-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-founder-ack-grid,
.admin-founder-draft-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.admin-founder-notes-block {
  display: grid;
  gap: 8px;
}

.admin-founder-notes-block p {
  margin: 0;
  color: var(--text);
  line-height: 1.6;
}

.founder-ack-pill.is-complete {
  border-color: rgba(191, 255, 0, 0.28);
}

.founder-ack-pill.is-missing {
  border-color: rgba(255, 107, 95, 0.36);
}

.founder-ack-pill small {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 0.78rem;
}

.admin-founder-decision-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.admin-founder-decision-grid .ghost-btn {
  justify-content: center;
}

.admin-founder-decision-grid .ghost-btn.is-active {
  border-color: rgba(191, 255, 0, 0.62);
  color: var(--accent);
  background: rgba(191, 255, 0, 0.1);
}

.support-request-page,
.admin-support-page {
  max-width: 1280px;
  margin-inline: auto;
  width: 100%;
}

.support-request-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr);
  gap: 18px;
  align-items: start;
}

.support-request-form,
.support-boundary-panel,
.admin-support-panel {
  display: grid;
  gap: 16px;
  padding: clamp(18px, 2.6vw, 26px);
}

.support-boundary-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding-left: 20px;
  color: var(--muted);
  line-height: 1.5;
}

.support-success {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(191, 255, 0, 0.32);
  border-radius: var(--radius);
  padding: 14px;
  background: rgba(191, 255, 0, 0.07);
}

.support-success h3,
.support-success p {
  margin: 0;
}

.support-success strong {
  color: var(--accent);
  overflow-wrap: anywhere;
}

.support-request-list {
  display: grid;
  gap: 12px;
}

.support-request-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.34fr);
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 14px;
  background: #090b0a;
}

.support-request-row strong,
.support-request-row small,
.support-request-row span,
.support-request-row p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.support-request-row p {
  margin: 8px 0 0;
  color: var(--text);
  line-height: 1.5;
}

.support-request-row small,
.support-request-row span {
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.journey-dashboard {
  max-width: 1280px;
  margin-inline: auto;
  width: 100%;
}

.journey-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.78fr);
  gap: 18px;
  align-items: end;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: clamp(18px, 3vw, 28px);
  background:
    radial-gradient(circle at 15% 12%, rgba(191, 255, 0, 0.14), transparent 28%),
    linear-gradient(135deg, rgba(17, 19, 18, 0.98), rgba(6, 8, 7, 0.98));
  box-shadow: 0 28px 92px rgba(0, 0, 0, 0.34);
}

.journey-status-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.journey-status-chip {
  min-width: 0;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 12px;
  background: rgba(0, 0, 0, 0.42);
  display: grid;
  gap: 5px;
}

.journey-status-chip small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 820;
  text-transform: uppercase;
}

.journey-status-chip strong {
  min-width: 0;
  color: var(--text);
  font-size: 0.94rem;
  overflow-wrap: anywhere;
}

.journey-tabs {
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #070807;
  width: fit-content;
}

.journey-tab {
  min-height: 36px;
  border: 0;
  border-radius: calc(var(--radius) - 2px);
  padding: 0 14px;
  background: transparent;
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 820;
}

.journey-tab.is-active,
.journey-tab:hover,
.journey-tab:focus-visible {
  outline: none;
  background: rgba(191, 255, 0, 0.14);
  color: var(--text);
}

.journey-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 18px;
}

.journey-coach-dashboard {
  gap: 18px;
}

.journey-coach-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(330px, 0.75fr);
  gap: 18px;
  align-items: stretch;
}

.journey-coach-main,
.journey-coach-side {
  min-width: 0;
}

.journey-coach-panel {
  min-height: 680px;
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.035), transparent 38%),
    var(--panel);
}

.journey-coach-panel.has-messages .wiz-head {
  padding-block: 14px 10px;
}

.journey-coach-panel .conversation-scroll {
  min-height: 430px;
  max-height: calc(100dvh - 360px);
}

.journey-coach-panel.has-messages .conversation-scroll {
  min-height: 520px;
  max-height: calc(100dvh - 305px);
}

.journey-coach-panel .conversation-empty {
  min-height: 330px;
  border-color: rgba(191, 255, 0, 0.2);
  background:
    linear-gradient(rgba(191, 255, 0, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(191, 255, 0, 0.035) 1px, transparent 1px),
    rgba(8, 9, 8, 0.68);
  background-size: 100% 28px, 36px 100%, 100% 100%;
}

.journey-support-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(330px, 0.95fr);
  gap: 18px;
}

.journey-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.journey-panel-head h2,
.journey-activity-panel h2,
.journey-practice-panel h2,
.journey-runs-panel h2 {
  margin: 0;
  font-size: clamp(1.25rem, 1.8vw, 1.75rem);
}

.journey-activity-panel,
.journey-practice-panel,
.journey-runs-panel {
  padding: 18px;
  overflow: hidden;
}

.journey-activity-chart {
  position: relative;
  min-height: 260px;
  margin-top: 18px;
  padding: 16px 12px 12px;
  border: 1px solid rgba(191, 255, 0, 0.2);
  border-radius: var(--radius);
  background:
    linear-gradient(rgba(191, 255, 0, 0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(191, 255, 0, 0.065) 1px, transparent 1px),
    linear-gradient(180deg, rgba(191, 255, 0, 0.08), rgba(10, 12, 11, 0.2));
  background-size: 100% 24px, 34px 100%, 100% 100%;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(34px, 1fr);
  align-items: end;
  gap: 8px;
}

.journey-activity-node {
  min-width: 0;
  min-height: 212px;
  border: 0;
  background: transparent;
  color: var(--muted);
  display: grid;
  grid-template-rows: 1fr auto auto;
  gap: 6px;
  justify-items: center;
  padding: 0;
}

.journey-bar-track {
  width: 100%;
  max-width: 30px;
  min-height: 168px;
  border-radius: 999px 999px 5px 5px;
  border: 1px solid rgba(241, 238, 229, 0.1);
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}

.journey-bar-fill {
  width: 100%;
  min-height: 12px;
  background: linear-gradient(180deg, #dfff5c, var(--accent) 45%, rgba(43, 180, 38, 0.74));
  box-shadow: 0 0 18px rgba(191, 255, 0, 0.35);
}

.journey-activity-node strong {
  color: var(--text);
  font-size: 0.8rem;
}

.journey-activity-node small {
  color: var(--muted-2);
  font-size: 0.68rem;
}

.journey-activity-node:hover,
.journey-activity-node:focus-visible,
.journey-activity-node.is-active {
  outline: none;
  color: var(--text);
}

.journey-activity-node:hover .journey-bar-track,
.journey-activity-node:focus-visible .journey-bar-track,
.journey-activity-node.is-active .journey-bar-track {
  border-color: rgba(191, 255, 0, 0.55);
  box-shadow: 0 0 0 2px rgba(191, 255, 0, 0.08);
}

.journey-empty-line {
  margin-top: 16px;
  border: 1px dashed rgba(241, 238, 229, 0.14);
  border-radius: var(--radius);
  padding: 18px;
  color: var(--muted);
  background: rgba(8, 9, 8, 0.5);
}

.journey-practice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}

.journey-practice-card {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 14px;
  background: rgba(8, 9, 8, 0.72);
  display: grid;
  gap: 7px;
}

.journey-practice-card small {
  color: var(--accent);
  font-size: 0.68rem;
  font-weight: 860;
  text-transform: uppercase;
}

.journey-practice-card h3 {
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 1rem;
}

.journey-practice-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.45;
}

.journey-practice-card.is-empty {
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.06), transparent),
    rgba(8, 9, 8, 0.58);
}

.journey-practice-board {
  min-height: 680px;
  padding: 18px;
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0%, rgba(191, 255, 0, 0.09), transparent 34%),
    linear-gradient(180deg, rgba(18, 20, 19, 0.98), rgba(7, 8, 7, 0.98));
}

.journey-missions-panel {
  padding: 18px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(191, 255, 0, 0.075), transparent 36%),
    rgba(9, 11, 10, 0.92);
}

.journey-missions-panel + .journey-practice-board {
  margin-top: 18px;
}

.journey-reward-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.journey-reward-summary span {
  min-width: 0;
  border: 1px solid rgba(191, 255, 0, 0.22);
  border-radius: var(--radius);
  padding: 10px;
  background: rgba(0, 0, 0, 0.36);
  display: grid;
  gap: 4px;
}

.journey-reward-summary small,
.journey-mission-head small {
  color: var(--accent);
  font-size: 0.68rem;
  font-weight: 860;
  text-transform: uppercase;
}

.journey-reward-summary strong {
  color: var(--text);
  font-size: 1.04rem;
}

.journey-reward-cap-copy,
.journey-reward-preview-copy,
.journey-mission-card p,
.journey-mission-validation {
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.journey-reward-cap-copy {
  margin-top: 10px;
}

.journey-reward-preview-copy,
.journey-mission-preview-note {
  border: 1px solid rgba(191, 255, 0, 0.18);
  border-radius: var(--radius);
  padding: 9px 10px;
  background: rgba(191, 255, 0, 0.055);
}

.journey-mission-stack {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.journey-mission-card {
  min-width: 0;
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 14px;
  background:
    linear-gradient(180deg, rgba(191, 255, 0, 0.045), transparent 62%),
    rgba(7, 9, 8, 0.82);
  display: grid;
  gap: 11px;
}

.journey-mission-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.journey-mission-head h3 {
  margin: 3px 0 0;
  font-size: 1rem;
  line-height: 1.24;
  overflow-wrap: anywhere;
}

.journey-mission-head span {
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 6px 8px;
  color: var(--muted);
  background: rgba(0, 0, 0, 0.36);
  font-size: 0.68rem;
  font-weight: 780;
  text-transform: uppercase;
  white-space: nowrap;
}

.journey-mission-validation {
  color: var(--accent);
  font-weight: 760;
}

.journey-mission-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.journey-mission-error {
  margin: 12px 0 0;
  border: 1px solid rgba(255, 110, 92, 0.34);
  border-radius: var(--radius);
  padding: 10px;
  color: #ffd5cf;
  background: rgba(255, 110, 92, 0.08);
  font-size: 0.82rem;
}

.journey-board-count {
  border: 1px solid rgba(191, 255, 0, 0.22);
  border-radius: var(--radius);
  padding: 8px 10px;
  color: var(--accent);
  background: rgba(191, 255, 0, 0.07);
  font-size: 0.72rem;
  font-weight: 840;
  white-space: nowrap;
}

.journey-practice-empty-grid {
  grid-template-columns: 1fr;
}

.journey-assignment-stack {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.journey-assignment-card {
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 14px;
  background:
    linear-gradient(135deg, rgba(191, 255, 0, 0.07), transparent 42%),
    rgba(7, 9, 8, 0.82);
  display: grid;
  gap: 12px;
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.24);
}

.journey-assignment-card.is-complete {
  opacity: 0.82;
}

.journey-assignment-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.journey-assignment-head small {
  color: var(--accent);
  font-size: 0.68rem;
  font-weight: 860;
  text-transform: uppercase;
}

.journey-assignment-head h3 {
  margin: 4px 0 0;
  font-size: 1rem;
  line-height: 1.24;
  overflow-wrap: anywhere;
}

.journey-assignment-head span {
  border: 1px solid rgba(241, 238, 229, 0.12);
  border-radius: var(--radius);
  padding: 6px 8px;
  color: var(--muted);
  background: rgba(0, 0, 0, 0.36);
  font-size: 0.68rem;
  font-weight: 780;
  text-transform: uppercase;
}

.journey-assignment-meta {
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
}

.journey-assignment-list {
  margin: 0;
  padding-left: 20px;
  color: var(--text);
  line-height: 1.45;
}

.journey-assignment-list li + li {
  margin-top: 5px;
}

.journey-assignment-checks {
  border-left: 2px solid var(--accent);
  padding-left: 10px;
  display: grid;
  gap: 5px;
}

.journey-assignment-checks strong {
  color: var(--accent);
  font-size: 0.72rem;
  text-transform: uppercase;
}

.journey-assignment-checks p {
  margin: 0;
  color: var(--muted);
  line-height: 1.4;
}

.journey-assignment-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.journey-complete-label {
  color: var(--accent);
  font-size: 0.76rem;
  font-weight: 820;
}

.journey-complete-label.is-preview {
  color: var(--muted);
}

.journey-server-practice {
  margin-top: 16px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
  display: grid;
  gap: 5px;
}

.journey-server-practice small {
  color: var(--accent);
  font-weight: 860;
  text-transform: uppercase;
}

.journey-server-practice p {
  margin: 0;
  color: var(--muted);
  line-height: 1.45;
}

.journey-run-strip {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}

.journey-run-item {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 10px;
  background: rgba(8, 9, 8, 0.62);
  transition:
    border-color 160ms ease,
    background 160ms ease,
    transform 160ms ease;
}

.journey-run-item:hover {
  border-color: rgba(191, 255, 0, 0.32);
  background: rgba(191, 255, 0, 0.065);
  transform: translateY(-1px);
}

.journey-run-thumb {
  width: 54px;
  aspect-ratio: 1;
  border-radius: var(--radius);
  border: 1px solid rgba(191, 255, 0, 0.2);
  background:
    radial-gradient(circle at 50% 30%, rgba(191, 255, 0, 0.22), transparent 45%),
    #050705;
  overflow: hidden;
  display: grid;
  place-items: center;
  color: var(--accent);
  font-weight: 900;
}

.journey-run-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.journey-run-item h3 {
  margin: 0;
  font-size: 0.96rem;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.journey-run-item p,
.journey-run-item small {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 0.74rem;
}

.activity-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.55fr);
  gap: 18px;
}

.activity-bars {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.activity-row {
  display: grid;
  grid-template-columns: 90px 1fr 34px;
  gap: 10px;
  align-items: center;
  color: var(--muted);
  font-size: 0.82rem;
}

.activity-bar {
  height: 10px;
  border-radius: 999px;
  background: #070807;
  overflow: hidden;
  border: 1px solid var(--line);
}

.activity-fill {
  display: block;
  height: 100%;
  background: var(--accent);
}

.activity-list {
  display: grid;
  gap: 10px;
}

.empty-state {
  display: grid;
  gap: 12px;
  justify-items: start;
}

.empty-state p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

.modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 40;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.72);
}

.modal-panel {
  width: min(460px, 100%);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  background: var(--panel-2);
  box-shadow: var(--shadow);
  padding: 20px;
}

.modal-panel h2 {
  margin: 0;
  font-size: 1.4rem;
}

.modal-panel p {
  margin: 12px 0 0;
  color: var(--muted);
  line-height: 1.55;
}

.modal-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 20px;
}

.toast {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 35;
  max-width: min(420px, calc(100vw - 36px));
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel-2);
  color: var(--text);
  padding: 12px 14px;
  box-shadow: var(--shadow);
}

.toast.is-error {
  border-color: rgba(255, 107, 95, 0.58);
}

@media (max-width: 980px) {
  .app-main-results {
    width: min(1600px, 100%);
  }

  .results-grid {
    grid-template-columns: 1fr;
  }

  .results-evidence-stack {
    position: static;
  }

  .results-grid .evidence-anchor {
    position: static;
  }
}

@media (max-width: 980px) {
  .workspace-frame-results {
    height: auto;
    overflow: visible;
  }

  .workspace-frame-results .workspace-topbar {
    height: auto;
  }

  .workspace-frame-results .app-main-results {
    height: auto;
    overflow: visible;
    padding: 18px;
  }

  .results-workspace-shell {
    height: auto;
    overflow: visible;
  }

  .results-grid,
  .results-evidence-stack,
  .results-evidence-tabs,
  .results-evidence-tab-panel {
    height: auto;
    overflow: visible;
  }

  .declared-context-grid,
  .declared-context-claims {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .workspace-shell,
  .workspace-shell.is-sidebar-collapsed {
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
  }

  .ai-workspace-sidebar {
    position: sticky;
    height: auto;
    padding: 12px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .sidebar-brand-row,
  .workspace-shell.is-sidebar-collapsed .sidebar-brand-row {
    flex-direction: row;
  }

  .workspace-shell.is-sidebar-collapsed .brand-copy {
    display: grid;
  }

  .workspace-nav {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    overflow-x: auto;
  }

  .workspace-list {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  .sidebar-credit-block {
    position: static;
  }

  .sidebar-bottom-stack {
    grid-template-columns: minmax(220px, 0.9fr) minmax(220px, 1fr);
    align-items: stretch;
  }

  .workspace-list-section {
    display: flex;
    align-items: stretch;
    gap: 6px;
  }

  .workspace-list-heading,
  .workspace-list-empty {
    display: none;
  }

  .workspace-shell.is-sidebar-collapsed .workspace-nav {
    display: none;
  }

  .workspace-shell.is-sidebar-collapsed .workspace-list {
    display: none;
  }

  .workspace-nav-link,
  .workspace-list-item {
    grid-template-columns: 1fr;
    justify-items: center;
    min-width: 72px;
    overflow: hidden;
    padding: 8px 6px;
  }

  .workspace-run-row {
    flex: 0 0 132px;
    min-width: 0;
    max-width: 132px;
    grid-template-columns: minmax(0, 1fr) 30px;
  }

  .workspace-nav-copy,
  .workspace-list-copy {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    justify-items: center;
  }

  .workspace-nav-copy span,
  .workspace-list-copy span {
    display: block;
    max-width: 100%;
  }

  .workspace-nav-copy small,
  .workspace-list-copy small {
    display: none;
  }

  .workspace-topbar {
    position: static;
    align-items: stretch;
    flex-direction: column;
  }

  .app-topbar,
  .page-header {
    align-items: stretch;
    flex-direction: column;
  }

  .app-nav {
    justify-content: flex-start;
  }

  .analysis-grid,
  .results-grid,
  .processing-panel,
  .activity-grid,
  .home-layout,
  .founder-apply-layout,
  .founder-signal-grid,
  .founder-status-grid,
  .admin-founder-layout,
  .admin-founder-summary-grid,
  .admin-founder-detail-grid,
  .admin-founder-ack-grid,
  .admin-founder-draft-grid,
  .founder-access-status-grid,
  .founder-access-boundary-grid,
  .founder-access-form-columns,
  .founder-access-form-grid,
  .founder-access-detail-grid,
  .founder-invite-copy-grid,
  .founder-invite-copy-actions,
  .account-admin-read-grid,
  .support-request-layout,
  .support-request-row,
  .general-wiz-layout,
  .journey-hero,
  .journey-dashboard-grid,
  .journey-coach-layout,
  .journey-support-grid {
    grid-template-columns: 1fr;
  }

  .home-explainer-card {
    justify-self: start;
    width: 100%;
  }

  .general-wiz-panel.has-messages,
  .journey-coach-panel,
  .journey-practice-board {
    min-height: 0;
  }

  .journey-status-grid,
  .journey-practice-grid {
    grid-template-columns: 1fr;
  }

  .evidence-anchor {
    position: static;
  }

  .text-evidence-grid,
  .text-evidence-attach {
    grid-template-columns: 1fr;
  }

  .text-lane-status-list li {
    grid-template-columns: 1fr;
  }

  .text-lane-pill {
    justify-self: start;
  }

  .evidence-structure-panel,
  .structure-cardiogram {
    min-height: 0;
  }

  .structure-cardiogram {
    grid-template-rows: auto;
  }

  .structure-selected-moment-panel {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .video-frame {
    min-height: 0;
  }

  .processing-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .wiz-panel {
    min-height: 640px;
  }

  .results-grid .wiz-panel {
    min-height: 560px;
  }

  .conversation-scroll {
    max-height: none;
  }

  .general-wiz-panel .conversation-scroll {
    max-height: none;
  }

  .general-wiz-panel.has-messages .conversation-scroll {
    min-height: 420px;
    max-height: none;
  }

  .journey-coach-panel .conversation-scroll,
  .journey-coach-panel.has-messages .conversation-scroll {
    min-height: 420px;
    max-height: none;
  }

  .run-materials-control .download-card-grid {
    left: 0;
    right: auto;
    width: min(340px, calc(100vw - 48px));
  }
}

@media (min-width: 761px) and (max-width: 980px) {
  .general-wiz-panel.has-messages {
    min-height: calc(100dvh - 138px);
  }

  .journey-status-grid,
  .journey-practice-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .app-main {
    padding: 18px;
  }

  .declared-context-head {
    display: grid;
  }

  .declared-context-authority {
    justify-self: start;
  }

  .declared-context-grid,
  .declared-context-claims,
  .declared-context-control-list {
    grid-template-columns: 1fr;
  }

  .app-topbar {
    padding: 14px 18px;
  }

  .home-title {
    font-size: clamp(2.7rem, 16vw, 4.4rem);
  }

  .journey-tabs {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .journey-activity-chart {
    grid-auto-columns: minmax(28px, 1fr);
    gap: 5px;
    overflow-x: auto;
  }

  .journey-run-item {
    grid-template-columns: 44px minmax(0, 1fr);
  }

  .journey-run-item .primary-btn {
    grid-column: 1 / -1;
  }

  .nav-link {
    flex: 1 1 auto;
    justify-content: center;
  }

  .processing-rail {
    grid-template-columns: 1fr;
  }

  .declared-context-check-grid {
    grid-template-columns: 1fr;
  }

  .consent-component-list {
    grid-template-columns: 1fr;
  }

  .consent-version-row,
  .consent-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .admin-founder-application-row,
  .admin-founder-decision-grid {
    grid-template-columns: 1fr;
  }

  .speech-control-panel,
  .speech-voice-label,
  .speech-voice-select,
  .wiz-mode-control,
  .wiz-mode-selector,
  .composer-toolbar {
    width: 100%;
  }

  .sidebar-bottom-stack {
    grid-template-columns: 1fr;
  }

  .composer-tools-menu {
    position: absolute;
    left: 0;
    right: auto;
    bottom: calc(100% + 8px);
    z-index: 12;
    width: min(320px, calc(100vw - 36px));
    max-height: min(56dvh, 420px);
    overflow: auto;
    border: 1px solid var(--line-strong);
    border-radius: var(--radius);
    padding-bottom: 10px;
  }

  .composer-tool-grid {
    grid-template-columns: 1fr;
  }

  .message {
    max-width: 100%;
  }

  .history-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 520px) {
  .workspace-list-copy {
    display: none;
  }

  .workspace-list-item {
    min-width: 44px;
    min-height: 44px;
  }

  .workspace-run-row {
    flex-basis: 80px;
    max-width: 80px;
  }
}
