:root {
  --bg: #f4f6f3;
  --panel: #ffffff;
  --ink: #1d2524;
  --muted: #61706d;
  --line: #d9dfdb;
  --teal: #0f766e;
  --teal-dark: #0b4f4a;
  --amber: #c47c12;
  --green: #5f8c3b;
  --rust: #a14f36;
  --shadow: 0 16px 45px rgba(24, 37, 35, 0.09);
}

* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--bg);
}
a { color: inherit; }
.app-shell { display: grid; grid-template-columns: 260px minmax(0, 1fr); min-height: 100vh; }
.sidebar {
  background: #17211f;
  color: #eef5f2;
  padding: 24px;
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.brand { display: flex; gap: 12px; align-items: center; text-decoration: none; }
.brand-logo {
  width: 42px;
  height: 42px;
  display: block;
  object-fit: contain;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgba(0,0,0,0.18);
}
.brand-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #e7bd62;
  color: #17211f;
  font-weight: 800;
}
.brand small, .plan-box small { display: block; color: #b8c8c3; margin-top: 3px; }
.brand small em {
  display: inline-flex;
  margin-left: 6px;
  border-radius: 999px;
  background: #e7bd62;
  color: #17211f;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  padding: 2px 6px;
  text-transform: uppercase;
}
.nav { display: grid; gap: 8px; }
.nav a {
  text-decoration: none;
  color: #d7e3df;
  padding: 10px 12px;
  border-radius: 8px;
}
.nav a.active, .nav a:hover { background: rgba(255,255,255,0.1); }
.plan-box {
  margin-top: auto;
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 8px;
  padding: 14px;
  background: rgba(255,255,255,0.06);
}
.plan-box span { color: #d8c48c; font-size: 12px; text-transform: uppercase; }
.logout-button {
  width: 100%;
  margin-top: 12px;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.18);
  color: #eef5f2;
}
.danger-button {
  background: #8d3323;
  color: #fff;
  border-color: #8d3323;
}
.main { padding: 28px; min-width: 0; }
.site-footer {
  margin-top: 34px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}
.site-footer p {
  max-width: 960px;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 10px;
}
.footer-links a {
  color: var(--teal-dark);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.legal-header {
  display: block;
}
.legal-page {
  max-width: 940px;
  padding: 28px;
}
.legal-page h2 {
  margin: 0 0 14px;
  font-size: 28px;
}
.legal-page h3 {
  margin: 22px 0 8px;
  font-size: 18px;
}
.legal-page p {
  color: var(--muted);
  line-height: 1.6;
  margin: 0 0 12px;
}
.faq-header p {
  max-width: 760px;
  color: var(--muted);
}
.faq-page {
  max-width: 1060px;
  padding: 28px;
}
.faq-toc {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 26px;
}
.faq-toc a {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #eef4f1;
  color: var(--teal-dark);
  font-size: 13px;
  font-weight: 900;
  padding: 8px 11px;
  text-decoration: none;
}
.faq-section {
  padding-top: 8px;
  margin-top: 26px;
}
.faq-section:first-of-type {
  margin-top: 0;
}
.faq-section h2 {
  margin: 4px 0 14px;
  font-size: 25px;
}
.faq-list {
  display: grid;
  gap: 10px;
}
.faq-list details {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfcfa;
  padding: 15px 16px;
}
.faq-list summary {
  cursor: pointer;
  font-weight: 900;
  line-height: 1.35;
}
.faq-list p {
  color: var(--muted);
  line-height: 1.58;
  margin: 10px 0 0;
}
.contact-panel {
  max-width: 920px;
  padding: 24px;
}
.contact-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.contact-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.contact-form .full {
  grid-column: 1 / -1;
}
.contact-form button {
  justify-self: start;
}
.contact-trap {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.topbar, .detail-header {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: flex-start;
  margin-bottom: 22px;
}
.topbar h1, .detail-header h1 { margin: 4px 0 0; font-size: 34px; line-height: 1.08; max-width: 820px; }
.page-lede {
  max-width: 820px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.5;
  margin: 12px 0 0;
}
.eyebrow { margin: 0; color: var(--teal); text-transform: uppercase; letter-spacing: 0.08em; font-size: 12px; font-weight: 800; }
.account {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px 14px;
  min-width: 190px;
  box-shadow: var(--shadow);
}
.account span, .account strong { display: block; }
.account span { color: var(--muted); font-size: 13px; }
.metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 18px; }
.metric, .search-panel, .chat-panel, .panel, .award-card, .detail-panel, .price-card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
}
.metric { padding: 16px; }
.metric span, .metric small { display: block; color: var(--muted); }
.metric strong { display: block; font-size: 28px; margin: 8px 0 2px; }
.compact-metrics .metric strong { font-size: 20px; }
.search-panel { padding: 18px; margin-bottom: 18px; }
.search-form label { font-weight: 700; }
.search-row { display: flex; gap: 10px; margin-top: 8px; }
input, select, textarea, button {
  font: inherit;
  border-radius: 8px;
}
input, select, textarea {
  border: 1px solid var(--line);
  background: #fbfcfa;
  color: var(--ink);
  padding: 11px 12px;
}
textarea {
  resize: vertical;
}
.search-row input { flex: 1; min-width: 0; }
button {
  border: 0;
  background: var(--teal);
  color: white;
  padding: 11px 16px;
  cursor: pointer;
  font-weight: 800;
}
button:hover { background: var(--teal-dark); }
button:disabled {
  cursor: not-allowed;
  background: #d8dfdb;
  color: #687571;
}
button:disabled:hover { background: #d8dfdb; }
.button-link, .ghost-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 8px;
  font-weight: 800;
}
.button-link {
  width: 100%;
  background: var(--teal);
  color: white;
  padding: 11px 16px;
}
.button-link.inline { width: auto; }
.ghost-link {
  background: #edf3f1;
  color: var(--teal-dark);
  border: 1px solid #cfe0dc;
  padding: 10px 14px;
}
.ghost-link.full { width: 100%; }
.filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin-top: 12px; }
.filters label { display: grid; gap: 6px; color: var(--muted); font-size: 13px; }
.coverage-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  margin-top: 14px;
}
.coverage-strip div {
  display: grid;
  gap: 2px;
  padding: 10px 12px;
  background: #eef4f1;
  border: 1px solid #cfe0dc;
  border-radius: 8px;
}
.coverage-strip strong {
  color: var(--teal-dark);
}
.coverage-strip span {
  font-weight: 800;
}
.coverage-strip small, .muted-copy.tight {
  color: var(--muted);
  line-height: 1.35;
}
.muted-copy.tight { margin: -6px 0 10px; }
.workflow-guide {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin: -4px 0 18px;
}
.workflow-guide div {
  display: grid;
  gap: 4px;
  background: #eef4f1;
  border: 1px solid #cfe0dc;
  border-radius: 8px;
  padding: 12px;
}
.workflow-guide strong {
  color: var(--teal-dark);
  font-size: 14px;
}
.workflow-guide span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
}
.chat-panel {
  padding: 20px;
  margin-bottom: 18px;
  background: #17211f;
  color: #eef5f2;
  border-color: #30423e;
  box-shadow: 0 20px 55px rgba(15, 25, 23, 0.22);
}
.upgrade-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
  padding: 18px;
  background: #fff8e8;
  border: 1px solid #ead7a9;
  border-radius: 8px;
  box-shadow: var(--shadow);
}
.upgrade-banner h2 { margin: 3px 0 6px; font-size: 20px; }
.upgrade-banner p:last-child { margin: 0; color: #665b42; line-height: 1.45; }
.chat-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 12px;
}
.chat-head .eyebrow { color: #e7bd62; }
.chat-head h2 { margin: 2px 0 0; font-size: 26px; }
.chat-head p:last-child {
  margin: 7px 0 0;
  color: #b8c8c3;
  line-height: 1.45;
}
.chat-head span {
  color: #17211f;
  background: #e7bd62;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.chat-log {
  display: grid;
  gap: 10px;
  max-height: 250px;
  overflow: auto;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 8px;
  background: rgba(255,255,255,0.06);
  padding: 10px 12px;
}
.chat-message {
  max-width: 82%;
  padding: 10px 12px;
  border-radius: 8px;
  line-height: 1.45;
}
.chat-message p { margin: 0; }
.chat-message.assistant {
  background: #eef4f1;
  color: #243330;
}
.chat-message.thinking {
  width: min(560px, 100%);
  border: 1px solid #d4e4df;
}
.thinking-head {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 6px;
}
.thinking-dots {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.thinking-dots i {
  width: 7px;
  height: 7px;
  display: block;
  border-radius: 999px;
  background: var(--teal);
  animation: thinkingPulse 1.05s infinite ease-in-out;
}
.thinking-dots i:nth-child(2) { animation-delay: 0.15s; }
.thinking-dots i:nth-child(3) { animation-delay: 0.3s; }
.thinking-progress {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #dbe7e3;
  margin-top: 10px;
}
.thinking-progress span {
  display: block;
  width: 42%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--teal), #e7bd62);
  animation: thinkingBar 1.35s infinite ease-in-out;
}
.chat-message.user {
  justify-self: end;
  background: #e7bd62;
  color: #17211f;
  font-weight: 800;
}
.chat-panel input,
.chat-panel textarea {
  border-color: rgba(255,255,255,0.24);
  background: #fbfcfa;
}
.chat-panel textarea {
  min-height: 96px;
  line-height: 1.45;
  box-shadow: inset 0 0 0 1px rgba(15, 118, 110, 0.08);
}
.chat-panel textarea:focus {
  outline: 3px solid rgba(231, 189, 98, 0.26);
  border-color: #e7bd62;
}
.chat-panel button {
  background: #e7bd62;
  color: #17211f;
  min-width: 82px;
}
.chat-panel button:hover { background: #d6a94d; }
.chat-panel button:disabled {
  background: #4b5c58;
  color: #aebbb7;
}
.chat-matches {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}
.chat-matches a {
  display: grid;
  gap: 2px;
  text-decoration: none;
  color: var(--ink);
  background: white;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px;
}
.chat-matches span {
  color: var(--muted);
  font-size: 12px;
}
.chat-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: stretch;
  margin-top: 12px;
}
.chat-form.is-busy input,
.chat-form.is-busy textarea {
  background-image: linear-gradient(90deg, rgba(231,189,98,0.12), rgba(15,118,110,0.12));
}
.chat-form.is-busy button {
  position: relative;
  overflow: hidden;
}
.chat-form.is-busy button::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 3px;
  background: rgba(23,33,31,0.35);
  animation: buttonBusy 1s infinite ease-in-out;
}
@keyframes thinkingPulse {
  0%, 80%, 100% { opacity: 0.35; transform: translateY(0); }
  40% { opacity: 1; transform: translateY(-3px); }
}
@keyframes thinkingBar {
  0% { transform: translateX(-110%); }
  55% { transform: translateX(70%); }
  100% { transform: translateX(245%); }
}
@keyframes buttonBusy {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}
.work-grid { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 18px; align-items: start; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.section-head h2 { margin: 0; font-size: 22px; }
.section-head.compact h2 { font-size: 16px; }
.ghost-button, .icon-button {
  background: #edf3f1;
  color: var(--teal-dark);
  border: 1px solid #cfe0dc;
}
.danger-button {
  background: #f8e7e2;
  color: #8d3323;
  border: 1px solid #efc0b6;
}
.danger-button:hover {
  background: #efc0b6;
  color: #6f2518;
}
.icon-button { min-width: 40px; height: 36px; padding: 0 8px; }
.icon-button.wide { min-width: 70px; }
.button-pair { display: flex; gap: 6px; align-items: center; }
.award-list { display: grid; gap: 14px; }
.award-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 310px;
  gap: 18px;
  padding: 18px;
}
.award-title-row { display: flex; justify-content: space-between; gap: 12px; }
.award-card h3 { margin: 0; font-size: 20px; }
.award-card h3 a { text-decoration: none; }
.award-card h3 a:hover { color: var(--teal); }
.score {
  align-self: flex-start;
  background: #e4f2ed;
  color: var(--teal-dark);
  padding: 5px 8px;
  border-radius: 999px;
  font-weight: 800;
  display: grid;
  justify-items: center;
  line-height: 1.05;
}
.score small {
  color: #4f706a;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.meta { color: var(--muted); margin: 8px 0; }
.acronym-note {
  margin: 6px 0 0;
  color: #6b5a2c;
  background: #fff8e8;
  border: 1px solid #ead7a9;
  border-radius: 8px;
  padding: 7px 9px;
  font-size: 12px;
  font-weight: 800;
}
.semantic-match {
  margin: 6px 0 0;
  color: var(--teal-dark);
  font-size: 13px;
  font-weight: 800;
}
.result-window {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.chips span {
  background: #f0eee6;
  color: #4f514a;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 700;
}
.chips .quality-chip.strong, .quality-pill.strong { background: #e3f1e4; color: #315d32; }
.chips .quality-chip.medium, .quality-pill.medium { background: #fff8e8; color: #6b5a2c; }
.chips .quality-chip.weak, .quality-pill.weak { background: #f8e7e2; color: #8d3323; }
.chips .record-kind-chip { background: #e8eff3; color: #284456; }
.brief {
  border-left: 1px solid var(--line);
  padding-left: 16px;
  color: var(--muted);
}
.brief strong { color: var(--ink); display: block; margin-bottom: 3px; }
.brief p { margin: 0 0 10px; font-size: 13px; line-height: 1.45; }
.save-button { width: 100%; background: var(--amber); }
.save-button.saved { background: var(--green); }
.right-rail { display: grid; gap: 14px; }
.panel { padding: 16px; }
.usage-row, .import-row, .saved-search, .watch-item, .related-row {
  display: grid;
  gap: 3px;
  padding: 10px 0;
  border-top: 1px solid var(--line);
}
.usage-row { grid-template-columns: 1fr auto; }
.usage-row span, .saved-search span, .watch-item span, .watch-item small, .import-row span, .related-row span {
  color: var(--muted);
  font-size: 13px;
}
.bar { height: 8px; background: #e8eeeb; border-radius: 99px; overflow: hidden; margin-bottom: 8px; }
.bar span { display: block; height: 100%; background: var(--teal); }
.bar.amber span { background: var(--amber); }
.bar.green span { background: var(--green); }
.import-row small {
  color: var(--muted);
  font-size: 12px;
}
.import-row.full {
  border-top: 1px solid var(--line);
}
.source-status-list { display: grid; gap: 10px; }
.source-status-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) 100px 150px 150px auto;
  gap: 12px;
  align-items: center;
  border-top: 1px solid var(--line);
  padding: 10px 0;
}
.source-status-row div { display: grid; gap: 3px; }
.source-status-row span, .source-status-row small {
  color: var(--muted);
  font-size: 12px;
}
.source-status-row strong { color: var(--ink); }
.source-status-actions { justify-items: end; }
.source-status-actions .ghost-button { min-width: 96px; }
.sam-status {
  margin-top: 12px;
  padding: 10px;
  border-radius: 8px;
  background: #f0eee6;
  color: #665b42;
  font-size: 13px;
  font-weight: 800;
}
.sam-status.ready {
  background: #e3f1e4;
  color: #315d32;
}
.sam-status.error {
  background: #f8e7e2;
  color: #8d3323;
}
.empty { background: var(--panel); border: 1px dashed var(--line); border-radius: 8px; padding: 30px; color: var(--muted); }
.empty-state-page {
  min-height: calc(100vh - 120px);
  display: grid;
  align-items: center;
}
.empty-state-panel {
  max-width: 720px;
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 30px;
}
.empty-state-panel h1 {
  margin: 6px 0 12px;
  font-size: 34px;
  line-height: 1.08;
}
.empty-state-panel p:not(.eyebrow) {
  color: var(--muted);
  line-height: 1.5;
  margin: 0;
}
.back-link { color: var(--teal); font-weight: 800; text-decoration: none; }
.detail-header { display: block; }
.detail-header p:last-child { color: var(--muted); }
.detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 14px;
}
.detail-actions span {
  background: #fff8e8;
  color: #6b5a2c;
  border: 1px solid #ead7a9;
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 13px;
  font-weight: 900;
}
.detail-grid { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: 18px; align-items: start; }
.detail-panel { padding: 20px; }
.detail-panel h2 { margin-top: 0; }
.facts { display: grid; gap: 12px; margin: 0; }
.facts div { border-top: 1px solid var(--line); padding-top: 10px; }
.facts dt { color: var(--muted); font-size: 12px; text-transform: uppercase; font-weight: 800; }
.facts dd { margin: 3px 0 0; font-weight: 800; }
.emphasis { border-color: #b8d8cf; }
.emphasis h3 { color: var(--teal-dark); margin-bottom: 4px; }
.confidence { height: 12px; background: #e8eeeb; border-radius: 99px; overflow: hidden; margin-top: 16px; }
.confidence span { display: block; height: 100%; background: linear-gradient(90deg, var(--teal), var(--green)); }
.actionability-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 16px;
}
.actionability-grid div {
  background: #f7faf8;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
}
.actionability-grid span {
  display: block;
  color: var(--teal-dark);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 6px;
}
.actionability-grid p {
  margin: 0;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.45;
}
.enrichment-panel {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-top: 16px;
}
.enrichment-panel div, .fit-grid div, .score-breakdown {
  background: #fbfcfa;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
}
.enrichment-panel h3, .score-breakdown h3 {
  margin: 0 0 7px;
  color: var(--teal-dark);
  font-size: 15px;
}
.enrichment-panel p {
  margin: 0;
  line-height: 1.45;
}
.fit-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 12px;
}
.fit-grid span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.fit-grid strong {
  display: block;
  margin: 5px 0;
  font-size: 18px;
}
.fit-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}
.score-breakdown {
  margin-top: 12px;
}
.score-breakdown > div {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.score-breakdown p {
  margin: 0;
  display: grid;
  gap: 5px;
}
.score-breakdown small {
  color: var(--muted);
  line-height: 1.35;
}
.score-pill {
  width: fit-content;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 900;
}
.score-pill.strong { background: #e3f1e4; color: #315d32; }
.score-pill.medium { background: #fff8e8; color: #6b5a2c; }
.score-pill.weak { background: #f8e7e2; color: #8d3323; }
.related { margin-top: 18px; }
.related-row { text-decoration: none; }
.pricing-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.price-card { padding: 22px; }
.price-card.featured { border-color: var(--teal); transform: translateY(-4px); }
.price-card span { color: var(--teal); font-weight: 800; }
.price-card h2 { font-size: 32px; margin: 8px 0; }
.price-card button { width: 100%; margin-top: 12px; }
.billing-note, .plan-rules { margin-top: 18px; }
.landing-hero {
  display: grid;
  grid-template-columns: minmax(360px, 0.9fr) minmax(520px, 1.3fr);
  align-items: center;
  gap: 28px;
  padding: 18px 0 28px;
}
.landing-copy h1 {
  margin: 8px 0;
  font-size: clamp(54px, 6vw, 84px);
  line-height: 0.95;
}
.landing-lede {
  max-width: 700px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.45;
  margin: 0;
}
.landing-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.trust-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}
.trust-strip span {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fbfcfa;
  color: #3f514d;
  font-size: 12px;
  font-weight: 800;
  padding: 7px 10px;
}
.landing-snapshot {
  background: #17211f;
  color: #eef5f2;
  border-radius: 8px;
  padding: 18px;
  box-shadow: var(--shadow);
}
.snapshot-header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.snapshot-header span { color: #b8c8c3; display: block; font-size: 13px; }
.workspace-preview-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,0.14);
}
.preview-card {
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  background: rgba(255,255,255,0.04);
  padding: 12px;
}
.preview-card span, .preview-card small, .source-mix-preview span, .signal-table-preview span, .signal-table-preview small {
  color: #b8c8c3;
  display: block;
  font-size: 12px;
}
.preview-card strong {
  display: block;
  font-size: 23px;
  margin: 5px 0;
}
.preview-card small, .signal-table-preview small {
  line-height: 1.35;
}
.source-mix-preview {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-top: 10px;
}
.source-mix-preview div {
  border-top: 1px solid rgba(255,255,255,0.12);
  padding-top: 10px;
}
.source-mix-preview strong {
  display: block;
  margin-top: 3px;
  font-size: 18px;
}
.signal-table-preview {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}
.signal-table-preview div {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr) minmax(180px, 0.9fr);
  gap: 10px;
  align-items: start;
  border-top: 1px solid rgba(255,255,255,0.12);
  padding-top: 10px;
}
.signal-table-preview strong {
  color: #eef5f2;
}
.landing-band { margin-top: 26px; }
.landing-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.landing-feature-grid article {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 18px;
  box-shadow: var(--shadow);
}
.landing-feature-grid p {
  color: var(--muted);
  line-height: 1.5;
  margin: 8px 0 0;
}
.use-case-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.use-case-grid article {
  background: #17211f;
  color: #eef5f2;
  border-radius: 8px;
  padding: 18px;
  box-shadow: var(--shadow);
}
.use-case-grid span {
  color: #e7bd62;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0.08em;
}
.use-case-grid h3 {
  margin: 10px 0 8px;
  font-size: 20px;
  line-height: 1.2;
}
.use-case-grid p, .demo-band p {
  color: #b8c8c3;
  line-height: 1.5;
  margin: 0;
}
.demo-band {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  background: #17211f;
  color: #eef5f2;
  border-radius: 8px;
  padding: 20px;
  box-shadow: var(--shadow);
}
.demo-band h2 { margin: 4px 0 8px; }
.semantic-preview {
  display: grid;
  grid-template-columns: 380px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 20px;
}
.semantic-preview h2 { margin: 4px 0 8px; }
.semantic-preview p {
  color: var(--muted);
  line-height: 1.5;
  margin: 0;
}
.pricing-semantic { margin-top: 18px; }
.semantic-search-mock {
  display: grid;
  gap: 12px;
}
.mock-search-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
}
.mock-search-row input {
  font-weight: 700;
  background: #fbfcfa;
}
.mock-answer {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #eef4f1;
  padding: 13px;
}
.mock-answer p {
  margin-top: 6px;
}
.question-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.question-grid a {
  text-decoration: none;
  color: var(--ink);
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 13px;
  font-weight: 800;
  line-height: 1.35;
}
.faq-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.faq-grid details {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 15px;
  box-shadow: var(--shadow);
}
.faq-grid summary {
  cursor: pointer;
  font-weight: 800;
}
.faq-grid p {
  color: var(--muted);
  line-height: 1.5;
  margin: 10px 0 0;
}
.onboarding-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-bottom: 18px;
}
.onboarding-card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 20px;
  box-shadow: var(--shadow);
}
.onboarding-card span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: #e7bd62;
  color: #17211f;
  border-radius: 8px;
  font-weight: 900;
}
.onboarding-card h2 {
  margin: 14px 0 8px;
  font-size: 21px;
}
.onboarding-card p {
  color: var(--muted);
  line-height: 1.5;
}
.starter-panel { margin-top: 18px; }
.landing-awards {
  display: grid;
  gap: 14px;
}
.award-card.preview {
  grid-template-columns: minmax(0, 1fr) 280px;
}
.public-landing-body {
  background: #f5f7f4;
}
.public-shell {
  min-height: 100vh;
  background: #f5f7f4;
}
.public-nav {
  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 24px;
  padding: 18px 0;
  color: #eef8f5;
  background: #07100f;
  box-shadow: 0 0 0 100vmax #07100f;
  clip-path: inset(0 -100vmax);
}
.public-brand {
  display: flex;
  gap: 12px;
  align-items: center;
  text-decoration: none;
  min-width: max-content;
}
.public-brand small {
  display: block;
  color: #9fb6b0;
  margin-top: 2px;
}
.public-brand small em {
  display: inline-flex;
  margin-left: 6px;
  border-radius: 999px;
  background: #e7bd62;
  color: #17211f;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  padding: 2px 6px;
  text-transform: uppercase;
}
.public-nav-links {
  display: flex;
  justify-content: center;
  gap: 22px;
}
.public-nav-links a,
.public-login {
  color: #c7d7d3;
  font-weight: 800;
  text-decoration: none;
}
.public-nav-links a:hover,
.public-login:hover {
  color: #ffffff;
}
.public-nav-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: flex-end;
}
.public-hero {
  color: #eef8f5;
  overflow: hidden;
  border-top: 1px solid rgba(255,255,255,0.08);
  background: #07100f;
  box-shadow: 0 0 0 100vmax #07100f;
  clip-path: inset(0 -100vmax);
}
.public-hero-inner {
  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(340px, 0.86fr) minmax(560px, 1.14fr);
  gap: 42px;
  align-items: center;
  min-height: 580px;
  padding: 66px 0 74px;
}
.public-hero-copy h1 {
  margin: 12px 0 16px;
  max-width: 680px;
  color: #ffffff;
  font-size: clamp(48px, 5.4vw, 76px);
  line-height: 0.98;
  letter-spacing: 0;
}
.public-hero .landing-lede {
  color: #b6c7c2;
  max-width: 620px;
  font-size: 19px;
}
.public-hero .trust-strip span {
  border-color: rgba(255,255,255,0.18);
  background: rgba(255,255,255,0.06);
  color: #dbe8e4;
}
.hero-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 43px;
  border: 1px solid rgba(255,255,255,0.2);
  border-radius: 8px;
  color: #eef8f5;
  text-decoration: none;
  font-weight: 900;
  padding: 0 16px;
  background: rgba(255,255,255,0.06);
}
.product-window {
  border: 1px solid rgba(100, 213, 227, 0.42);
  border-radius: 8px;
  background: #10201e;
  box-shadow: 0 28px 80px rgba(0,0,0,0.34), 0 0 80px rgba(32,159,178,0.18);
  overflow: hidden;
}
.product-window-bar {
  height: 42px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 15px;
  border-bottom: 1px solid rgba(255,255,255,0.09);
  background: #0b1514;
}
.product-window-bar span {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #5d706b;
}
.product-window-bar span:first-child { background: #e7bd62; }
.product-window-bar span:nth-child(2) { background: #66c6d7; }
.product-window-bar strong {
  margin-left: 7px;
  color: #cfe0dc;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.product-window-body {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  min-height: 420px;
}
.product-rail {
  background: #080d18;
  border-right: 1px solid rgba(255,255,255,0.08);
  padding: 16px 12px;
  display: grid;
  align-content: start;
  gap: 13px;
}
.product-rail-logo {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: #12221f;
  background: linear-gradient(135deg, #e7bd62, #66c6d7);
  font-weight: 950;
}
.product-rail span {
  display: block;
  width: 100%;
  height: 9px;
  border-radius: 999px;
  background: rgba(255,255,255,0.14);
}
.product-rail span.active {
  height: 24px;
  border-radius: 6px;
  background: linear-gradient(90deg, #14887f, #66c6d7);
}
.product-stage {
  background: #f8fbf9;
  color: #17211f;
  padding: 18px;
}
.product-search {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid #d7e3df;
  border-radius: 8px;
  background: #ffffff;
  padding: 0 15px;
}
.product-search span {
  color: #6d7f7a;
  font-size: 14px;
}
.product-search strong {
  color: #0b4f4a;
}
.product-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 14px;
}
.product-metrics div,
.product-source-grid div {
  border: 1px solid #d8e3df;
  border-radius: 8px;
  background: #ffffff;
  padding: 12px;
}
.product-metrics span,
.product-source-grid span,
.product-workflow span {
  display: block;
  color: #60716d;
  font-size: 12px;
  font-weight: 800;
}
.product-metrics strong {
  display: block;
  margin: 5px 0 4px;
  font-size: 24px;
}
.product-metrics small,
.product-workflow small {
  color: #60716d;
  line-height: 1.35;
}
.product-source-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-top: 10px;
}
.product-source-grid strong {
  display: block;
  margin-top: 4px;
  font-size: 19px;
}
.product-workflow {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}
.product-workflow div {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr) minmax(170px, 0.9fr);
  gap: 12px;
  align-items: start;
  border: 1px solid #d8e3df;
  border-radius: 8px;
  background: #ffffff;
  padding: 12px;
}
.product-workflow strong {
  color: #17211f;
}
.proof-strip {
  width: min(1280px, calc(100% - 40px));
  margin: -34px auto 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  position: relative;
  z-index: 2;
}
.proof-strip div {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 16px;
}
.proof-strip span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.proof-strip strong {
  display: block;
  margin: 5px 0 2px;
  font-size: 26px;
}
.proof-strip small {
  color: var(--muted);
  line-height: 1.35;
}
.public-section,
.public-footer {
  width: min(1280px, calc(100% - 40px));
  margin-left: auto;
  margin-right: auto;
}
.public-section {
  margin-top: 34px;
}
.public-section .section-head h2 {
  max-width: 760px;
}
.public-footer {
  padding-bottom: 28px;
}
.auth-shell {
  min-height: calc(100vh - 56px);
  display: grid;
  align-items: center;
  justify-items: center;
}
.auth-panel {
  width: min(460px, 100%);
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: var(--shadow);
  padding: 28px;
}
.auth-panel h1 { margin: 6px 0 18px; font-size: 30px; line-height: 1.1; }
.auth-form { display: grid; gap: 14px; }
.auth-form label { display: grid; gap: 7px; font-weight: 800; color: var(--muted); }
.auth-form button { margin-top: 4px; }
.auth-alt { color: var(--muted); }
.auth-alt a { color: var(--teal-dark); font-weight: 800; }
.form-error {
  background: #f8e7e2;
  color: #8d3323;
  border: 1px solid #efc0b6;
  border-radius: 8px;
  padding: 10px 12px;
  font-weight: 800;
}
.form-success {
  color: #275b32;
  background: #eef8ef;
  border: 1px solid #c9e6ce;
  border-radius: 8px;
  margin-bottom: 16px;
  padding: 12px;
}
.form-success p {
  margin: 5px 0 0;
  color: #44664b;
}
.verification-panel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  border-color: #e7bd62;
  background: #fff8e8;
}
.verification-panel h2 {
  margin: 4px 0 8px;
}
.verification-panel p {
  color: #6b5a2c;
  line-height: 1.5;
  margin: 0;
}
.plan-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.plan-feature-grid div {
  border-top: 1px solid var(--line);
  padding-top: 12px;
}
.plan-feature-grid span {
  display: block;
  color: var(--muted);
  font-size: 13px;
}
.plan-feature-grid strong {
  display: block;
  margin-top: 4px;
}
.admin-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 14px;
  margin-bottom: 18px;
}
.muted-copy {
  color: var(--muted);
  line-height: 1.5;
  margin: 0;
}
.billing-actions {
  margin-top: 16px;
}
.recipient-profile {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  background: #f4f6f3;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  margin-top: 14px;
}
.recipient-profile h3 {
  margin: 0 0 6px;
}
.recipient-profile p {
  margin: 0 0 6px;
}
.recipient-profile small {
  color: var(--muted);
}
.external-context {
  display: grid;
  gap: 9px;
  border-top: 1px solid var(--line);
  margin-top: 16px;
  padding-top: 14px;
}
.external-context .section-head {
  margin-bottom: 0;
}
.context-link {
  display: grid;
  gap: 4px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  text-decoration: none;
}
.context-link span {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.context-link strong {
  color: var(--ink);
  line-height: 1.25;
}
.context-link small, .context-link p {
  color: var(--muted);
}
.context-link p {
  margin: 0;
  line-height: 1.4;
}
.saved-table {
  display: grid;
  gap: 10px;
}
.saved-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 190px 170px auto;
  gap: 14px;
  align-items: center;
  border-top: 1px solid var(--line);
  padding: 14px 0;
}
.saved-row h3 {
  margin: 0 0 5px;
  font-size: 18px;
}
.saved-row h3 a {
  text-decoration: none;
}
.saved-row p {
  margin: 0 0 8px;
  color: var(--muted);
}
.saved-row span, .saved-row strong {
  display: block;
}
.saved-row > div:nth-child(2) span {
  color: var(--muted);
  font-size: 13px;
}
.quality-pill {
  width: fit-content;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 900;
}
.status-form select {
  width: 100%;
}
.status-form.saved-flash select {
  border-color: var(--green);
  background: #e3f1e4;
}
.row-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}
.readiness-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.readiness-list div {
  border-top: 1px solid var(--line);
  padding-top: 12px;
}
.readiness-list strong, .readiness-list span {
  display: block;
}
.readiness-list span {
  color: var(--muted);
  line-height: 1.45;
  margin-top: 5px;
}
.admin-user-list {
  display: grid;
  gap: 14px;
}
.admin-message-form {
  display: grid;
  grid-template-columns: minmax(220px, 0.8fr) minmax(260px, 1fr);
  gap: 12px;
}
.admin-message-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}
.admin-message-form label:nth-child(3) {
  grid-column: 1 / -1;
}
.admin-message-form button {
  justify-self: start;
}
.message-log, .account-message-list {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}
.message-row, .account-message {
  border-top: 1px solid var(--line);
  padding-top: 12px;
}
.message-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
.message-row strong, .message-row span, .account-message strong, .account-message small {
  display: block;
}
.message-row span, .message-row small, .message-row p, .account-message small, .account-message p {
  color: var(--muted);
}
.message-row p {
  line-height: 1.45;
  margin: 6px 0 0;
}
.message-row small {
  font-weight: 900;
  text-transform: uppercase;
}
.account-message.unread {
  border-left: 3px solid var(--gold);
  padding-left: 12px;
}
.account-message p {
  line-height: 1.55;
  margin: 8px 0 10px;
}
.admin-user-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 520px 220px;
  gap: 14px;
  align-items: start;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}
