/* ============================================================================
   ccParallelVault.css — MIND STREAM, v4 (2026-06-10)
   ----------------------------------------------------------------------------
   Wide section under the assistant. Speaks the EXACT card language of the
   rest of the dashboard (.cc-card: rgba(255,255,255,.025) on page-black,
   hairline border) — no navy radials, no chrono-grid, no title. LEFT: the
   flat note cloud (transparent canvas, the page shows through). RIGHT: the
   active note typewritten + the next action popping in. Quiet, useful.
   ============================================================================ */

.cc-mindstream {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: 16px;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px;
  padding: 14px;
  margin-bottom: 14px;
  min-height: 320px;
}

.cc-ms-graph { position: relative; min-height: 300px; }
.cc-ms-graph canvas {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  display: block;
  cursor: default;
}
.cc-ms-graph canvas.cc-ms-hot { cursor: pointer; }

.cc-ms-side {
  display: flex; flex-direction: column; gap: 10px;
  min-width: 0;
}

/* the active note — typewritten content */
.cc-ms-note {
  flex: 1 1 auto;
  min-height: 0;
  display: flex; flex-direction: column; gap: 6px;
  padding: 12px 14px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.015);
  overflow: hidden;
}
.cc-ms-note.is-in { animation: ccMsIn 0.45s cubic-bezier(0.16, 1, 0.3, 1) both; }
@keyframes ccMsIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: none; }
}
.cc-ms-note-title {
  font-size: 13px; font-weight: 700;
  color: var(--text-primary, #e8edf6);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.cc-ms-note-meta { font-size: 10px; color: var(--text-muted, rgba(180, 192, 212, 0.5)); }
.cc-ms-note-body {
  flex: 1 1 auto;
  overflow: auto;
  font-size: 12px; line-height: 1.65;
  color: var(--text-secondary, rgba(205, 214, 230, 0.82));
  white-space: normal; word-break: break-word;
}
.cc-ms-caret {
  display: inline-block; width: 6px; height: 13px;
  margin-left: 1px; vertical-align: -2px;
  background: rgba(220, 230, 245, 0.8);
  animation: ccMsCaret 0.9s steps(1) infinite;
}
@keyframes ccMsCaret { 0%, 60% { opacity: 1; } 61%, 100% { opacity: 0; } }
.cc-ms-note-link {
  font-size: 11px; font-weight: 600; text-decoration: none;
  color: rgba(160, 178, 208, 0.7);
  transition: color 0.18s;
}
.cc-ms-note-link:hover { color: #fff; }
.cc-ms-empty { font-size: 12px; color: var(--text-muted, rgba(180, 192, 212, 0.5)); }

/* the next best action — pops on its own 5s rhythm */
.cc-ms-action {
  flex: 0 0 auto;
  padding: 11px 14px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-left: 2px solid var(--accent, #2f5ca8);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.02);
  cursor: pointer;
  transition: background 0.2s;
}
.cc-ms-action:hover { background: rgba(255, 255, 255, 0.045); }
.cc-ms-action.is-pop { animation: ccMsPop 0.5s cubic-bezier(0.16, 1, 0.3, 1) both; }
@keyframes ccMsPop {
  from { opacity: 0; transform: translateY(10px) scale(0.985); }
  to   { opacity: 1; transform: none; }
}
.cc-ms-action-k {
  font-size: 9px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase;
  color: rgba(160, 178, 208, 0.55);
  margin-bottom: 3px;
}
.cc-ms-action-title {
  font-size: 12.5px; font-weight: 700;
  color: var(--text-primary, #e8edf6);
  line-height: 1.35;
}
.cc-ms-action-why {
  margin-top: 3px;
  font-size: 11px; line-height: 1.5;
  color: var(--text-secondary, rgba(205, 214, 230, 0.66));
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.cc-ms-action-meta { display: flex; gap: 6px; margin-top: 6px; }
.cc-ms-chip {
  font-size: 10px; font-weight: 700;
  padding: 1px 8px; border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(205, 218, 240, 0.85);
  background: rgba(255, 255, 255, 0.03);
}

/* quiet totals line */
.cc-ms-stats {
  flex: 0 0 auto;
  font-size: 10px; letter-spacing: 0.02em;
  color: rgba(160, 178, 208, 0.45);
  padding: 0 2px;
}

@media (max-width: 1100px) {
  .cc-mindstream { grid-template-columns: 1fr; }
  .cc-ms-graph { min-height: 240px; }
}

@media (prefers-reduced-motion: reduce) {
  .cc-ms-note.is-in, .cc-ms-action.is-pop { animation: none; }
  .cc-ms-caret { animation: none; }
}

/* ════════════════════════════════════════════════════════════════════════
   MONEY PULSE (Faz B, 2026-06-10) — satış · iade · talep · sağlık tek şerit.
   Eski üç sayı bloğu (revenue hero + stat strip + week card) ve sağ-ray mini
   vault kartı cc-pulse-legacy ile kapatıldı (rollback = class'ı kaldır).
   ════════════════════════════════════════════════════════════════════════ */
.cc-pulse-legacy { display: none !important; }

.cc-money-pulse {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}
.cc-mp-chip {
  display: flex; flex-direction: column; gap: 3px; align-items: flex-start;
  text-align: left;
  padding: 12px 14px;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s;
  min-width: 0;
}
.cc-mp-chip:hover { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.12); }
.cc-mp-k {
  font-size: 9px; font-weight: 800; letter-spacing: 0.09em; text-transform: uppercase;
  color: rgba(160, 178, 208, 0.55);
}
.cc-mp-v {
  font-size: 14px; font-weight: 800; color: var(--text-primary, #e8edf6);
  display: flex; align-items: center; gap: 6px;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%;
}
.cc-mp-s { font-size: 10px; color: rgba(160, 178, 208, 0.55); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.cc-mp-s[data-dir="up"] { color: #7fc8a8; }
.cc-mp-s[data-dir="down"] { color: #d98a8a; }
.cc-mp-dot {
  width: 8px; height: 8px; border-radius: 50%; flex: 0 0 auto;
  background: rgba(160, 178, 208, 0.4);
}
.cc-mp-dot[data-ok="1"] { background: #34c77b; box-shadow: 0 0 8px rgba(52, 199, 123, 0.5); }
.cc-mp-dot[data-ok="0"] { background: #d97766; box-shadow: 0 0 8px rgba(217, 119, 102, 0.4); }

@media (max-width: 1100px) {
  .cc-money-pulse { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* reminders — past/failed tucked behind a quiet toggle */
.cc-reminders-past-toggle {
  display: inline-flex; align-items: center; gap: 5px;
  margin-top: 8px;
  padding: 4px 10px;
  font-size: 10px; font-weight: 700; letter-spacing: 0.04em;
  color: rgba(160, 178, 208, 0.55);
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 999px;
  cursor: pointer;
  transition: color 0.18s, border-color 0.18s;
}
.cc-reminders-past-toggle:hover { color: rgba(220, 230, 245, 0.9); border-color: rgba(255, 255, 255, 0.16); }
.cc-reminders-past-toggle.is-open span { display: inline-block; transform: rotate(90deg); }
.cc-reminders-past { margin-top: 6px; }

/* ── Faz C: kardeş-sayfa çapraz sekmeleri (İletişim/Email/İstekler,
   Davranış/Funnel, Kalite/Ürün Kalitesi) — tek yüzey hissi ── */
.cc-xtabs {
  display: flex; gap: 6px; flex-wrap: wrap;
  margin: 0 0 14px;
}
.cc-xtab {
  padding: 6px 16px;
  font-size: 12px; font-weight: 600;
  color: rgba(170, 192, 226, 0.75);
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 999px;
  cursor: pointer;
  transition: color 0.18s, background 0.18s, border-color 0.18s;
}
.cc-xtab:hover { color: #fff; border-color: rgba(255, 255, 255, 0.16); }
.cc-xtab.is-on {
  color: #fff; background: var(--accent, #2f5ca8); border-color: transparent;
  cursor: default;
}

/* report card — one quiet line by default, click anywhere to expand */
.cc-report-card { cursor: pointer; }
.cc-report-collapsed [class*="report-body"],
.cc-report-collapsed .cc-report-text,
.cc-report-collapsed p {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ════════════════════════════════════════════════════════════════════════
   v8 (2026-06-10, Atakan): BÜYÜK BİRLEŞİK SECTION — asistan (not yazma +
   sesli) Mind Stream'in içine taşındı: üstte asistan+chat, altında solda
   graph sağda typewriter; konuşmalar grafın üstünde FİLM ALTYAZISI gibi.
   ════════════════════════════════════════════════════════════════════════ */
.cc-mindstream--merged {
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  grid-template-rows: auto minmax(320px, 1fr);
  min-height: 560px;
}
.cc-mindstream--merged > .cc-asistan-card { grid-column: 1 / -1; }
.cc-mindstream--merged > .cc-ms-graph { grid-row: 2; }
.cc-mindstream--merged > .cc-ms-side { grid-row: 2; }

/* asistan kartı section içinde düzleşir — iç içe cam olmaz */
.cc-asistan-card--in-stream {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  margin: -2px -2px 10px !important;
  padding: 4px 6px 14px !important;
  min-height: 220px !important;
  max-height: 38vh !important;
}
.cc-asistan-card--in-stream::after { display: none !important; } /* çift shimmer olmasın */
.cc-asistan-card--in-stream .cc-asistan-result {
  min-height: 120px; /* chat alanı görünür ve ferah */
}

/* film-altyazı bandı — grafın alt-ortasında süzülür */
.cc-ms-sub {
  position: absolute;
  left: 8%; right: 8%; bottom: 14px;
  text-align: center;
  font-size: 14.5px; font-weight: 500; line-height: 1.5;
  color: rgba(238, 241, 246, 0.95);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.9), 0 0 18px rgba(0, 0, 0, 0.7);
  letter-spacing: 0.01em;
  opacity: 0; transform: translateY(6px);
  transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}
.cc-ms-sub.is-on { opacity: 1; transform: none; }
.cc-ms-sub[data-role="user"] { color: rgba(180, 192, 212, 0.85); font-style: italic; font-size: 13px; }

@media (max-width: 1100px) {
  .cc-mindstream--merged { grid-template-rows: auto auto auto; }
  .cc-mindstream--merged > .cc-ms-graph,
  .cc-mindstream--merged > .cc-ms-side { grid-row: auto; }
}
@media (prefers-reduced-motion: reduce) { .cc-ms-sub { transition: none; } }
