/* ============================================================
   PRODUCERBRAIN — SHARED GRAPHITE THEME
   This is the single source of truth for app-shell, table, control
   and popup colors. Feature styles may alias these variables, but
   must not introduce a second base palette.
   ============================================================ */

:root{
  --pb-page:#10161c;
  --pb-sidebar:#0f151b;
  --pb-surface:#0f151b;
  --pb-surface-raised:#12191f;
  --pb-table:transparent;
  --pb-row:transparent;
  --pb-row-hover:rgba(255,255,255,.032);
  --pb-control:rgba(255,255,255,.045);
  --pb-control-hover:rgba(255,255,255,.065);
  --pb-line:rgba(192,199,207,.065);
  --pb-line-strong:rgba(192,199,207,.11);
  --pb-frame-line:var(--pb-line);
  --pb-field-border:rgba(192,199,207,.22);
  --pb-field-hover:rgba(192,199,207,.36);
  --pb-field-focus:color-mix(in srgb,var(--pb-gold-text) 55%,var(--pb-text-muted));
  --pb-menu-surface:#171e25;
  --pb-menu-hover:#242c34;
  --pb-menu-danger:#dc9292;
  --pb-success:#96c8a9;
  --pb-menu-radius:8px;
  --pb-menu-row-height:32px;
  --pb-menu-shadow:0 8px 24px rgba(0,0,0,.28);
  --border:var(--pb-line-strong);
  --line-soft:var(--pb-line);
  --line-strong:var(--pb-line-strong);
  --pb-text-muted:#7f878f;
  --pb-text:#c8cdd2;
  --pb-text-strong:#d3d6d9;
  --pb-gold:#d1a83c;
  --pb-gold-text:#d8b755;
  --pb-popup:var(--pb-page);
  --pb-popup-surface:var(--pb-surface);
  --pb-popup-raised:var(--pb-surface-raised);
  --pb-popup-control:var(--pb-control);
  --pb-popup-hover:var(--pb-control-hover);
  --pb-popup-line:var(--pb-line);
  --pb-popup-line-strong:var(--pb-line-strong);
  --pb-popup-muted:var(--pb-text-muted);
  --pb-popup-text:var(--pb-text);
  --pb-popup-strong:var(--pb-text-strong);
  --pb-popup-overlay:rgba(4,7,10,.76);
}

/* Every conventional app modal begins with the same ProducerBrain
   surface. Feature layers may change layout, never the base palette. */
body .modal-overlay{
  background:var(--pb-popup-overlay);
}

body .modal-overlay > .modal{
  border-color:var(--pb-frame-line) !important;
  background:var(--pb-popup) !important;
  color:var(--pb-popup-text);
}

/* New Sendout: compact filters and recipient-specific sample review. */
#mPrivatePackComposer .private-pack-chip-row { align-items: center; min-height: 32px; gap: 6px; }
#mPrivatePackComposer .private-pack-filter-menu { position: relative; min-width: 0; }
#mPrivatePackComposer .private-pack-filter-menu summary { list-style: none; cursor: pointer; max-width: 160px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#mPrivatePackComposer .private-pack-filter-menu summary::-webkit-details-marker { display: none; }
#mPrivatePackComposer .private-pack-filter-options { position: absolute; top: calc(100% + 5px); left: 0; z-index: 12; display: flex; flex-direction: column; align-items: stretch; gap: 3px; width: 220px; max-height: 260px; overflow: auto; padding: 6px; border: 1px solid var(--pb-line-strong); border-radius: 8px; background: var(--pb-surface-raised, #12191f); box-shadow: 0 8px 24px #0005; }
#mPrivatePackComposer .private-pack-filter-options button { text-align: left; white-space: normal; }
#mPrivatePackComposer .private-pack-brain-menu { display: flex; flex-direction: column; gap: 4px; width: 100%; padding: 6px 0; color: var(--pb-text-muted); }
#mPrivatePackComposer .private-pack-recipient-row { display: flex; padding: 0 8px 0 0; gap: 6px; }
#mPrivatePackComposer .private-pack-recipient-select { display: flex; align-items: center; gap: 10px; flex: 1; min-width: 0; padding: 10px; background: transparent; border: 0; color: inherit; text-align: left; cursor: pointer; }
#mPrivatePackComposer .private-pack-recipient-row > .private-pack-chip { font-size: 11px; flex-shrink: 0; }
#mPrivatePackComposer .private-pack-selection-remove[aria-pressed="true"] { color: var(--pb-gold-text); }
#mPrivatePackComposer .private-pack-tailor-toolbar { display: flex; align-items: center; gap: 6px; padding: 0 0 10px; }
#mPrivatePackComposer .private-pack-tailor-detail { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
#mPrivatePackComposer .private-pack-tailor-detail > strong { color: var(--pb-text); font-size: 14px; }
#mPrivatePackComposer .private-pack-tailor-item { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; padding: 12px 0; border-bottom: 1px solid var(--pb-line-strong); min-width: 0; }
#mPrivatePackComposer .private-pack-tailor-item small { color: var(--pb-text-muted, #7f878f); font-size: 11px; }
#mPrivatePackComposer .private-pack-tailor-item > button { display: flex; align-items: center; gap: 7px; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#mPrivatePackComposer .private-pack-tailor-item svg { width: 14px; height: 14px; flex-shrink: 0; }
#mPrivatePackComposer .private-pack-tailor-item > div { display: flex; gap: 6px; }
#mPrivatePackComposer .private-pack-review-stack[hidden] { display: none; }
#mPrivatePackComposer :is(summary, .private-pack-recipient-select):focus-visible { outline: 2px solid var(--pb-gold-text); outline-offset: 2px; }

#mPrivatePackComposer .private-pack-chip-row > .private-pack-chip,
#mPrivatePackComposer .private-pack-filter-menu > summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 28px;
  min-height: 28px;
  padding: 0 10px;
  line-height: 1;
  vertical-align: middle;
  text-align: center;
  box-sizing: border-box;
}
#mPrivatePackComposer .private-pack-filter-menu > summary > span { overflow: hidden; text-overflow: ellipsis; }
#mPrivatePackComposer .private-pack-filter-chevron { flex: 0 0 10px; width: 10px; height: 10px; }
#mPrivatePackComposer .private-pack-filter-options button { display: flex; align-items: center; justify-content: flex-start; min-height: 30px; }
#mPrivatePackComposer .private-pack-recipient-select .private-pack-row-main { flex: 1; min-width: 0; }
#mPrivatePackComposer .private-pack-recipient-select .private-pack-check { flex: 0 0 20px; }
#mPrivatePackComposer .private-pack-recipient-row > .private-pack-chip { width: auto; max-width: 110px; padding: 0 8px; }
#mPrivatePackComposer .private-pack-tailor-detail > .private-pack-chip { align-self: flex-start; }
#mPrivatePackComposer .private-pack-intelligence-btn { color: var(--pb-gold-text); }

/* Reference files are evidence, using the same quiet text as file metadata. */
#crmMain .contact-taste-group.is-reference > div { display: grid; min-width: 0; }
#crmMain .contact-taste-group.is-reference b { display: block; min-height: 0; padding: 3px 0; border: 0; border-radius: 0; background: transparent; color: var(--pb-text); line-height: 1.4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