.admin-user-row h3 {
  margin: 0 0 5px;
}
.admin-user-row p, .admin-user-row small {
  color: var(--muted);
  margin: 0;
}
.admin-user-form {
  display: grid;
  grid-template-columns: 120px 110px minmax(140px, 1fr) auto;
  gap: 8px;
  align-items: end;
}
.admin-user-form label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}
.admin-user-actions {
  display: grid;
  gap: 8px;
}
.password-reset-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}
.usage-mini {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.usage-mini span {
  background: #f0eee6;
  border-radius: 999px;
  color: #4f514a;
  font-size: 12px;
  font-weight: 800;
  padding: 5px 9px;
}
.abuse-panel .section-head {
  align-items: start;
}
.risk-user-list {
  display: grid;
  gap: 12px;
}
.risk-user-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfcfa;
  padding: 15px;
  display: grid;
  gap: 11px;
}
.risk-user-card.suspended {
  border-color: #efc0b6;
  background: #fff7f5;
}
.risk-user-main {
  display: flex;
  justify-content: space-between;
  gap: 14px;
}
.risk-user-main h3,
.abuse-grid h3 {
  margin: 0 0 5px;
}
.risk-user-main p,
.risk-flags,
.risk-note {
  color: var(--muted);
  line-height: 1.45;
  margin: 0;
}
.risk-user-main small {
  color: var(--muted);
}
.risk-score {
  min-width: 76px;
  height: 64px;
  border-radius: 8px;
  background: #17211f;
  color: #eef5f2;
  display: grid;
  place-items: center;
  align-content: center;
}
.risk-score span {
  color: #b8c8c3;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}
.risk-score strong {
  font-size: 24px;
}
.risk-badges,
.risk-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.risk-badges span {
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
  padding: 5px 9px;
}
.risk-badges .good {
  color: #315d32;
  background: #e3f1e4;
}
.risk-badges .warn {
  color: #6b5a2c;
  background: #fff8e8;
}
.risk-badges .bad {
  color: #8d3323;
  background: #f8e7e2;
}
.risk-note {
  background: #f0eee6;
  border-radius: 8px;
  padding: 8px 10px;
}
.abuse-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 16px;
}
.risk-mini-list {
  display: grid;
  gap: 8px;
}
.risk-mini-list p {
  display: grid;
  gap: 2px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfcfa;
  padding: 10px;
  margin: 0;
}
.risk-mini-list span {
  color: var(--muted);
  font-size: 12px;
}

