/* Command Center — layout-only.
   All colors / typography / radii consume tokens from notion.css.
   Artemis Story 6B. */

.app-shell {
  display: grid;
  grid-template-columns: var(--sidebar-width) 1fr;
  min-height: calc(100vh - 60px);
  background: var(--bg-page, #fff);
  color: var(--text-primary);
}

.sidebar-aside {
  position: sticky;
  top: 0;
  align-self: start;
  height: 100vh;
  border-right: 1px solid var(--sidebar-border);
  background: var(--sidebar-bg);
  transition: width 0.15s ease;
  overflow: hidden;
}

.sidebar-aside.collapsed {
  width: var(--sidebar-width-collapsed);
}

.sidebar-aside .sidebar-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 12px 8px;
}

.sidebar-aside .sidebar-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px 14px;
}

.sidebar-aside .sidebar-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  letter-spacing: -0.01em;
}

.sidebar-aside .mobile-menu-btn {
  display: none;
  margin-left: auto;
  background: transparent;
  border: 0;
  color: var(--text-primary);
  font-size: 16px;
  cursor: pointer;
}

.sidebar-aside .sidebar-nav {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
}

.sidebar-aside .nav-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 8px;
  border-radius: 4px;
  font-size: 14px;
  color: var(--sidebar-item-color);
  text-decoration: none;
  cursor: pointer;
  user-select: none;
}

.sidebar-aside .nav-item:hover {
  background: var(--sidebar-item-hover-bg);
}

.sidebar-aside .nav-item.active {
  background: var(--sidebar-item-active-bg);
  color: var(--sidebar-item-color-active);
  font-weight: 500;
}

.sidebar-aside .nav-item .icon {
  font-size: var(--sidebar-icon-size);
  width: 22px;
  text-align: center;
}

.sidebar-aside .nav-item[data-soon="true"] {
  opacity: 0.55;
  cursor: not-allowed;
}

.sidebar-aside .nav-item .soon-pill {
  margin-left: 6px;
  font-size: 10px;
  padding: 1px 6px;
  border-radius: 9px;
  background: rgba(0, 0, 0, 0.06);
  color: var(--text-muted);
  text-transform: uppercase;
}

.sidebar-aside .sidebar-section-label {
  margin: 12px 8px 4px;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--sidebar-section-label-color);
}

.sidebar-aside .sidebar-toggle {
  margin-top: auto;
  padding: 6px 8px;
}

.sidebar-aside .sidebar-toggle .toggle-btn {
  background: transparent;
  border: 0;
  color: var(--text-muted);
  font-size: 12px;
  cursor: pointer;
  padding: 4px 6px;
}

.command-center-main {
  padding: 16px 20px;
  min-width: 0;
}

/* Email Hub min-height so the tab fills the viewport when active. */
#email-hub-tab:not([hidden]) {
  min-height: calc(100vh - 60px);
}

/* === Signal cards === */

.command-center-signals {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 20px;
}

.signal-card {
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--surface, #fff);
  box-shadow: var(--shadow-card, 0 1px 0 rgba(0, 0, 0, 0.04));
  padding: 14px 16px;
}

.signal-card-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.signal-card-title {
  font-size: 14px;
  font-weight: 600;
  margin: 0;
  color: var(--text-primary);
}

.signal-card-count {
  display: inline-block;
  min-width: 22px;
  text-align: center;
  padding: 1px 6px;
  border-radius: 10px;
  background: var(--bg-medium, rgba(0, 0, 0, 0.06));
  font-size: 12px;
  font-weight: 600;
  color: var(--text-primary);
}

.signal-card-failed .signal-card-count {
  background: rgba(232, 76, 76, 0.12);
  color: #c62828;
}

.signal-card-awaiting .signal-card-count {
  background: rgba(35, 131, 226, 0.12);
  color: #1f6fd0;
}

.signal-card-viewall {
  margin-left: auto;
  background: transparent;
  border: 0;
  color: var(--text-muted);
  font-size: 12px;
  cursor: pointer;
}

