.opp-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; margin-bottom: 16px; }
.opp-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.dim-row { display: grid; grid-template-columns: 180px 1fr 70px 70px; gap: 10px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--line); }
.tree { list-style: none; padding: 0; margin: 0; }
.tree ul { list-style: none; padding-inline-start: 18px; margin: 4px 0; border-inline-start: 1px dashed var(--line); }
.tree li { padding: 4px 0; }
.tree .node {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  padding: 8px 10px; border-radius: 8px;
}
.tree .node:hover { background: var(--surface-2); }
.version-list { display: flex; flex-direction: column; gap: 8px; }
.version-item {
  display: flex; justify-content: space-between; gap: 10px; padding: 10px 12px;
  border: 1px solid var(--line); border-radius: 10px; background: var(--surface);
}
.version-item.current { border-color: var(--pine); background: var(--pine-soft); }
.hero-week {
  display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; margin-bottom: 16px;
}
.action-item {
  display: grid; grid-template-columns: 1fr auto; gap: 8px;
  padding: 12px 0; border-bottom: 1px solid var(--line);
}
.login-demos { font-size: 0.8rem; background: var(--surface-2); padding: 10px; border-radius: 8px; margin-top: 12px; }
.cookie-bar {
  position: fixed; bottom: 0; inset-inline: 0; background: var(--navy); color: #fff;
  padding: 12px 18px; display: flex; justify-content: space-between; gap: 12px; align-items: center; z-index: 70;
}
.settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.weight-row { display: grid; grid-template-columns: 1fr 80px; gap: 8px; align-items: center; margin-bottom: 8px; }
.timeline { border-inline-start: 2px solid var(--line); padding-inline-start: 16px; margin-inline-start: 8px; }
.tl-item { position: relative; margin-bottom: 16px; }
.tl-item::before {
  content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--pine);
  position: absolute; inset-inline-start: -22px; top: 4px;
}
.stat-pair { display: flex; gap: 24px; }
.query-box { display: flex; gap: 8px; margin-bottom: 12px; }
.split { display: grid; grid-template-columns: 1.3fr 0.7fr; gap: 14px; }
@media (max-width: 1100px) {
  .funnel .step::after { content: none !important; }
}
@media (max-width: 980px) {
  .split, .settings-grid, .dim-row { grid-template-columns: 1fr; }
}
.login-points { margin-top: 28px; display: grid; gap: 10px; }
.login-points div { display: flex; gap: 10px; align-items: flex-start; color: rgba(255,255,255,0.86); font-size: 0.92rem; }
.dot { width: 8px; height: 8px; border-radius: 50%; background: #3ddc97; margin-top: 6px; flex: none; }
