:root{
  --tblr-font-sans-serif: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

body{
  font-family:var(--tblr-font-sans-serif);
}

.navbar-brand-image{
  width:auto;
  height:44px;
}

.ggq-brand{
  gap:.75rem;
}

.ggq-product{
  display:flex;
  flex-direction:column;
  line-height:1.05;
}

.ggq-product span{
  color:#f0c45d;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ggq-product strong{
  color:#fff;
  font-size:1.15rem;
  font-weight:700;
}

.header-tools{
  width:min(100%, 680px);
}

.crm-search{
  width:min(52vw, 640px);
}

.file-region-control{
  display:grid;
  gap:.3rem;
  min-width:0;
  width:100%;
}

.file-region-select{
  width:100%;
  min-width:12rem;
  border:0;
  padding-left:0;
  color:var(--tblr-body-color);
  background-color:transparent;
  font-size:1.35rem;
  font-weight:700;
  line-height:1.2;
  box-shadow:none;
}

.file-region-select:focus{
  box-shadow:0 0 0 .16rem rgba(var(--tblr-primary-rgb), .18);
}
}

.status-dot{
  width:.75rem;
  height:.75rem;
  display:inline-block;
  border-radius:999px;
  background:#94a3b8;
  box-shadow:0 0 0 2px rgba(255,255,255,.2);
}

.status-dot.ok{
  background:#2fb344;
}

.status-dot.warn{
  background:#d63939;
}

.prospect-list-card{
  position:sticky;
  top:1rem;
  max-height:calc(100dvh - 6.5rem);
  overflow:hidden;
}

.prospect-list-card .list-group{
  max-height:calc(100dvh - 16rem);
  overflow:auto;
}

.filter-chip{
  --tblr-btn-padding-x:.65rem;
  --tblr-btn-padding-y:.25rem;
  --tblr-btn-font-size:.78rem;
  border:1px solid var(--tblr-border-color);
  border-radius:var(--tblr-border-radius);
  background:#fff;
  color:var(--tblr-body-color);
  font-weight:600;
}

.filter-chip.is-active{
  background:var(--tblr-primary);
  border-color:var(--tblr-primary);
  color:#fff;
}

.prospect-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:.75rem;
  align-items:start;
  min-height:74px;
  text-align:left;
}

.prospect-row .row-main{
  min-width:0;
}

.prospect-row strong,
.prospect-row span,
.prospect-row small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.prospect-row strong{
  font-weight:700;
}

.prospect-row span,
.prospect-row small{
  color:var(--tblr-secondary);
  font-size:.78rem;
}

.prospect-row small{
  margin-top:.25rem;
  font-weight:600;
  white-space:normal;
  line-height:1.25;
}

.prospect-row.is-active{
  background:var(--tblr-primary-lt);
  box-shadow:inset 3px 0 0 var(--tblr-primary);
}

.prospect-row.is-active .row-main span,
.prospect-row.is-active .row-main small{
  color:var(--tblr-secondary);
}

.prospect-workbench{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(18rem, 20rem);
  gap:1rem;
  align-items:start;
}

.prospect-main{
  display:grid;
  gap:1rem;
  min-width:0;
}

.prospect-rail{
  position:sticky;
  top:1rem;
  display:grid;
  gap:1rem;
  min-width:0;
}