@media (max-width: 1100px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: static; height: auto; }
  .work-grid, .award-card, .award-card.preview, .detail-grid, .landing-hero, .landing-feature-grid, .demo-band, .semantic-preview, .actionability-grid, .enrichment-panel, .recipient-profile, .fit-grid, .score-breakdown > div, .admin-grid, .saved-row, .readiness-list, .admin-user-row, .admin-user-form, .admin-message-form, .contact-form, .source-status-row, .abuse-grid { grid-template-columns: 1fr; }
  .public-nav { grid-template-columns: 1fr auto; }
  .public-nav-links { display: none; }
  .public-hero-inner { grid-template-columns: 1fr; padding-top: 44px; }
  .product-window { max-width: 900px; }
  .proof-strip { grid-template-columns: repeat(2, 1fr); margin-top: -24px; }
  .admin-message-form label:nth-child(3) { grid-column: auto; }
  .contact-form .full { grid-column: auto; }
  .pricing-grid, .use-case-grid, .onboarding-grid { grid-template-columns: repeat(2, 1fr); }
  .brief { border-left: 0; border-top: 1px solid var(--line); padding-left: 0; padding-top: 14px; }
  .row-actions { justify-content: flex-start; }
}

@media (max-width: 760px) {
  .main { padding: 18px; }
  .topbar { display: block; }
  .topbar h1, .detail-header h1 { font-size: 27px; }
  .metrics, .filters, .workflow-guide, .pricing-grid, .plan-feature-grid, .use-case-grid, .faq-grid, .question-grid, .onboarding-grid, .workspace-preview-grid, .source-mix-preview, .proof-strip, .product-metrics { grid-template-columns: 1fr; }
  .signal-table-preview div, .product-workflow div { grid-template-columns: 1fr; }
  .search-row { flex-direction: column; }
  .upgrade-banner { display: grid; }
  .chat-form { grid-template-columns: 1fr; }
  .mock-search-row { grid-template-columns: 1fr; }
  .chat-message { max-width: 100%; }
  .landing-copy h1 { font-size: 48px; }
  .verification-panel,
  .risk-user-main {
    display: grid;
  }
  .public-nav,
  .public-hero-inner,
  .proof-strip,
  .public-section,
  .public-footer {
    width: min(100% - 28px, 1280px);
  }
  .public-nav {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .public-nav-actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .public-hero-inner {
    padding: 32px 0 56px;
  }
  .public-hero-copy h1 {
    font-size: 42px;
  }
  .public-hero .landing-lede {
    font-size: 17px;
  }
  .product-window-body {
    grid-template-columns: 1fr;
  }
  .product-rail {
    display: none;
  }
  .product-stage {
    padding: 12px;
  }
  .product-search {
    display: grid;
    min-height: auto;
    padding: 12px;
  }
  .product-source-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .product-metrics small,
  .product-workflow small {
    display: none;
  }
}


/* Pro pilot landing page */
.pilot-shell { background: #f7faf8; }
.pilot-hero {
  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.55fr);
  gap: 34px;
  align-items: center;
  min-height: 560px;
  padding: 58px 0 48px;
}
.pilot-hero-copy h1 {
  margin: 12px 0 16px;
  max-width: 860px;
  color: #0d1715;
  font-size: clamp(42px, 5vw, 66px);
  line-height: 1;
  letter-spacing: 0;
}
.pilot-hero .landing-lede {
  max-width: 760px;
  color: #41534f;
  font-size: 19px;
}
.pilot-assurance,
.pilot-fit-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}
.pilot-assurance span,
.pilot-fit-list span {
  border: 1px solid #cfded9;
  border-radius: 999px;
  background: #ffffff;
  color: #153d38;
  font-size: 13px;
  font-weight: 850;
  padding: 8px 11px;
}
.pilot-summary-panel {
  display: grid;
  gap: 12px;
}
.pilot-summary-panel div,
.pilot-grid article,
.pilot-band,
.pilot-fit,
.pilot-final {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: var(--shadow);
}
.pilot-summary-panel div { padding: 18px; }
.pilot-summary-panel span,
.pilot-grid span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.pilot-summary-panel strong {
  display: block;
  margin: 6px 0 4px;
  color: #0d1715;
  font-size: 24px;
  line-height: 1.08;
}
.pilot-summary-panel small { color: var(--muted); }
.pilot-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 14px;
}
.pilot-grid article { padding: 20px; }
.pilot-grid h2 {
  margin: 10px 0 8px;
  font-size: 22px;
  line-height: 1.12;
}
.pilot-grid p,
.pilot-final p { color: #4b5f5a; }
.pilot-band,
.pilot-fit,
.pilot-final {
  margin-top: 22px;
  padding: 24px;
}
.pilot-band {
  display: grid;
  grid-template-columns: minmax(260px, 0.5fr) minmax(0, 1fr);
  gap: 22px;
}
.pilot-band h2,
.pilot-fit h2,
.pilot-final h2 {
  margin: 8px 0 0;
  font-size: 34px;
  line-height: 1.05;
}
.pilot-steps {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.pilot-steps li {
  display: grid;
  grid-template-columns: minmax(180px, 0.4fr) minmax(0, 1fr);
  gap: 12px;
  border: 1px solid #d8e4e0;
  border-radius: 8px;
  padding: 13px;
}
.pilot-steps strong { color: #123b36; }
.pilot-steps span { color: #516660; }
.pilot-final {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 26px;
}
.pilot-final div { max-width: 760px; }
@media (max-width: 900px) {
  .pilot-hero,
  .pilot-band,
  .pilot-grid { grid-template-columns: 1fr; }
  .pilot-final { align-items: flex-start; flex-direction: column; }
  .pilot-steps li { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .pilot-hero { width: min(100% - 28px, 1280px); padding-top: 36px; }
  .pilot-hero-copy h1 { font-size: 38px; }
  .pilot-band h2,
  .pilot-fit h2,
  .pilot-final h2 { font-size: 28px; }
}

/* Pro access page refresh */
.pilot-shell main {
  overflow: hidden;
}

.pilot-hero {
  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(360px, 0.92fr) minmax(520px, 1.08fr);
  gap: 32px;
  align-items: center;
  padding: 56px 0 72px;
  color: #eef8f5;
  background: #07100f;
  box-shadow: 0 0 0 100vmax #07100f;
  clip-path: inset(0 -100vmax);
}

.pilot-hero-copy h1 {
  color: #ffffff;
  font-size: clamp(44px, 5vw, 72px);
  line-height: 0.98;
  margin: 10px 0 16px;
  letter-spacing: 0;
}

.pilot-hero .landing-lede {
  color: #c7d7d3;
  max-width: 620px;
}

.pilot-hero .eyebrow {
  color: #65d8cd;
}

.pilot-hero .hero-secondary {
  color: #d6e9e4;
  border-color: rgba(255, 255, 255, 0.24);
}

.pilot-hero .product-window {
  align-self: stretch;
  color: var(--ink);
}

.pilot-hero .product-window-bar strong {
  color: #37524d;
}

.pilot-hero .product-window-body {
  min-height: 470px;
}

.pilot-assurance {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.pilot-assurance span {
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  color: #dcefeb;
  background: rgba(255, 255, 255, 0.06);
  padding: 9px 12px;
  font-size: 13px;
  font-weight: 800;
}

.pilot-fit ul {
  margin: 0;
}

@media (max-width: 980px) {
  .pilot-hero {
    grid-template-columns: 1fr;
    padding: 42px 0 56px;
  }

  .pilot-hero .product-window-body {
    min-height: auto;
  }
}

@media (max-width: 640px) {
  .pilot-hero {
    width: min(100% - 28px, 1280px);
    padding-top: 36px;
  }

  .pilot-hero-copy h1 {
    font-size: 38px;
  }

  .pilot-assurance span {
    width: 100%;
  }
}