.signal-card-body {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.signal-card-chip {
  display: flex;
  align-items: baseline;
  gap: 8px;
  border: 1px solid var(--border-light);
  border-radius: 4px;
  background: transparent;
  padding: 6px 8px;
  text-align: left;
  cursor: pointer;
  font-family: inherit;
}

.signal-card-chip:hover {
  background: var(--sidebar-item-hover-bg);
}

.signal-card-chip-slug {
  font-size: 13px;
  font-weight: 500;
  color: var(--text-primary);
}

.signal-card-chip-sub {
  font-size: 12px;
  color: var(--text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 220px;
}

.signal-card-allclear {
  font-size: 13px;
  color: var(--text-muted);
  padding: 6px 4px;
}

/* === Iframe-hub tab + chibi mount === */

.hub-iframe-tab {
  background: var(--bg-page, #fff);
  padding: 0;
  height: calc(100vh - 120px);
}

.hub-iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: var(--surface, #fff);
}

.hub-placeholder {
  border: 1px dashed var(--border);
  border-radius: 6px;
  padding: 20px;
  color: var(--text-muted);
  font-size: 13px;
  background: var(--surface, #fff);
}

.artemis-chibi-mount {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1000;
  pointer-events: auto;
}

.artemis-chibi-mascot {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  cursor: pointer;
  transition: transform 0.15s ease;
}

.artemis-chibi-mascot:hover {
  transform: scale(1.06);
}

/* === Mobile responsive === */

@media (max-width: 768px) {
  .app-shell {
    grid-template-columns: 1fr;
  }
  .sidebar-aside {
    position: fixed;
    inset: 0 auto 0 0;
    width: var(--sidebar-width);
    transform: translateX(-100%);
    z-index: 100;
    transition: transform 0.18s ease;
  }
  .sidebar-aside.mobile-open {
    transform: translateX(0);
  }
  .sidebar-aside .mobile-menu-btn {
    display: inline-block;
  }
  .command-center-signals {
    grid-template-columns: 1fr;
  }
}

/* Offer Architect tab (Story 7) — layout-only; tokens come from notion.css */

.offer-architect-tab {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px;
}

.offer-architect-header h2 {
  margin: 0 0 4px;
  font-size: 22px;
  font-weight: 600;
}

.offer-architect-header .brand-context {
  color: var(--notion-text-secondary, #6b6b6b);
  font-size: 13px;
  margin: 0;
}

/* Margin Calculator (Story 7) */

.margin-calculator {
  border: 1px solid var(--notion-border, #e3e3e3);
  border-radius: 8px;
  padding: 16px;
  background: var(--notion-surface, #fff);
}

.margin-calculator-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.margin-calculator-header h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
}

.margin-calculator .product-group {
  margin-bottom: 24px;
}

.margin-calculator .product-name {
  font-size: 14px;
  font-weight: 600;
  margin: 0 0 8px;
}

.margin-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  overflow-x: auto;
}

.margin-table th,
.margin-table td {
  padding: 8px;
  border-bottom: 1px solid var(--notion-border, #e3e3e3);
  text-align: left;
}

.margin-table th {
  font-weight: 600;
  background: var(--notion-surface-muted, #f7f7f7);
  white-space: nowrap;
}

.margin-table .cell--editable {
  cursor: pointer;
}

.margin-table .cell--editable:hover {
  background: var(--notion-surface-hover, #f0f0f0);
}

.margin-table .cell--derived {
  color: var(--notion-text-secondary, #6b6b6b);
}

.margin-table .cell--invalid {
  background: var(--margin-red, #ffe0e0);
  transition: background 0.3s ease;
}

.margin-cell--green { color: var(--margin-green, #2f7a2f); font-weight: 600; }
.margin-cell--yellow { color: var(--margin-yellow, #b07000); font-weight: 600; }
.margin-cell--red { color: var(--margin-red, #c43535); font-weight: 600; }

.add-sku-btn,
.add-product-btn,
.save-btn {
  border: 1px solid var(--notion-border, #e3e3e3);
  border-radius: 4px;
  background: var(--notion-surface, #fff);
  padding: 6px 12px;
  font-size: 13px;
  cursor: pointer;
}

.add-sku-btn:hover,
.add-product-btn:hover,
.save-btn:hover {
  background: var(--notion-surface-hover, #f0f0f0);
}

.save-btn[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.margin-calculator--empty .empty-state {
  text-align: center;
  color: var(--notion-text-secondary, #6b6b6b);
  margin: 24px 0;
}

/* Dirty banner */

#dirty-banner-mount {
  background: var(--margin-yellow-bg, #fff8e0);
  border: 1px solid var(--margin-yellow, #b07000);
  border-radius: 4px;
  padding: 8px 12px;
  font-size: 13px;
  color: var(--margin-yellow, #b07000);
}

/* Offer Architect Panel (Story 7) */

.offer-architect-panel {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 24px;
}

.offer-campaign-picker {
  border-right: 1px solid var(--notion-border, #e3e3e3);
  padding-right: 16px;
}

.offer-campaign-card {
  padding: 8px 12px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 13px;
}

.offer-campaign-card:hover {
  background: var(--notion-surface-hover, #f0f0f0);
}

.offer-campaign-card.selected {
  background: var(--notion-surface-selected, #e7e7e7);
}

.offer-detail {
  min-width: 0;
}

.offer-section {
  margin-bottom: 24px;
}

.offer-section h2 {
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 8px;
}

.offer-section .notion-body p {
  margin: 8px 0;
}

.offer-section .notion-body ul {
  margin: 8px 0;
  padding-left: 20px;
}

/* Margin chips (Story 7) */

.margin-chip {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 12px;
  margin-right: 4px;
  margin-bottom: 4px;
}

.margin-chip--green { background: var(--margin-green-bg, #e3f5e3); color: var(--margin-green, #2f7a2f); }
.margin-chip--yellow { background: var(--margin-yellow-bg, #fff8e0); color: var(--margin-yellow, #b07000); }
.margin-chip--red { background: var(--margin-red-bg, #ffe0e0); color: var(--margin-red, #c43535); }
.margin-chip--missing { background: var(--notion-surface-muted, #f7f7f7); color: var(--notion-text-secondary, #6b6b6b); }

/* Approve warning + approved badge */

.approve-warning-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 11px;
  background: var(--margin-yellow-bg, #fff8e0);
  color: var(--margin-yellow, #b07000);
  margin-left: 8px;
}

.approved-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 12px;
  background: var(--chip-gold-bg, #fff4e0);
  color: var(--chip-gold, #b8860b);
  font-weight: 600;
}

/* Mobile responsive */

@media (max-width: 768px) {
  .offer-architect-panel {
    grid-template-columns: 1fr;
  }
  .offer-campaign-picker {
    border-right: none;
    border-bottom: 1px solid var(--notion-border, #e3e3e3);
    padding-right: 0;
    padding-bottom: 16px;
  }
  .margin-table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
}

/* Congruence Auditor tab (Story 8) — layout-only; tokens come from notion.css */

.congruence-auditor-tab {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px;
}

.congruence-auditor-header h2 {
  margin: 0 0 4px;
  font-size: 22px;
  font-weight: 600;
}

.congruence-auditor-header .brand-context {
  color: var(--notion-text-secondary, #6b6b6b);
  font-size: 13px;
}

.congruence-audit-panel {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 24px;
}

.audit-summary {
  border-bottom: 1px solid var(--notion-border, #e3e3e3);
  padding-bottom: 12px;
  margin-bottom: 16px;
}

.audit-counts {
  display: flex;
  gap: 8px;
  margin: 8px 0;
}

.count-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 12px;
}

.count-badge--error { background: var(--margin-red-bg, #ffe0e0); color: var(--margin-red, #c43535); }
.count-badge--warning { background: var(--margin-yellow-bg, #fff8e0); color: var(--margin-yellow, #b07000); }
.count-badge--info { background: var(--notion-surface-muted, #f7f7f7); color: var(--notion-text-secondary, #6b6b6b); }

.audit-status-bar {
  display: flex;
  height: 6px;
  border-radius: 3px;
  overflow: hidden;
  background: var(--notion-surface-muted, #f7f7f7);
}

.audit-status-bar .bar-error { background: var(--margin-red, #c43535); }
.audit-status-bar .bar-warning { background: var(--margin-yellow, #b07000); }
.audit-status-bar .bar-info { background: var(--notion-text-secondary, #6b6b6b); }

.audit-item {
  border: 1px solid var(--notion-border, #e3e3e3);
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 12px;
  border-left-width: 4px;
}

.audit-item--error { border-left-color: var(--margin-red, #c43535); }
.audit-item--warning { border-left-color: var(--margin-yellow, #b07000); }
.audit-item--info { border-left-color: var(--notion-text-secondary, #6b6b6b); }

.item-header { display: flex; gap: 8px; align-items: center; margin-bottom: 8px; font-weight: 600; }
.item-category { color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px; }
.item-asset { font-size: 13px; }
.item-evidence { margin: 8px 0; font-size: 13px; }
.item-evidence code { background: var(--notion-surface-muted, #f7f7f7); padding: 1px 4px; border-radius: 3px; font-size: 11px; }
.item-fix { margin: 8px 0; font-size: 13px; }
.item-controls { display: flex; gap: 12px; align-items: flex-start; margin-top: 12px; }
.item-status { padding: 4px 8px; border-radius: 4px; border: 1px solid var(--notion-border, #e3e3e3); font-size: 13px; }
.item-notes { flex: 1; padding: 6px 8px; border-radius: 4px; border: 1px solid var(--notion-border, #e3e3e3); font-size: 12px; font-family: inherit; resize: vertical; min-height: 32px; }
.item-status[disabled], .item-notes[disabled] { opacity: 0.6; cursor: not-allowed; }

@media (max-width: 768px) {
  .congruence-audit-panel { grid-template-columns: 1fr; }
}

/* Launch QA Reviewer tab (Story 9) — 4-tab UI; tokens come from notion.css */

.launch-qa-reviewer-tab {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 24px;
}

.launch-qa-reviewer-header h2 {
  margin: 0 0 4px;
  font-size: 22px;
  font-weight: 600;
}

.launch-qa-tabs {
  display: flex;
  gap: 4px;
  border-bottom: 1px solid var(--notion-border, #e3e3e3);
  margin-bottom: 16px;
  overflow-x: auto;
}

.launch-qa-tab-button {
  padding: 8px 12px;
  background: transparent;
  border: none;
  border-bottom: 2px solid transparent;
  font-size: 13px;
  cursor: pointer;
  color: var(--notion-text-secondary, #6b6b6b);
  white-space: nowrap;
}

.launch-qa-tab-button:hover {
  color: var(--notion-text-primary, #37352f);
}

.launch-qa-tab-button[aria-selected="true"] {
  color: var(--notion-text-primary, #37352f);
  border-bottom-color: var(--margin-green, #2f7a2f);
  font-weight: 600;
}

.launch-qa-tab-button .tab-count {
  margin-left: 4px;
  font-size: 11px;
  color: var(--notion-text-secondary, #6b6b6b);
}

/* Reuse Story 8's audit-item styles for qaItems — they're structurally identical */
.qa-item { /* same as .audit-item */
  border: 1px solid var(--notion-border, #e3e3e3);
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 12px;
  border-left-width: 4px;
}
.qa-item--error { border-left-color: var(--margin-red, #c43535); }
.qa-item--warning { border-left-color: var(--margin-yellow, #b07000); }
.qa-item--info { border-left-color: var(--notion-text-secondary, #6b6b6b); }

@media (max-width: 768px) {
  .launch-qa-tabs { padding-bottom: 4px; }
}

/* ─── Daily Briefing (Artemis v2 front door) ───────────────────────────── */

.db-panel { padding: 8px 0 32px; max-width: 960px; }
.db-panel--empty { padding: 40px 0; text-align: center; color: var(--notion-text-secondary, #6b6b6b); }

.db-head { margin-bottom: 24px; }
.db-head__date { font-size: 13px; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 4px; text-transform: uppercase; letter-spacing: 0.04em; }
.db-head__title { font-size: 28px; margin: 0 0 4px; letter-spacing: -0.01em; }
.db-head__sub { color: var(--notion-text-secondary, #6b6b6b); font-size: 14px; margin: 0; }

.db-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 28px; }
.db-kpi { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 14px 16px; }
.db-kpi__label { font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); text-transform: uppercase; letter-spacing: 0.03em; margin-bottom: 6px; }
.db-kpi__value { font-size: 22px; font-weight: 600; letter-spacing: -0.01em; }
.db-kpi__delta { font-size: 12px; margin-top: 4px; }
.db-kpi__delta.delta-up { color: var(--margin-green, #2e7d32); }
.db-kpi__delta.delta-down { color: var(--margin-red, #c43535); }
.db-kpi__delta.delta-flat { color: var(--notion-text-secondary, #6b6b6b); }

.db-section { margin-bottom: 28px; }
.db-section__head { display: flex; align-items: baseline; gap: 12px; margin-bottom: 12px; }
.db-section__head h3 { font-size: 15px; margin: 0; font-weight: 600; }
.db-section__hint { color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; }
.db-empty { color: var(--notion-text-secondary, #6b6b6b); font-size: 14px; padding: 12px 0; }

.db-actions { display: grid; grid-template-columns: 1fr; gap: 8px; }
.db-action { display: grid; grid-template-columns: 32px 1fr auto; gap: 12px; align-items: center; padding: 12px 16px; background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-left-width: 4px; border-radius: 8px; }
.db-action--high   { border-left-color: var(--margin-red, #c43535); }
.db-action--medium { border-left-color: var(--margin-yellow, #b07000); }
.db-action--low    { border-left-color: var(--notion-text-secondary, #6b6b6b); }
.db-action__icon { font-size: 18px; text-align: center; }
.db-action__title { font-size: 14px; font-weight: 500; }
.db-action__reason { font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); margin-top: 2px; }
.db-action__cta { background: var(--notion-text, #1f1d1a); color: #fff; border: 0; padding: 6px 12px; border-radius: 6px; font-size: 13px; cursor: pointer; }
.db-action__cta:hover { background: #353230; }

.db-rollup { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.db-sig { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 6px; padding: 10px 12px; }
.db-sig__n { font-size: 18px; font-weight: 600; }
.db-sig__lbl { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); text-transform: uppercase; letter-spacing: 0.03em; }
.db-sig.sig--err  { border-color: var(--margin-red, #c43535); }
.db-sig.sig--warn { border-color: var(--margin-yellow, #b07000); }
.db-sig.sig--info { border-color: var(--notion-text-secondary, #6b6b6b); }
.db-sig.sig--zero .db-sig__n { color: var(--notion-text-secondary, #6b6b6b); opacity: 0.5; }

.db-chibi-section { margin-top: 24px; }
.db-chibi { display: grid; grid-template-columns: 48px 1fr; gap: 14px; align-items: flex-start; background: #faf9f7; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 14px 16px; }
.db-chibi__avatar { font-size: 28px; line-height: 1; }
.db-chibi__name { font-size: 13px; font-weight: 600; margin-bottom: 4px; }
.db-chibi__msg { font-size: 13px; color: var(--notion-text-secondary, #4a4a4a); line-height: 1.5; }

@media (max-width: 900px) {
  .db-kpis, .db-rollup { grid-template-columns: repeat(2, 1fr); }
}

/* ─── Observation Cards (Weekly Growth Operator layer) ─────────────────── */

.db-observations-section { margin-bottom: 24px; }
.obs-feed-head { display: flex; align-items: baseline; gap: 12px; margin-bottom: 10px; }
.obs-feed-head h3 { font-size: 15px; margin: 0; font-weight: 600; }
.obs-feed-head__pill { font-size: 10px; font-weight: 700; color: #8a6800; background: #fff3c4; border: 1px solid #f0d878; padding: 1px 6px; border-radius: 9999px; vertical-align: middle; margin-left: 6px; letter-spacing: 0.04em; }
.obs-feed-head__count { color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; }
.obs-feed { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.obs-empty { color: var(--notion-text-secondary, #6b6b6b); font-size: 14px; padding: 12px 0; }
.obs-empty__hint { font-size: 10px; font-weight: 700; color: #8a6800; background: #fff3c4; border: 1px solid #f0d878; padding: 1px 6px; border-radius: 9999px; margin-left: 6px; letter-spacing: 0.04em; }

.obs-card { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; }
.obs-card--accepted { border-color: #2e7d32; background: #f3faf3; }
.obs-card--dismissed { opacity: 0.5; }
.obs-card--converted { border-color: #1565c0; background: #f3f8fc; }
.obs-card__head { display: flex; align-items: center; gap: 8px; font-size: 12px; }
.obs-card__icon { font-size: 16px; }
.obs-card__type { font-weight: 600; color: var(--notion-text, #1f1d1a); text-transform: uppercase; letter-spacing: 0.04em; font-size: 11px; }
.obs-card__conf { color: var(--notion-text-secondary, #6b6b6b); font-size: 11px; padding: 1px 7px; border-radius: 9999px; border: 1px solid var(--notion-border, #e3e3e3); }
.obs-card__conf--high { color: #1f5e1f; background: #e0f0e0; border-color: #c2e0c2; }
.obs-card__conf--medium { color: #8a6800; background: #fff3c4; border-color: #f0d878; }
.obs-card__conf--low { color: #6b6b6b; }
.obs-card__status { margin-left: auto; font-size: 11px; padding: 1px 7px; border-radius: 9999px; border: 1px solid var(--notion-border, #e3e3e3); background: #f7f7f5; text-transform: uppercase; letter-spacing: 0.04em; }
.obs-card__title { font-size: 14px; font-weight: 600; margin: 0; }
.obs-card__obs { font-size: 13px; color: var(--notion-text, #1f1d1a); margin: 0; line-height: 1.45; }
.obs-card__evidence { list-style: none; padding: 8px 10px; margin: 0; background: #fafaf9; border-radius: 6px; }
.obs-card__evidence li { font-size: 12px; color: var(--notion-text-secondary, #4a4a4a); padding: 1px 0; }
.obs-card__evidence-src { font-weight: 600; color: var(--notion-text, #1f1d1a); }
.obs-card__rec { font-size: 12px; color: var(--notion-text, #1f1d1a); background: #fff8e6; border-left: 3px solid #f0d878; padding: 6px 10px; border-radius: 0 4px 4px 0; }
.obs-card__actions { display: flex; gap: 6px; flex-wrap: wrap; }
.obs-card__btn { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); padding: 4px 10px; border-radius: 5px; font-size: 12px; cursor: pointer; color: var(--notion-text, #1f1d1a); }
.obs-card__btn:hover { background: #f3f1ed; }
.obs-card__btn--primary { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.obs-card__btn--primary:hover { background: #353230; }
.obs-card__btn--ghost { color: var(--notion-text-secondary, #6b6b6b); }

@media (max-width: 900px) {
  .obs-feed { grid-template-columns: 1fr; }
}

/* ─── Weekly Growth Plan tab ───────────────────────────────────────────── */

.wp-panel { padding: 8px 0 32px; max-width: 1100px; }
.wp-empty { color: var(--notion-text-secondary, #6b6b6b); padding: 32px 0; text-align: center; }

.wp-head { margin-bottom: 24px; }
.wp-head__date { font-size: 13px; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 4px; text-transform: uppercase; letter-spacing: 0.04em; }
.wp-head__title { font-size: 28px; margin: 0 0 4px; letter-spacing: -0.01em; display: inline-flex; align-items: baseline; gap: 8px; }
.wp-head__pill { font-size: 11px; font-weight: 700; color: #8a6800; background: #fff3c4; border: 1px solid #f0d878; padding: 2px 8px; border-radius: 9999px; letter-spacing: 0.04em; vertical-align: middle; }
.wp-head__sub { color: var(--notion-text-secondary, #6b6b6b); font-size: 14px; margin: 0; }

.wp-first { background: linear-gradient(180deg, #fff8e6 0%, #fff 100%); border: 1px solid #f0d878; border-radius: 10px; padding: 18px 22px; margin-bottom: 28px; }
.wp-first__label { font-size: 11px; font-weight: 700; color: #8a6800; text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 6px; }
.wp-first__title { font-size: 18px; font-weight: 600; margin-bottom: 6px; }
.wp-first__why { font-size: 14px; color: var(--notion-text, #1f1d1a); line-height: 1.5; }

.wp-list { margin-bottom: 28px; }
.wp-list__head { display: flex; align-items: baseline; gap: 12px; margin-bottom: 12px; }
.wp-list__head h3 { font-size: 15px; margin: 0; font-weight: 600; }
.wp-list__count { color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; }

.wp-opp { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 14px 18px; margin-bottom: 10px; display: flex; flex-direction: column; gap: 10px; }
.wp-opp--deferred { opacity: 0.7; background: #f7f7f5; }
.wp-opp--dismissed { opacity: 0.4; }
.wp-opp--accepted { border-color: #2e7d32; background: #f3faf3; }

.wp-opp__head { display: flex; align-items: baseline; gap: 12px; }
.wp-opp__rank { font-size: 11px; font-weight: 700; color: var(--notion-text-secondary, #6b6b6b); background: #f7f7f5; padding: 2px 8px; border-radius: 4px; }
.wp-opp__title { font-size: 16px; margin: 0; font-weight: 600; flex: 1; }
.wp-opp__score { font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); font-variant-numeric: tabular-nums; padding: 2px 8px; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 4px; }
.wp-opp__status { font-size: 11px; padding: 2px 8px; border-radius: 9999px; border: 1px solid var(--notion-border, #e3e3e3); background: #f7f7f5; text-transform: uppercase; letter-spacing: 0.04em; }

.wp-opp__why { font-size: 13px; color: var(--notion-text, #1f1d1a); line-height: 1.45; }
.wp-opp__why-label { font-weight: 600; color: var(--notion-text-secondary, #6b6b6b); }

.wp-opp__row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.wp-opp__col { background: #fafaf9; border-radius: 6px; padding: 8px 10px; }
.wp-opp__row-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 2px; }
.wp-opp__row-val { font-size: 13px; line-height: 1.4; }

.wp-opp__meta { display: flex; flex-wrap: wrap; gap: 6px; }
.wp-opp__meta-pill { font-size: 11px; padding: 2px 8px; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 9999px; color: var(--notion-text-secondary, #4a4a4a); background: var(--notion-surface, #fff); }
.wp-opp__meta-pill--high { border-color: #c2e0c2; color: #1f5e1f; background: #e0f0e0; }
.wp-opp__meta-pill--medium { border-color: #f0d878; color: #8a6800; background: #fff3c4; }

.wp-opp__assets { font-size: 12px; }
.wp-opp__assets summary { cursor: pointer; color: var(--notion-text-secondary, #6b6b6b); }
.wp-opp__assets ul { margin: 6px 0 0; padding-left: 22px; }
.wp-opp__assets li { padding: 2px 0; }

.wp-opp__actions { display: flex; gap: 8px; }
.wp-opp__btn { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); padding: 5px 12px; border-radius: 5px; font-size: 13px; cursor: pointer; color: var(--notion-text, #1f1d1a); }
.wp-opp__btn:hover { background: #f3f1ed; }
.wp-opp__btn--primary { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.wp-opp__btn--primary:hover { background: #353230; }
.wp-opp__btn--ghost { color: var(--notion-text-secondary, #6b6b6b); }

.wp-history { border-top: 1px solid var(--notion-border, #e3e3e3); padding-top: 20px; }
.wp-history__title { font-size: 13px; font-weight: 600; color: var(--notion-text-secondary, #6b6b6b); text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 6px; }
.wp-history__placeholder { font-size: 13px; color: var(--notion-text-secondary, #6b6b6b); font-style: italic; }

/* ─── Growth Bet Drawer ────────────────────────────────────────────────── */

.gb-drawer-wrap { position: fixed; inset: 0; pointer-events: none; z-index: 1000; }
.gb-drawer-wrap--open { pointer-events: auto; }
.gb-drawer-backdrop { position: absolute; inset: 0; background: rgba(15, 17, 21, 0); transition: background 200ms ease; }
.gb-drawer-wrap--open .gb-drawer-backdrop { background: rgba(15, 17, 21, 0.35); }
.gb-drawer { position: absolute; right: 0; top: 0; height: 100%; width: min(640px, 96vw); background: var(--notion-surface, #fff); box-shadow: -16px 0 40px rgba(15, 17, 21, 0.18); transform: translateX(100%); transition: transform 220ms ease; overflow-y: auto; }
.gb-drawer-wrap--open .gb-drawer { transform: translateX(0); }
.gb-drawer__inner { padding: 18px 24px 32px; }

.gb-drawer__head { margin-bottom: 16px; padding-bottom: 12px; border-bottom: 1px solid var(--notion-border, #e3e3e3); }
.gb-drawer__head-row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.gb-pill { font-size: 10px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: #8a6800; background: #fff3c4; border: 1px solid #f0d878; padding: 2px 8px; border-radius: 9999px; }
.gb-close { background: none; border: 0; font-size: 24px; line-height: 1; cursor: pointer; color: var(--notion-text-secondary, #6b6b6b); padding: 0 4px; }
.gb-close:hover { color: var(--notion-text, #1f1d1a); }
.gb-drawer__title { font-size: 22px; margin: 0; letter-spacing: -0.01em; }
.gb-source { font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); margin-top: 4px; }

.gb-form { display: flex; flex-direction: column; gap: 12px; }
.gb-field { display: flex; flex-direction: column; gap: 4px; }
.gb-field__label { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; color: var(--notion-text-secondary, #6b6b6b); }
.gb-input { font: inherit; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 6px; padding: 7px 10px; background: var(--notion-surface, #fff); color: var(--notion-text, #1f1d1a); }
.gb-input:focus { outline: 2px solid #1f1d1a40; border-color: #1f1d1a80; }
.gb-input--ta { resize: vertical; font-family: inherit; }
.gb-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.gb-channels { display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px 12px; }
.gb-channel { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; cursor: pointer; }
.gb-channel input { cursor: pointer; }

.gb-banner { margin-top: 16px; padding: 10px 14px; border-radius: 6px; background: #e0f0e0; border: 1px solid #c2e0c2; color: #1f5e1f; font-size: 13px; }

.gb-drawer__foot { display: flex; gap: 8px; margin-top: 18px; padding-top: 12px; border-top: 1px solid var(--notion-border, #e3e3e3); }
.gb-btn { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); padding: 7px 14px; border-radius: 6px; font-size: 13px; cursor: pointer; color: var(--notion-text, #1f1d1a); }
.gb-btn:hover { background: #f3f1ed; }
.gb-btn--primary { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.gb-btn--primary:hover { background: #353230; }
.gb-btn--ghost { color: var(--notion-text-secondary, #6b6b6b); }

body.gb-drawer-open { overflow: hidden; }

@media (max-width: 900px) {
  .gb-grid-2 { grid-template-columns: 1fr; }
  .gb-channels { grid-template-columns: 1fr; }
}

/* ─── Brand Brain v2 — tabbed surface ──────────────────────────────────── */

.bb-pill { display: inline-block; font-size: 10px; font-weight: 700; color: #8a6800; background: #fff3c4; border: 1px solid #f0d878; padding: 1px 7px; border-radius: 9999px; vertical-align: middle; margin-left: 6px; letter-spacing: 0.04em; }

.bb2-shell { padding: 8px 0 32px; max-width: 1200px; }
.bb2-head { margin-bottom: 16px; }
.bb2-title { font-size: 26px; margin: 0 0 4px; letter-spacing: -0.01em; }
.bb2-sub { color: var(--notion-text-secondary, #6b6b6b); font-size: 14px; margin: 0; }

.bb2-nav { display: flex; gap: 4px; border-bottom: 1px solid var(--notion-border, #e3e3e3); margin-bottom: 18px; flex-wrap: wrap; }
.bb2-nav__btn { background: none; border: 0; border-bottom: 2px solid transparent; padding: 10px 14px; cursor: pointer; font: inherit; color: var(--notion-text-secondary, #6b6b6b); display: inline-flex; align-items: center; gap: 6px; font-size: 13px; }
.bb2-nav__btn:hover { color: var(--notion-text, #1f1d1a); }
.bb2-nav__btn--active { color: var(--notion-text, #1f1d1a); border-bottom-color: var(--notion-text, #1f1d1a); font-weight: 600; }
.bb2-nav__icon { font-size: 14px; }

.bb2-body { min-height: 200px; }

/* ─── Brand Brain — Products tab (markdown-per-product) ────────────────── */

.bb-prod { display: block; }
.bb-prod__head { display: flex; align-items: baseline; gap: 12px; margin-bottom: 12px; }
.bb-prod__head h3 { font-size: 16px; margin: 0; font-weight: 600; }
.bb-prod__count { color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; padding: 1px 7px; background: #f7f7f5; border-radius: 9999px; }

/* Side-by-side layout — sidebar 280px, editor fills the rest with no
   wasted right margin. Both columns share a common height so the editor
   textarea can fill the full panel height. */
.bb-prod__layout { display: grid; grid-template-columns: 260px 1fr; gap: 12px; min-height: 640px; }
.bb-prod__sidebar { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 6px; overflow-y: auto; }
.bb-prod__list { display: flex; flex-direction: column; gap: 2px; }
.bb-prod__item { display: flex; gap: 10px; align-items: center; padding: 8px; border: 0; background: none; border-radius: 6px; cursor: pointer; text-align: left; width: 100%; font: inherit; }
.bb-prod__item:hover { background: #f7f7f5; }
.bb-prod__item--active { background: #f3f1ed; }
.bb-prod__thumb { width: 36px; height: 36px; border-radius: 5px; object-fit: cover; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.bb-prod__thumb--blank { background: #f3f1ed; color: var(--notion-text-secondary, #6b6b6b); font-weight: 600; font-size: 14px; }
.bb-prod__item-body { flex: 1; min-width: 0; }
.bb-prod__item-title { font-size: 13px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bb-prod__item-meta { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* The right pane is a vertical flex container — title input, big
   textarea (flex:1), then footer. No structured form grid anymore. */
.bb-prod__detail { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; display: flex; flex-direction: column; overflow: hidden; }
.bb-prod__empty { color: var(--notion-text-secondary, #6b6b6b); padding: 24px; text-align: center; }
.bb-prod__empty--small { padding: 12px; font-size: 13px; }

.bb-prod__editor { display: flex; flex-direction: column; height: 100%; min-height: 600px; }

.bb-prod__editor-head { display: flex; align-items: center; gap: 10px; padding: 12px 16px; border-bottom: 1px solid var(--notion-border, #e3e3e3); }
.bb-prod__title-input { flex: 1; font: inherit; font-size: 18px; font-weight: 600; border: 0; background: transparent; padding: 4px 0; color: var(--notion-text, #1f1d1a); }
.bb-prod__title-input:focus { outline: none; }
.bb-prod__title-input::placeholder { color: var(--notion-text-secondary, #9c9892); font-weight: 400; }
.bb-prod__editor-meta { display: flex; gap: 6px; }
.bb-prod__pill { font-size: 11px; padding: 2px 8px; border-radius: 9999px; background: #f3f1ed; color: var(--notion-text-secondary, #6b6b6b); font-family: ui-monospace, 'SF Mono', Menlo, monospace; }
.bb-prod__pill--new { background: #fff3c4; color: #8a6800; font-family: inherit; }

.bb-prod__md { flex: 1; border: 0; padding: 16px 20px; font-family: ui-monospace, 'SF Mono', Menlo, 'Cascadia Code', monospace; font-size: 13px; line-height: 1.65; resize: none; background: var(--notion-surface, #fff); color: var(--notion-text, #1f1d1a); width: 100%; box-sizing: border-box; }
.bb-prod__md:focus { outline: none; background: #fafaf9; }
.bb-prod__md::placeholder { color: var(--notion-text-secondary, #c2bfb8); white-space: pre-line; }

.bb-prod__editor-foot { display: flex; align-items: center; gap: 8px; padding: 12px 16px; border-top: 1px solid var(--notion-border, #e3e3e3); background: #fafaf9; }
.bb-prod__btn { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); padding: 7px 14px; border-radius: 6px; font-size: 13px; cursor: pointer; color: var(--notion-text, #1f1d1a); font: inherit; }
.bb-prod__btn:hover { background: #f3f1ed; }
.bb-prod__btn--primary { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.bb-prod__btn--primary:hover { background: #353230; }
.bb-prod__btn--ghost { color: var(--margin-red, #c43535); border-color: #f0c2c2; background: transparent; }
.bb-prod__btn--ghost:hover { background: #f9e0e0; }
.bb-prod__banner { margin-left: auto; padding: 4px 10px; border-radius: 6px; font-size: 12px; }
.bb-prod__banner--ok { background: #e0f0e0; color: #1f5e1f; }
.bb-prod__banner--err { background: #f9e0e0; color: #6e2828; }

/* ─── Brand Brain — Reviews tab ────────────────────────────────────────── */

.bb-rev { display: block; }
.bb-rev__head { margin-bottom: 14px; }
.bb-rev__head h3 { font-size: 16px; margin: 0 0 4px; font-weight: 600; }
.bb-rev__sub { color: var(--notion-text-secondary, #6b6b6b); font-size: 13px; margin: 0; }
.bb-rev__summary { display: flex; gap: 12px; margin-bottom: 16px; }
.bb-rev__stat { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 12px 16px; flex: 0 0 auto; min-width: 120px; }
.bb-rev__stat-n { font-size: 22px; font-weight: 600; }
.bb-rev__stat-lbl { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); text-transform: uppercase; letter-spacing: 0.04em; }

.bb-rev__themes { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 12px; margin-bottom: 16px; }
.bb-rev__themes-label { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 8px; }
.bb-rev__themes-list { display: flex; flex-wrap: wrap; gap: 6px; }
.bb-rev__theme { background: #f7f7f5; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 9999px; padding: 4px 10px; font-size: 12px; cursor: pointer; font: inherit; color: var(--notion-text, #1f1d1a); }
.bb-rev__theme:hover { background: #ece9e3; }
.bb-rev__theme--active { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.bb-rev__theme--clear { color: var(--margin-red, #c43535); }
.bb-rev__theme span { color: var(--notion-text-secondary, #6b6b6b); margin-left: 4px; font-variant-numeric: tabular-nums; }
.bb-rev__theme--active span { color: #fff; opacity: 0.85; }

.bb-rev__feed { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.bb-rev__card { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 12px 14px; display: flex; flex-direction: column; gap: 6px; }
.bb-rev__card-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.bb-rev__stars { color: #e0a800; font-size: 14px; letter-spacing: 1px; }
.bb-rev__author { font-size: 12px; color: var(--notion-text-secondary, #4a4a4a); }
.bb-rev__verified { color: #1f5e1f; font-weight: 500; }
.bb-rev__date { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); margin-left: auto; }
.bb-rev__title { font-size: 14px; font-weight: 600; margin: 0; }
.bb-rev__body { font-size: 13px; line-height: 1.5; margin: 0; }
.bb-rev__card-foot { display: flex; flex-wrap: wrap; gap: 4px; }
.bb-rev__product { font-size: 10px; padding: 1px 7px; background: #1f1d1a10; border-radius: 9999px; color: var(--notion-text, #1f1d1a); text-transform: uppercase; letter-spacing: 0.04em; font-weight: 600; }
.bb-rev__tag { font-size: 10px; padding: 1px 7px; background: #fff3c4; border: 1px solid #f0d878; border-radius: 9999px; color: #8a6800; }
.bb-rev__empty { color: var(--notion-text-secondary, #6b6b6b); padding: 24px; text-align: center; }

/* ─── Brand Brain — Reddit & forum mentions tab ───────────────────────── */

.bb-men__head { margin-bottom: 14px; }
.bb-men__head h3 { font-size: 16px; margin: 0 0 4px; font-weight: 600; }
.bb-men__sub { color: var(--notion-text-secondary, #6b6b6b); font-size: 13px; margin: 0; }
.bb-men__controls { display: flex; gap: 12px; align-items: center; margin-bottom: 10px; flex-wrap: wrap; }
.bb-men__search { flex: 1 1 280px; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 6px; padding: 7px 10px; font: inherit; }
.bb-men__filters { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.bb-men__filter { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 9999px; padding: 4px 10px; font-size: 12px; cursor: pointer; font: inherit; color: var(--notion-text, #1f1d1a); }
.bb-men__filter:hover { background: #f3f1ed; }
.bb-men__filter--active { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.bb-men__filter-divider { color: var(--notion-text-secondary, #6b6b6b); padding: 0 4px; }
.bb-men__count { font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 10px; }

.bb-men__feed { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.bb-men__card { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 12px 14px; display: flex; flex-direction: column; gap: 6px; }
.bb-men__card-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 12px; }
.bb-men__src { font-weight: 600; }
.bb-men__sent { font-size: 11px; padding: 1px 7px; border-radius: 9999px; text-transform: uppercase; letter-spacing: 0.04em; font-weight: 600; }
.bb-men__sent--pos { background: #e0f0e0; color: #1f5e1f; }
.bb-men__sent--neg { background: #f9e0e0; color: #6e2828; }
.bb-men__sent--mix { background: #fff3c4; color: #8a6800; }
.bb-men__sent--neu { background: #f7f7f5; color: var(--notion-text-secondary, #6b6b6b); }
.bb-men__date { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); margin-left: auto; }
.bb-men__score { font-size: 11px; color: var(--notion-text-secondary, #4a4a4a); }
.bb-men__title { font-size: 14px; font-weight: 600; margin: 0; }
.bb-men__snippet { font-size: 13px; line-height: 1.5; margin: 0; color: var(--notion-text, #1f1d1a); }
.bb-men__card-foot { display: flex; align-items: center; gap: 12px; font-size: 12px; }
.bb-men__author { color: var(--notion-text-secondary, #6b6b6b); }
.bb-men__link { color: #1565c0; }
.bb-men__link:hover { text-decoration: underline; }
.bb-men__empty { color: var(--notion-text-secondary, #6b6b6b); padding: 24px; text-align: center; }

/* ─── Brand Brain — Competitors tab ────────────────────────────────────── */

.bb-cmp__head { margin-bottom: 14px; }
.bb-cmp__head h3 { font-size: 16px; margin: 0 0 4px; font-weight: 600; }
.bb-cmp__sub { color: var(--notion-text-secondary, #6b6b6b); font-size: 13px; margin: 0; }
.bb-cmp__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.bb-cmp__card { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 14px 16px; display: flex; flex-direction: column; gap: 8px; }
.bb-cmp__card-head { display: flex; align-items: baseline; gap: 10px; }
.bb-cmp__name { font-size: 16px; margin: 0; font-weight: 600; }
.bb-cmp__tier { font-size: 10px; padding: 2px 7px; border-radius: 9999px; text-transform: uppercase; letter-spacing: 0.04em; font-weight: 600; }
.bb-cmp__tier--budget { background: #e0f0e0; color: #1f5e1f; }
.bb-cmp__tier--mid { background: #fff3c4; color: #8a6800; }
.bb-cmp__tier--premium { background: #f0e0f0; color: #6e2880; }
.bb-cmp__url { color: #1565c0; font-size: 12px; }
.bb-cmp__positioning { font-size: 13px; line-height: 1.45; }
.bb-cmp__row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; background: #fafaf9; border-radius: 6px; padding: 8px 10px; }
.bb-cmp__col { font-size: 12px; }
.bb-cmp__lbl { font-size: 10px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 2px; font-weight: 600; }
.bb-cmp__val { font-size: 13px; }
.bb-cmp__block { font-size: 12px; }
.bb-cmp__block ul { margin: 4px 0 0; padding-left: 18px; line-height: 1.5; }
.bb-cmp__hooks li, .bb-cmp__products li, .bb-cmp__offers li { padding: 1px 0; }
.bb-cmp__price { color: var(--notion-text-secondary, #6b6b6b); }
.bb-cmp__date { color: var(--notion-text-secondary, #6b6b6b); font-size: 11px; }
.bb-cmp__diff { background: #fff8e6; border-left: 3px solid #f0d878; padding: 8px 10px; border-radius: 0 4px 4px 0; font-size: 12px; }
.bb-cmp__notes { background: #fafaf9; padding: 8px 10px; border-radius: 4px; font-size: 12px; color: var(--notion-text-secondary, #4a4a4a); }
.bb-cmp__empty { color: var(--notion-text-secondary, #6b6b6b); padding: 24px; text-align: center; }

@media (max-width: 1000px) {
  .bb-prod__layout { grid-template-columns: 1fr; }
  .bb-prod__form-grid { grid-template-columns: 1fr; }
  .bb-rev__feed, .bb-men__feed, .bb-cmp__grid { grid-template-columns: 1fr; }
}

/* ─── Single-brand Artemis instance: hide the brand-switch dropdown ──── */

/* This Artemis deployment serves exactly one brand. The dropdown +
   "+ Add Brand" affordance from the legacy multi-brand layout is
   pointless here — pin the chrome to brand-name + refresh + coverage. */
.brand-selector-chrome__dropdown { display: none; }

/* Live-data pill (used by Reddit & Forums tab when scraper has seeded) */
.bb-pill--live { background: #e0f0e0; color: #1f5e1f; border-color: #c2e0c2; }

/* ─── Brand Brain → Reddit & Forums — Daily Findings summary ───────────── */

.bb-men-findings { background: linear-gradient(180deg, #fff8e6 0%, #fff 100%); border: 1px solid #f0d878; border-radius: 10px; padding: 14px 18px; margin: 12px 0 18px; }
.bb-men-findings--quiet { background: #fafaf9; border-color: var(--notion-border, #e3e3e3); color: var(--notion-text-secondary, #6b6b6b); }
.bb-men-findings__head { display: flex; align-items: baseline; gap: 12px; font-size: 14px; }
.bb-men-findings__head strong { color: #8a6800; }
.bb-men-findings__count { color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; margin-left: auto; }

.bb-men-findings__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 10px; }
.bb-men-findings__col { background: rgba(255, 255, 255, 0.55); border-radius: 6px; padding: 8px 12px; }
.bb-men-findings__lbl { font-size: 10px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--notion-text-secondary, #6b6b6b); font-weight: 700; margin-bottom: 4px; }
.bb-men-findings__strip { display: flex; flex-wrap: wrap; gap: 6px; font-size: 12px; }
.bb-men-findings__chip { padding: 2px 8px; border-radius: 9999px; font-size: 11px; font-weight: 600; }
.bb-men-findings__chip--pos { background: #e0f0e0; color: #1f5e1f; }
.bb-men-findings__chip--neg { background: #f9e0e0; color: #6e2828; }
.bb-men-findings__chip--mix { background: #fff3c4; color: #8a6800; }
.bb-men-findings__chip--neu { background: #f7f7f5; color: var(--notion-text-secondary, #6b6b6b); }
.bb-men-findings__forum { font-size: 12px; padding: 2px 8px; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 9999px; background: var(--notion-surface, #fff); color: var(--notion-text, #1f1d1a); }
.bb-men-findings__forum em { color: var(--notion-text-secondary, #6b6b6b); font-style: normal; margin-left: 3px; }

.bb-men-findings__top { margin-top: 12px; background: rgba(255, 255, 255, 0.55); border-radius: 6px; padding: 8px 12px; }
.bb-men-findings__top-list { list-style: none; padding: 0; margin: 4px 0 0; display: flex; flex-direction: column; gap: 4px; }
.bb-men-findings__top-item { display: grid; grid-template-columns: 1fr 90px 90px 120px; align-items: center; gap: 10px; font-size: 12px; padding: 2px 0; }
.bb-men-findings__top-title { color: var(--notion-text, #1f1d1a); text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
.bb-men-findings__top-title:hover { text-decoration: underline; }
.bb-men-findings__top-sent { font-size: 10px !important; padding: 1px 6px !important; text-align: center; justify-self: center; }
.bb-men-findings__top-score { color: var(--notion-text-secondary, #4a4a4a); font-variant-numeric: tabular-nums; font-size: 11px; text-align: center; }
.bb-men-findings__top-forum { color: var(--notion-text-secondary, #6b6b6b); font-size: 11px; text-align: right; }

@media (max-width: 900px) {
  .bb-men-findings__row { grid-template-columns: 1fr; }
  .bb-men-findings__top-item { grid-template-columns: 1fr 80px 80px; }
  .bb-men-findings__top-forum { display: none; }
}

/* ─── Operations tab — Hermes job status mirror ────────────────────────── */

.ops-panel { padding: 8px 0 32px; max-width: 1200px; }
.ops-head { margin-bottom: 14px; }
.ops-head h2 { font-size: 24px; margin: 0 0 4px; letter-spacing: -0.01em; }
.ops-sub { color: var(--notion-text-secondary, #6b6b6b); font-size: 13px; margin: 0; }
.ops-empty { color: var(--notion-text-secondary, #6b6b6b); padding: 20px; text-align: center; }

.ops-banner { padding: 10px 14px; border-radius: 8px; margin-bottom: 12px; font-size: 13px; }
.ops-banner--ok { background: #e0f0e0; color: #1f5e1f; border: 1px solid #c2e0c2; }
.ops-banner--fail { background: #f9e0e0; color: #6e2828; border: 1px solid #f0c2c2; }

.ops-summary { display: flex; gap: 16px; font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 14px; }
.ops-summary strong { color: var(--notion-text, #1f1d1a); margin-right: 4px; }
.ops-summary__synced { margin-left: auto; }

.ops-table { width: 100%; border-collapse: collapse; background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; overflow: hidden; }
.ops-table thead { background: #fafaf9; }
.ops-table th { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--notion-text-secondary, #6b6b6b); font-weight: 600; text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--notion-border, #e3e3e3); }
.ops-table td { padding: 10px 10px; border-bottom: 1px solid #f0eeea; font-size: 13px; vertical-align: top; }
.ops-table tr:last-child td { border-bottom: 0; }

.ops-row--fail { background: #fff8f8; }
.ops-row--fail .ops-name { color: #6e2828; }
.ops-row--off { opacity: 0.55; }

.ops-cell--status { white-space: nowrap; }
.ops-pill { display: inline-block; padding: 2px 8px; border-radius: 9999px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; }
.ops-pill--ok { background: #e0f0e0; color: #1f5e1f; }
.ops-pill--fail { background: #c43535; color: #fff; }
.ops-pill--off { background: #f0eeea; color: var(--notion-text-secondary, #6b6b6b); }
.ops-pill--unknown { background: #fff3c4; color: #8a6800; }

.ops-name { font-weight: 600; }
.ops-jobid { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); margin-top: 2px; font-family: ui-monospace, 'SF Mono', Menlo, monospace; }
.ops-script { color: var(--notion-text, #1f1d1a); }
.ops-row__err { margin-top: 6px; padding: 6px 8px; background: #f9e0e0; color: #6e2828; border-radius: 4px; font-size: 12px; white-space: pre-wrap; font-family: ui-monospace, 'SF Mono', Menlo, monospace; }
.ops-cell--sched code { font-size: 12px; background: #f3f1ed; padding: 1px 6px; border-radius: 4px; }
.ops-cell--last, .ops-cell--next { color: var(--notion-text-secondary, #6b6b6b); white-space: nowrap; }
.ops-cell--deliver { color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; }

@media (max-width: 900px) {
  .ops-table thead { display: none; }
  .ops-table tr, .ops-table td { display: block; }
  .ops-cell--sched, .ops-cell--last, .ops-cell--next, .ops-cell--deliver { display: inline-block; margin-right: 12px; }
}

/* ─── Brand Brain → Industry Trends tab ────────────────────────────────── */

.bb-tr__head { margin-bottom: 14px; }
.bb-tr__head h3 { font-size: 16px; margin: 0 0 4px; font-weight: 600; }
.bb-tr__sub { color: var(--notion-text-secondary, #6b6b6b); font-size: 13px; margin: 0; }
.bb-tr__empty { color: var(--notion-text-secondary, #6b6b6b); padding: 24px; text-align: center; }

/* Pulse summary block at top (this week's findings) */
.bb-tr-findings { background: linear-gradient(180deg, #f0f7ff 0%, #fff 100%); border: 1px solid #b8d5f0; border-radius: 10px; padding: 14px 18px; margin: 12px 0 18px; }
.bb-tr-findings__head { display: flex; align-items: baseline; gap: 12px; font-size: 14px; }
.bb-tr-findings__head strong { color: #1f4a7a; }
.bb-tr-findings__count { color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; margin-left: auto; }
.bb-tr-findings__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 10px; }
.bb-tr-findings__col { background: rgba(255, 255, 255, 0.6); border-radius: 6px; padding: 8px 12px; }
.bb-tr-findings__lbl { font-size: 10px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--notion-text-secondary, #6b6b6b); font-weight: 700; margin-bottom: 4px; }
.bb-tr-findings__strip { display: flex; flex-wrap: wrap; gap: 6px; font-size: 12px; }
.bb-tr-findings__forum, .bb-tr-findings__topic { font-size: 12px; padding: 2px 8px; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 9999px; background: var(--notion-surface, #fff); color: var(--notion-text, #1f1d1a); }
.bb-tr-findings__forum em, .bb-tr-findings__topic em { color: var(--notion-text-secondary, #6b6b6b); font-style: normal; margin-left: 3px; }
.bb-tr-findings__top { margin-top: 12px; background: rgba(255, 255, 255, 0.6); border-radius: 6px; padding: 8px 12px; }
.bb-tr-findings__top-list { list-style: none; padding: 0; margin: 4px 0 0; display: flex; flex-direction: column; gap: 4px; }
.bb-tr-findings__top-item { display: grid; grid-template-columns: 1fr 110px 90px 110px; align-items: center; gap: 10px; font-size: 12px; }
.bb-tr-findings__top-title { color: var(--notion-text, #1f1d1a); text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
.bb-tr-findings__top-title:hover { text-decoration: underline; }
.bb-tr-findings__top-score { color: var(--notion-text-secondary, #4a4a4a); font-variant-numeric: tabular-nums; font-size: 11px; text-align: center; }
.bb-tr-findings__top-forum { color: var(--notion-text-secondary, #6b6b6b); font-size: 11px; text-align: right; }

/* Topic chip — reused on cards + findings + filters */
.bb-tr__topic { display: inline-block; font-size: 10px; padding: 1px 7px; border-radius: 9999px; background: #f0e8d8; color: #6e5a28; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; }
.bb-tr__topic[data-topic="comparison"] { background: #ddeaf7; color: #1f4a7a; }
.bb-tr__topic[data-topic="review"] { background: #e0f0e0; color: #1f5e1f; }
.bb-tr__topic[data-topic="question"] { background: #fff3c4; color: #8a6800; }
.bb-tr__topic[data-topic="setup"] { background: #f0e0f0; color: #6e2880; }
.bb-tr__topic[data-topic="deal"] { background: #f9e0e0; color: #6e2828; }
.bb-tr__topic[data-topic="news"] { background: #d8f0d8; color: #1f5e1f; }
.bb-tr__topic[data-topic="roundup"] { background: #f0eee0; color: #5a4f1f; }

.bb-tr__controls { display: flex; gap: 12px; align-items: center; margin-bottom: 10px; flex-wrap: wrap; }
.bb-tr__search { flex: 1 1 280px; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 6px; padding: 7px 10px; font: inherit; }
.bb-tr__filters { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.bb-tr__filter { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 9999px; padding: 4px 10px; font-size: 12px; cursor: pointer; font: inherit; color: var(--notion-text, #1f1d1a); }
.bb-tr__filter:hover { background: #f3f1ed; }
.bb-tr__filter--active { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.bb-tr__divider { color: var(--notion-text-secondary, #6b6b6b); padding: 0 4px; }
.bb-tr__count { font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 10px; }

/* Card feed */
.bb-tr__feed { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.bb-tr__card { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 12px 14px; display: flex; flex-direction: column; gap: 6px; }
.bb-tr__card-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 12px; }
.bb-tr__forum { font-weight: 600; }
.bb-tr__date { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); margin-left: auto; }
.bb-tr__title { font-size: 14px; font-weight: 600; margin: 0; }
.bb-tr__title a { color: inherit; text-decoration: none; }
.bb-tr__title a:hover { text-decoration: underline; }
.bb-tr__snippet { font-size: 13px; line-height: 1.5; margin: 0; color: var(--notion-text, #1f1d1a); }
.bb-tr__card-foot { display: flex; align-items: center; gap: 14px; font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); }
.bb-tr__score, .bb-tr__comments, .bb-tr__author { font-variant-numeric: tabular-nums; }

@media (max-width: 1000px) {
  .bb-tr-findings__row { grid-template-columns: 1fr; }
  .bb-tr-findings__top-item { grid-template-columns: 1fr 90px 90px; }
  .bb-tr-findings__top-forum { display: none; }
  .bb-tr__feed { grid-template-columns: 1fr; }
}

/* Reviews tab — filter row + source pill */
.bb-rev__filters { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-bottom: 14px; }
.bb-rev__filters-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--notion-text-secondary, #6b6b6b); font-weight: 600; margin-right: 4px; }
.bb-rev__filters-divider { color: var(--notion-text-secondary, #6b6b6b); padding: 0 6px; }
.bb-rev__chip { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 9999px; padding: 4px 10px; font-size: 12px; cursor: pointer; font: inherit; color: var(--notion-text, #1f1d1a); }
.bb-rev__chip:hover { background: #f3f1ed; }
.bb-rev__chip--active { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.bb-rev__count { font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 10px; }
.bb-rev__src { font-size: 10px; padding: 1px 7px; background: #ddeaf7; color: #1f4a7a; border-radius: 9999px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; }
.bb-rev__more { grid-column: 1 / -1; text-align: center; padding: 12px; color: var(--notion-text-secondary, #6b6b6b); font-size: 12px; font-style: italic; }

/* ─── Strategist / Congruence Builder ─────────────────────────────────────── */

.db-pinned-strat-section { margin-bottom: 20px; }

.strat-pinned {
  background: linear-gradient(180deg, #fffcf2 0%, #fff8e1 100%);
  border: 1px solid #e6c97b;
  border-radius: 10px;
  padding: 14px 16px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.04);
}
.strat-pinned--empty { background: #fafafa; border-color: #e0e0e0; }
.strat-pinned__head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 12px; color: var(--notion-text, #1f1d1a); margin-bottom: 4px; }
.strat-pinned__opp { font-weight: 600; color: #8a6800; background: #fff3c4; border: 1px solid #f0d878; padding: 1px 8px; border-radius: 9999px; font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; }
.strat-pinned__route { color: var(--notion-text-secondary, #6b6b6b); font-size: 11px; font-weight: 500; }
.strat-pinned__title { margin: 6px 0 6px 0; font-size: 18px; font-weight: 700; line-height: 1.3; color: var(--notion-text, #1f1d1a); }
.strat-pinned__read { margin: 0 0 10px 0; font-size: 13px; color: var(--notion-text, #1f1d1a); line-height: 1.5; }
.strat-pinned__foot { display: flex; align-items: center; gap: 12px; justify-content: space-between; flex-wrap: wrap; }
.strat-pinned__more { color: #1f4a7a; text-decoration: none; font-size: 13px; font-weight: 600; }
.strat-pinned__more:hover { text-decoration: underline; }

/* Status badge */
.strat-status { font-size: 10px; font-weight: 700; padding: 1px 7px; border-radius: 9999px; text-transform: uppercase; letter-spacing: 0.04em; border: 1px solid; }
.strat-status--recommended { color: #8a6800; background: #fff3c4; border-color: #f0d878; }
.strat-status--approved    { color: #1f5e1f; background: #e0f0e0; border-color: #c2e0c2; }
.strat-status--routed      { color: #1f4a7a; background: #ddeaf7; border-color: #b6cde8; }
.strat-status--built       { color: #5a4f1f; background: #f0eee0; border-color: #d6d2b8; }
.strat-status--rejected    { color: #6e2828; background: #f9e0e0; border-color: #e3b8b8; }

/* Buttons */
.strat-btn {
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 6px;
  border: 1px solid var(--notion-border, #e3e3e3);
  background: var(--notion-surface, #fff);
  color: var(--notion-text, #1f1d1a);
  cursor: pointer;
}
.strat-btn:hover { background: #f3f1ed; }
.strat-btn--primary { background: var(--notion-text, #1f1d1a); color: #fff; border-color: var(--notion-text, #1f1d1a); }
.strat-btn--primary:hover { background: #353230; }
.strat-btn--ghost { color: var(--notion-text-secondary, #6b6b6b); }
.strat-actions { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.strat-actions__terminal { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); font-style: italic; }

/* Strategist tab panel */
.strat-panel { padding: 24px 8px 48px; max-width: 1100px; margin: 0 auto; }
.strat-head__title { margin: 0 0 4px 0; font-size: 22px; font-weight: 700; color: var(--notion-text, #1f1d1a); }
.strat-head__sub { margin: 0 0 16px 0; font-size: 13px; color: var(--notion-text-secondary, #6b6b6b); line-height: 1.5; }
.strat-counts { display: flex; gap: 14px; flex-wrap: wrap; font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 14px; padding: 8px 12px; background: #fafaf9; border-radius: 8px; border: 1px solid var(--notion-border, #e3e3e3); }
.strat-counts strong { color: var(--notion-text, #1f1d1a); }
.strat-empty { color: var(--notion-text-secondary, #6b6b6b); font-size: 14px; padding: 24px; text-align: center; background: #fafaf9; border-radius: 8px; border: 1px dashed var(--notion-border, #e3e3e3); }
.strat-queue { display: flex; flex-direction: column; gap: 16px; }

.strat-card { background: var(--notion-surface, #fff); border: 1px solid var(--notion-border, #e3e3e3); border-radius: 10px; padding: 16px 18px; display: flex; flex-direction: column; gap: 12px; }
.strat-card--rejected { opacity: 0.6; }
.strat-card--built { background: #f7faf7; }
.strat-card__head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.strat-card__rank { font-size: 12px; font-weight: 700; color: var(--notion-text-secondary, #6b6b6b); background: #f3f1ed; padding: 2px 8px; border-radius: 9999px; }
.strat-card__title { margin: 0; font-size: 16px; font-weight: 700; line-height: 1.3; flex: 1 1 280px; }
.strat-card__opp { font-weight: 600; color: #8a6800; background: #fff3c4; border: 1px solid #f0d878; padding: 1px 7px; border-radius: 9999px; font-size: 10px; text-transform: uppercase; letter-spacing: 0.04em; }
.strat-card__route { color: var(--notion-text-secondary, #6b6b6b); font-size: 11px; }
.strat-card__row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.strat-section__lbl { font-size: 10px; text-transform: uppercase; letter-spacing: 0.06em; font-weight: 700; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 4px; }
.strat-section__val { font-size: 13px; line-height: 1.5; color: var(--notion-text, #1f1d1a); }
.strat-evidence ul { margin: 0; padding-left: 18px; }
.strat-evidence li { font-size: 13px; line-height: 1.5; margin-bottom: 2px; }
.strat-evidence--ok li { color: #1f5e1f; }
.strat-evidence--gap li { color: #6e2828; }
.strat-brief .strat-section__val { background: #fff8e6; border-left: 3px solid #f0d878; padding: 8px 12px; border-radius: 0 6px 6px 0; }

.strat-signals { font-size: 12px; }
.strat-signals summary { cursor: pointer; color: var(--notion-text-secondary, #6b6b6b); }
.strat-signals ul { margin: 8px 0 0 0; padding-left: 0; list-style: none; }
.strat-signals li { padding: 4px 0; border-bottom: 1px solid #f0eee8; display: flex; gap: 6px; align-items: baseline; flex-wrap: wrap; }
.strat-signals__type { font-weight: 600; color: var(--notion-text, #1f1d1a); text-transform: uppercase; font-size: 10px; letter-spacing: 0.04em; }
.strat-signals__forum { color: #1f4a7a; font-size: 11px; }
.strat-signals__score { color: #8a6800; font-size: 11px; }
.strat-signals__snippet { color: var(--notion-text-secondary, #4a4a4a); font-size: 12px; }

.strat-card__annotations { display: flex; gap: 10px; flex-wrap: wrap; font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); }
.strat-card__annotations span { background: #fafaf9; padding: 3px 8px; border-radius: 9999px; border: 1px solid var(--notion-border, #e3e3e3); }
.strat-card__foot { display: flex; justify-content: flex-end; }

@media (max-width: 900px) {
  .strat-card__row { grid-template-columns: 1fr; }
  .strat-pinned__title { font-size: 16px; }
}

/* ───────── Competitor research tab (bb-competitors v2) ───────── */

.cmp-shell { display: flex; flex-direction: column; gap: 20px; }
.cmp-shell__head h2 { margin: 0 0 4px; font-size: 18px; font-weight: 600; }
.cmp-shell__brand { color: var(--notion-text-secondary, #6b6b6b); font-weight: 500; font-size: 14px; margin-left: 4px; }
.cmp-shell__sub { margin: 0; color: var(--notion-text-secondary, #6b6b6b); font-size: 13px; }

.cmp-lbl { font-size: 10px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 4px; font-weight: 600; }

.cmp-list { margin: 4px 0 0; padding-left: 18px; line-height: 1.5; font-size: 13px; }
.cmp-list li { padding: 1px 0; }
.cmp-list--ok li::marker { color: #1f7a39; }
.cmp-list--gap li::marker { color: #c97500; }
.cmp-list--gap li { color: #5a3700; }

/* Pinned strategist recommendation */
.cmp-pinned { background: linear-gradient(180deg, #fffaf0, #ffffff); border: 1px solid #f0d878; border-radius: 10px; padding: 16px 18px; display: flex; flex-direction: column; gap: 12px; }
.cmp-pinned--empty { background: #fafaf9; border-color: var(--notion-border, #e3e3e3); }
.cmp-pinned__head { display: flex; align-items: center; gap: 10px; font-size: 13px; }
.cmp-pinned__title { margin: 0; font-size: 18px; font-weight: 700; line-height: 1.3; }
.cmp-pinned__belief { margin: 0; font-size: 14px; line-height: 1.5; }
.cmp-pinned__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.cmp-pinned__col { background: #fff; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 6px; padding: 10px 12px; }
.cmp-pinned__foot { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; border-top: 1px dashed #f0d878; padding-top: 10px; }
.cmp-pinned__source { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); }
.cmp-pinned__actions { display: flex; gap: 6px; }

.cmp-approval { font-size: 11px; padding: 3px 9px; border-radius: 9999px; font-weight: 600; }
.cmp-approval--pending { background: #fff3c4; color: #8a6800; border: 1px solid #f0d878; }
.cmp-approval--approved { background: #e0f0e0; color: #1f5e1f; border: 1px solid #b3d8b3; }
.cmp-approval--rejected { background: #f9dada; color: #842121; border: 1px solid #e6b8b8; }

.cmp-btn { font-size: 12px; padding: 6px 12px; border-radius: 5px; cursor: pointer; border: 1px solid var(--notion-border, #e3e3e3); background: #fff; }
.cmp-btn--primary { background: #1f5e1f; color: #fff; border-color: #1f5e1f; }
.cmp-btn--primary:hover { background: #174717; }
.cmp-btn--ghost { background: transparent; }
.cmp-btn--ghost:hover { background: #fafaf9; }

/* Product-line sections */
.cmp-sections { display: flex; flex-direction: column; gap: 18px; }
.cmp-section { background: #fff; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 8px; padding: 14px 16px; }
.cmp-section__head { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--notion-border, #e3e3e3); }
.cmp-section__title { margin: 0; font-size: 15px; font-weight: 600; }
.cmp-section__count { font-size: 12px; color: var(--notion-text-secondary, #6b6b6b); }
.cmp-section__grid { display: grid; grid-template-columns: 1fr; gap: 12px; }

/* Competitor card */
.cmp-card { background: #fafaf9; border: 1px solid var(--notion-border, #e3e3e3); border-radius: 6px; padding: 12px 14px; display: flex; flex-direction: column; gap: 10px; }
.cmp-card__head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.cmp-card__title { display: flex; align-items: baseline; gap: 10px; }
.cmp-card__brand { margin: 0; font-size: 15px; font-weight: 600; }
.cmp-card__product { font-size: 13px; color: var(--notion-text-secondary, #6b6b6b); }
.cmp-card__meta { display: flex; align-items: center; gap: 8px; }
.cmp-card__price { font-size: 12px; color: #1f5e1f; font-weight: 600; }
.cmp-card__url { font-size: 12px; color: #1565c0; word-break: break-all; }
.cmp-card__no-url { font-size: 11px; color: var(--notion-text-secondary, #888); font-style: italic; }

.cmp-card__pos { font-size: 13px; }
.cmp-card__pos-val { font-style: italic; line-height: 1.5; }

.cmp-card__row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; background: #fff; border-radius: 5px; padding: 10px 12px; }
.cmp-card__col { font-size: 13px; }
.cmp-card__val { font-size: 13px; line-height: 1.5; }

.cmp-card__counter { background: #fff8e6; border-left: 3px solid #f0d878; padding: 10px 12px; border-radius: 0 4px 4px 0; }
.cmp-card__counter-val { font-size: 13px; line-height: 1.5; }

.cmp-card__reviews, .cmp-card__angles { font-size: 12px; }
.cmp-card__reviews summary, .cmp-card__angles summary { cursor: pointer; padding: 4px 0; color: var(--notion-text-secondary, #4a4a4a); font-weight: 600; }
.cmp-angles__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding-top: 8px; }
.cmp-angle { background: #fff; padding: 8px 10px; border-radius: 5px; border: 1px solid var(--notion-border, #e3e3e3); }
.cmp-angle__lbl { font-size: 10px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--notion-text-secondary, #6b6b6b); margin-bottom: 4px; font-weight: 600; }

.cmp-card__foot { display: flex; justify-content: flex-end; }
.cmp-card__verified-at { font-size: 11px; color: var(--notion-text-secondary, #6b6b6b); }

.cmp-status { font-size: 10px; padding: 2px 7px; border-radius: 9999px; text-transform: uppercase; letter-spacing: 0.04em; font-weight: 600; }
.cmp-status--research { background: #eef0ff; color: #2b3a8a; }
.cmp-status--recommended { background: #fff3c4; color: #8a6800; }
.cmp-status--approved { background: #e0f0e0; color: #1f5e1f; }
.cmp-status--routed { background: #e0ecf9; color: #1565c0; }
.cmp-status--built { background: #d4e8d4; color: #0d4f0d; }
.cmp-status--rejected { background: #f9dada; color: #842121; }

/* Research gaps */
.cmp-gaps { background: #fff4e0; border: 1px solid #f0d8a8; border-radius: 8px; padding: 14px 16px; }
.cmp-gaps__head h3 { margin: 0 0 4px; font-size: 14px; font-weight: 600; color: #5a3700; }
.cmp-gaps__sub { margin: 0 0 8px; font-size: 12px; color: #6e4a17; }

.cmp-empty { padding: 32px 24px; text-align: center; color: var(--notion-text-secondary, #6b6b6b); }
.cmp-empty code { background: #fafaf9; padding: 1px 5px; border-radius: 3px; font-size: 12px; }

@media (max-width: 900px) {
  .cmp-pinned__grid { grid-template-columns: 1fr; }
  .cmp-card__row { grid-template-columns: 1fr; }
  .cmp-angles__grid { grid-template-columns: 1fr; }
}