.hero-card{
  overflow:hidden;
  border-color:rgba(var(--tblr-primary-rgb), .2);
  background:
    radial-gradient(circle at top right, rgba(var(--tblr-primary-rgb), .11), transparent 34%),
    linear-gradient(180deg, #fff, var(--tblr-bg-surface-secondary));
}

.hero-top{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(9rem, auto);
  gap:1rem;
  align-items:start;
}

.hero-eyebrow{
  margin-bottom:.35rem;
  color:var(--tblr-secondary);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.prospect-title{
  margin:0;
  font-size:2.15rem;
  line-height:1.08;
  letter-spacing:-.035em;
}

.record-meta{
  margin:.45rem 0 0;
  color:var(--tblr-secondary);
  font-weight:600;
}

.hero-badges{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-top:.8rem;
}

.public-review-badge{
  border:1px solid rgba(var(--tblr-cyan-rgb), .18);
}

.score-token{
  display:flex;
  min-width:10rem;
  padding:1rem;
  flex-direction:column;
  align-items:flex-start;
  gap:.25rem;
  border:1px solid rgba(var(--tblr-green-rgb), .2);
  border-radius:var(--tblr-border-radius-lg);
  background:#fff;
  box-shadow:0 .75rem 2rem rgba(15, 23, 42, .06);
}

.score-token span{
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--tblr-secondary);
}

.score-token strong{
  color:var(--tblr-green);
  font-size:2rem;
  line-height:1;
}

.score-token small{
  color:var(--tblr-secondary);
  font-weight:600;
  line-height:1.25;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin-top:1.1rem;
}

.registry-card,
.process-card{
  margin-top:0;
}

.registry-card{
  border-color:rgba(var(--tblr-primary-rgb), .22);
  background:linear-gradient(180deg, rgba(var(--tblr-primary-rgb), .045), #fff 52%);
}

.registry-head,
.process-head{
  display:flex;
  align-items:start;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:1rem;
}

.registry-head h3,
.process-head h3{
  margin:0;
  font-size:1.15rem;
}

.process-head p:last-child{
  max-width:42rem;
  margin:.35rem 0 0;
  color:var(--tblr-secondary);
  line-height:1.45;
}

.registry-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:.65rem;
}

.registry-grid div{
  min-width:0;
  padding:.95rem 1rem;
  border:1px solid var(--tblr-border-color);
  border-radius:var(--tblr-border-radius);
  background:#fff;
}

.registry-grid span{
  display:block;
  margin-bottom:.25rem;
  color:var(--tblr-secondary);
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.registry-grid strong{
  display:block;
  color:var(--tblr-body-color);
  font-size:.95rem;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.req-source-card{
  grid-column:1 / -1;
}

.wide-source-card{
  grid-column:1 / -1;
}

.wide-source-card .kv,
.req-source-card .kv{
  grid-template-columns:9rem minmax(0,1fr);
}

.crawl-source-card{
  background:linear-gradient(180deg, var(--tblr-bg-surface-secondary), #fff 40%);
}

.req-stack{
  display:grid;
  grid-template-columns:1fr;
  gap:.65rem;
  margin-top:.85rem;
}

.req-row{
  display:block;
  padding:.95rem 1rem;
  border:1px solid var(--tblr-border-color);
  border-radius:var(--tblr-border-radius);
  background:#fff;
}

.req-row span{
  display:block;
  margin-bottom:.35rem;
  color:var(--tblr-secondary);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.req-row strong{
  display:block;
  color:var(--tblr-body-color);
  font-size:.96rem;
  line-height:1.5;
  overflow-wrap:anywhere;
}

.req-person-list{
  display:grid;
  grid-template-columns:1fr;
  gap:.35rem;
  margin:0;
  padding:0;
  list-style:none;
  font-weight:600;
}

.req-person-list li{
  padding:.5rem .65rem;
  border:1px solid rgba(var(--tblr-secondary-rgb), .14);
  border-radius:var(--tblr-border-radius);
  background:var(--tblr-bg-surface-secondary);
  line-height:1.35;
}

.process-card{
  border-color:rgba(var(--tblr-blue-rgb), .25);
  box-shadow:0 .75rem 2rem rgba(15, 23, 42, .05);
}

.process-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}

.process-note,
.process-actions{
  grid-column:1 / -1;
}

.process-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.75rem;
}

.activity-history{
  margin-top:0;
}

.activity-history h4{
  margin:0 0 .75rem;
  color:var(--tblr-secondary);
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.activity-row{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:.75rem;
  padding:.75rem 0;
  border-top:1px solid var(--tblr-border-color);
}

.activity-row:first-of-type{
  border-top:0;
  padding-top:0;
}

.activity-row strong,
.activity-row span{
  display:block;
}

.activity-row span{
  margin-top:.2rem;
  color:var(--tblr-secondary);
  overflow-wrap:anywhere;
}

.activity-row small{
  color:var(--tblr-secondary);
  white-space:nowrap;
}

.activity-row-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:.4rem;
}

.empty-history{
  margin-top:1rem;
  padding:.75rem;
  border:1px dashed var(--tblr-border-color);
  border-radius:var(--tblr-border-radius);
  background:var(--tblr-bg-surface-secondary);
}

.calendar-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.65rem;
  margin-top:1rem;
  padding-top:1rem;
  border-top:1px solid var(--tblr-border-color);
}

.calendar-notes-field{
  margin-top:1rem;
  padding:.85rem;
  border:1px solid var(--tblr-border-color);
  border-radius:var(--tblr-border-radius);
  background:var(--tblr-bg-surface-secondary);
}

.calendar-notes-field span{
  display:block;
  margin-bottom:.45rem;
  color:var(--tblr-secondary);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.calendar-notes-field pre{
  margin:0;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  color:var(--tblr-body-color);
  font-family:var(--tblr-font-sans-serif);
  font-size:.88rem;
  line-height:1.45;
}

.calendar-results{
  display:grid;
  gap:.5rem;
  margin-top:.75rem;
}

.calendar-result{
  padding:.65rem .75rem;
  border:1px solid var(--tblr-border-color);
  border-radius:var(--tblr-border-radius);
  background:var(--tblr-bg-surface-secondary);
}

.calendar-result strong,
.calendar-result span,
.calendar-result small{
  display:block;
}

.calendar-result span,
.calendar-result small{
  color:var(--tblr-secondary);
}

.cta-row{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin-top:1rem;
}

.section-head{
  display:flex;
  align-items:start;
  justify-content:space-between;
  gap:1rem;
  margin-bottom:.85rem;
}

.section-head h3,
.rail-card h3,
.why-card h3{
  margin:0 0 .75rem;
  font-size:1.1rem;
}

.section-head h3{
  margin-bottom:0;
}

.why-card{
  border-color:rgba(var(--tblr-green-rgb), .22);
}

.why-card p,
.pitch-rail-card p{
  color:var(--tblr-secondary);
  line-height:1.55;
}

.fit-strip{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin-top:1rem;
}

.fit-strip span{
  padding:.4rem .55rem;
  border:1px solid var(--tblr-border-color);
  border-radius:999px;
  background:var(--tblr-bg-surface-secondary);
  color:var(--tblr-secondary);
  font-size:.8rem;
}

.fit-strip strong{
  color:var(--tblr-body-color);
}

.kv{
  display:grid;
  grid-template-columns:5.5rem minmax(0,1fr);
  gap:.45rem .75rem;
  margin-top:.75rem;
  font-size:.875rem;
}

.kv span{
  color:var(--tblr-secondary);
  font-weight:600;
}

.kv strong{
  min-width:0;
  overflow-wrap:anywhere;
}

.rail-card{
  box-shadow:0 .65rem 1.6rem rgba(15, 23, 42, .045);
}

.rail-card h3{
  margin-bottom:.5rem;
}

.rail-kv{
  grid-template-columns:4.8rem minmax(0,1fr);
  font-size:.84rem;
}

.rail-kv span{
  white-space:nowrap;
}

.rail-kv a{
  display:inline-block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  vertical-align:bottom;
  white-space:nowrap;
}

.rail-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:.75rem;
}

.pitch-rail-card{
  border-color:rgba(var(--tblr-primary-rgb), .2);
}

.prospect-identity-card{
  border-color:rgba(var(--tblr-primary-rgb), .22);
  background:
    radial-gradient(circle at top right, rgba(var(--tblr-primary-rgb), .09), transparent 38%),
    #fff;
}

.prospect-identity-card h3{
  font-size:1.25rem;
}

.rail-prospect-meta{
  margin:.35rem 0 0;
  color:var(--tblr-secondary);
  font-weight:600;
  line-height:1.45;
}

.rail-link-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin-top:.85rem;
}

.entity-rail-card h3{
  line-height:1.25;
  overflow-wrap:anywhere;
}

.entity-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.4rem;
  margin-top:.75rem;
}

