/*
 * Future Island Intelligence Suite v1.5.0-rc.3
 * Runtime Fatal Fix + Premium UI Rescue RC.
 * Scoped additions only: legacy-route guard, calmer command canvas,
 * terminal Social Intelligence states and executive report surfaces.
 */
.ves-wrap.fi-shell,
.fiis-legacy-route-fallback,
.ves-wrap .fi-signal-room,
.ves-wrap .fi-decision-report,
.ves-wrap .fi-action-rail,
.fiis-membership-screen,
.fiis-provider-settings {
  --fi-bg: #f4f1ea;
  --fi-surface: #fffaf1;
  --fi-surface-soft: #f8f4ea;
  --fi-ink: #111111;
  --fi-muted: #6f6a60;
  --fi-blue: #2458d3;
  --fi-blue-soft: #e7edff;
  --fi-sand: #d8c4a3;
  --fi-lime: #c8ff4d;
  --fi-orange: #ff5a2f;
  --fi-border: rgba(17,17,17,.12);
  --fi-shadow-soft: 0 18px 52px rgba(17,17,17,.08);
}

/* Runtime guard evidence: legacy public route can never collapse to WP critical screen. */
.fiis-legacy-route-fallback {
  max-width: 1080px;
  margin: 40px auto;
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid var(--fi-border);
  border-radius: 26px;
  background: var(--fi-surface);
  color: var(--fi-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  box-shadow: var(--fi-shadow-soft);
}
.fiis-legacy-route-fallback__actions { display:flex; flex-wrap:wrap; gap:10px; }
.fiis-legacy-route-fallback__btn { transition: transform .16s ease, background .16s ease; }
.fiis-legacy-route-fallback__btn:hover,
.fiis-legacy-route-fallback__btn:focus-visible { transform: translateY(-1px); outline: 2px solid rgba(36,88,211,.28); outline-offset: 2px; }

/* rc.3 premium rescue continuation: fewer noisy boxes, stronger editorial flow. */
.ves-wrap.fi-shell .ves-page[data-page="social"] .ves-results,
.ves-wrap.fi-shell .ves-page[data-page="reports"] .ves-results,
.ves-wrap.fi-shell .ves-page[data-page="brief-library"] .ves-results {
  border-radius: 28px !important;
  border-color: rgba(17,17,17,.10) !important;
  background: linear-gradient(180deg, #fffaf1 0%, #f8f4ea 100%) !important;
}
.ves-wrap.fi-shell .ves-result-card,
.ves-wrap.fi-shell .ves-signal-card,
.ves-wrap.fi-shell .ves-card {
  border-color: rgba(17,17,17,.10) !important;
}
.ves-wrap.fi-shell .ves-result-card { overflow-wrap: normal; word-break: normal; }
.ves-wrap.fi-shell .ves-result-card a,
.ves-wrap.fi-shell .ves-token,
.ves-wrap.fi-shell code { overflow-wrap: anywhere; }
.ves-wrap.fi-shell .ves-status[aria-busy="true"] {
  background: #fffaf1 !important;
  border: 1px solid rgba(36,88,211,.24) !important;
  color: #111 !important;
  box-shadow: none !important;
}
.ves-wrap.fi-shell .ves-status.is-warning,
.ves-wrap.fi-shell .ves-status[data-state="partial_results"],
.ves-wrap.fi-shell .ves-status[data-state="timed_out"] {
  background: rgba(255,90,47,.08) !important;
  border-color: rgba(255,90,47,.24) !important;
  color: #1d1612 !important;
}
.ves-wrap.fi-shell .ves-status.is-success,
.ves-wrap.fi-shell .ves-status[data-state="completed"],
.ves-wrap.fi-shell .ves-status[data-state="completed_with_warnings"] {
  background: rgba(200,255,77,.18) !important;
  border-color: rgba(17,17,17,.12) !important;
  color: #111 !important;
}
.ves-wrap.fi-shell .fi-action-rail,
.ves-wrap.fi-shell .fi-evidence-drawer {
  position: relative;
  display: grid;
  gap: 12px;
  align-content: start;
}
.ves-wrap.fi-shell .fi-decision-report {
  background: #fffaf1;
  border: 1px solid rgba(17,17,17,.12);
  border-radius: 28px;
  padding: clamp(24px, 4vw, 44px);
  color: #111;
}
.ves-wrap.fi-shell .fi-decision-report pre,
.ves-wrap.fi-shell .ves-report-preview pre {
  white-space: pre-wrap;
  word-break: normal;
  overflow-wrap: anywhere;
  background: #111;
  color: #fffaf1;
  border-radius: 18px;
  padding: 18px;
}
.ves-wrap.fi-shell .ves-nav-soon { display: none !important; }
.ves-wrap.fi-shell .ves-btn + .ves-btn { margin-left: 0; }
.ves-wrap.fi-shell .ves-toolbar { gap: 10px; }
@media (max-width: 900px) {
  .ves-wrap.fi-shell.ves-light-suite { grid-template-columns: 1fr !important; }
  .ves-wrap.fi-shell .ves-page-inner { padding: 24px 18px 44px !important; }
  .fiis-legacy-route-fallback { margin: 18px; }
}