.notes-card{
  border-color:rgba(var(--tblr-secondary-rgb), .16);
}

.light-actions,
.research-details{
  margin-top:1rem;
  border:1px solid var(--tblr-border-color);
  border-radius:var(--tblr-border-radius);
  background:#fff;
}

.light-actions summary,
.research-details summary{
  padding:.75rem 1rem;
  color:var(--tblr-secondary);
  font-weight:700;
  cursor:pointer;
}

.compact-actions,
.research-grid{
  padding:0 1rem 1rem;
}

.research-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:.75rem;
}

.research-grid .registry-card{
  grid-column:1 / -1;
}

.source-card{
  padding:1rem;
  border:1px solid var(--tblr-border-color);
  border-radius:var(--tblr-border-radius);
  background:#fff;
}

.source-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
}

.source-card h3{
  margin:0;
  font-size:1rem;
}

.req-badge{
  display:inline-flex;
  padding:.2rem .45rem;
  border-radius:var(--tblr-border-radius);
  background:var(--tblr-danger);
  color:#fff;
  font-size:.7rem;
  font-weight:700;
}

.empty-state{
  padding:2rem;
  color:var(--tblr-secondary);
  text-align:center;
}

@media (max-width:1199.98px){
  .prospect-workbench{
    grid-template-columns:1fr;
  }

  .prospect-rail{
    position:static;
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:991.98px){
  .prospect-list-card{
    position:static;
    max-height:none;
  }

  .prospect-list-card .list-group{
    max-height:22rem;
  }

  .prospect-workbench{
    grid-template-columns:1fr;
  }

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

  .registry-grid,
  .process-form,
  .research-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:767.98px){
  .navbar .container-xl{
    gap:.75rem;
  }

  .ggq-product{
    display:none;
  }

  .header-tools{
    width:100%;
    flex:1 0 100%;
    order:3;
  }

  .crm-search{
    width:100%;
  }

  .prospect-title{
    font-size:1.7rem;
  }

  .record-head{
    grid-template-columns:1fr;
  }

  .hero-top,
  .prospect-rail{
    grid-template-columns:1fr;
  }

  .score-token{
    min-width:0;
  }
}
