/* GENIUS Command Center v0.29 — spacing + responsive hardening
   Loaded after component styles and scoped to the Command Center only. */

.command-center-v029 {
  --cc-page-gutter: clamp(14px, 3.6vw, 30px);
  --cc-section-gap: clamp(12px, 2.4vw, 18px);
  --cc-panel-inset: clamp(14px, 3vw, 20px);
  --cc-panel-gap: clamp(10px, 2vw, 14px);
}

.command-center-v029 .cc-content {
  min-width: 0;
}

.command-center-v029 .cc-page-body {
  width: min(100%, 1180px);
  padding-left: max(var(--cc-page-gutter), env(safe-area-inset-left));
  padding-right: max(var(--cc-page-gutter), env(safe-area-inset-right));
  padding-bottom: calc(90px + env(safe-area-inset-bottom));
}

.command-center-v029 .cc-page-body > * {
  min-width: 0;
}

.command-center-v029 .cc-page-body > * + * {
  margin-top: var(--cc-section-gap);
}

.command-center-v029 .cc-panel,
.command-center-v029 .cc-hero-panel,
.command-center-v029 .cc-task-card,
.command-center-v029 .cc-kpi-strip button,
.command-center-v029 .cc-quick-actions button {
  min-width: 0;
}

.command-center-v029 .cc-panel-title {
  gap: 12px;
  padding: var(--cc-panel-inset);
}

.command-center-v029 .cc-panel-title > div {
  min-width: 0;
}

.command-center-v029 .cc-panel-title h2,
.command-center-v029 .cc-panel-title p,
.command-center-v029 .cc-panel-intro,
.command-center-v029 .cc-radar-clear span,
.command-center-v029 .cc-brain-latest strong,
.command-center-v029 .cc-brain-latest span,
.command-center-v029 .cc-placeholder-panel p {
  overflow-wrap: anywhere;
}

/* Home: every body gets a real inset instead of touching the divider/border. */
.command-center-v029 .cc-owner-inbox .cc-panel-intro {
  margin: 0;
  padding: var(--cc-panel-inset) var(--cc-panel-inset) 0;
}

.command-center-v029 .cc-owner-inbox .cc-owner-stack {
  padding: var(--cc-panel-gap) var(--cc-panel-inset) var(--cc-panel-inset);
}

.command-center-v029 .cc-owner-inbox .cc-text-link {
  margin: 0 var(--cc-panel-inset) var(--cc-panel-inset);
  min-height: 36px;
}

.command-center-v029 .cc-ops-radar .cc-radar-list {
  padding: var(--cc-panel-inset);
}

.command-center-v029 .cc-ops-radar > .cc-radar-clear {
  margin: var(--cc-panel-inset);
}

.command-center-v029 .cc-economics-grid {
  padding: var(--cc-panel-inset);
}

.command-center-v029 .cc-now-panel .cc-now-list,
.command-center-v029 .cc-system-work-zone .cc-now-list {
  padding: var(--cc-panel-inset);
}

.command-center-v029 .cc-work-owner-zone .cc-owner-stack {
  padding: var(--cc-panel-inset);
}

.command-center-v029 .cc-home-grid-v029,
.command-center-v029 .cc-project-grid-v029,
.command-center-v029 .cc-brains-grid-v029,
.command-center-v029 .cc-work-v029,
.command-center-v029 .cc-venture-v029 {
  gap: var(--cc-section-gap);
}

.command-center-v029 .cc-owner-stack,
.command-center-v029 .cc-radar-list,
.command-center-v029 .cc-now-list {
  gap: var(--cc-panel-gap);
}

.command-center-v029 .cc-economics-grid > div {
  min-width: 0;
}

.command-center-v029 .cc-economics-grid strong {
  overflow-wrap: anywhere;
  line-height: 1.08;
}

/* Cards with their own content should use the same inner rhythm. */
.command-center-v029 .cc-project-card-v029,
.command-center-v029 .cc-brain-card-v029,
.command-center-v029 .cc-venture-hero,
.command-center-v029 .cc-venture-pipeline,
.command-center-v029 .cc-placeholder-panel {
  padding: var(--cc-panel-inset);
}

.command-center-v029 .cc-venture-pipeline .cc-stage-track {
  margin-top: var(--cc-panel-gap);
}

.command-center-v029 .cc-project-card-v029 > header,
.command-center-v029 .cc-brain-card-v029 > header,
.command-center-v029 .cc-venture-pipeline > header {
  min-width: 0;
}

.command-center-v029 .cc-project-card-v029 > header > div,
.command-center-v029 .cc-brain-card-v029 > header > div,
.command-center-v029 .cc-venture-pipeline > header > div {
  min-width: 0;
}

/* Hero and primary actions. */
.command-center-v029 .cc-hero-v029 {
  padding: clamp(18px, 4vw, 28px);
}

.command-center-v029 .cc-quick-actions {
  gap: var(--cc-panel-gap);
}

.command-center-v029 .cc-quick-actions button {
  min-height: 72px;
  padding: 14px 16px;
}

.command-center-v029 .cc-quick-actions button > span {
  min-width: 0;
}

.command-center-v029 .cc-quick-actions small {
  white-space: normal;
  overflow-wrap: anywhere;
}

.command-center-v029 .cc-kpi-strip {
  gap: var(--cc-panel-gap);
}

.command-center-v029 .cc-kpi-strip button {
  min-height: 76px;
}

/* Header + fixed navigation respect notches and landscape safe areas. */
@media (max-width: 900px) {
  .command-center-v029 .cc-mobile-header {
    min-height: 68px;
    padding-top: max(11px, env(safe-area-inset-top));
    padding-right: max(16px, env(safe-area-inset-right));
    padding-bottom: 11px;
    padding-left: max(16px, env(safe-area-inset-left));
  }

  .command-center-v029 .cc-page-header {
    padding-left: max(var(--cc-page-gutter), env(safe-area-inset-left));
    padding-right: max(var(--cc-page-gutter), env(safe-area-inset-right));
  }

  .command-center-v029 .cc-bottom-nav {
    padding-left: max(8px, env(safe-area-inset-left));
    padding-right: max(8px, env(safe-area-inset-right));
    padding-bottom: max(8px, env(safe-area-inset-bottom));
  }

  .command-center-v029 .cc-bottom-nav button {
    min-width: 0;
    min-height: 58px;
  }

  .command-center-v029 .cc-bottom-nav button span {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .command-center-v029 .cc-detail-sheet,
  .command-center-v029 .cc-more-sheet {
    padding-left: max(18px, env(safe-area-inset-left));
    padding-right: max(18px, env(safe-area-inset-right));
  }
}

/* Tablet / large phone landscape. */
@media (min-width: 521px) and (max-width: 900px) {
  .command-center-v029 {
    --cc-page-gutter: clamp(20px, 4vw, 30px);
    --cc-panel-inset: 20px;
  }

  .command-center-v029 .cc-page-body {
    max-width: 820px;
    margin-inline: auto;
  }

  .command-center-v029 .cc-quick-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .command-center-v029 .cc-kpi-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .command-center-v029 .cc-kpi-strip button {
    padding: 12px;
  }
}

/* Phones. */
@media (max-width: 520px) {
  .command-center-v029 {
    --cc-page-gutter: 16px;
    --cc-section-gap: 14px;
    --cc-panel-inset: 16px;
    --cc-panel-gap: 10px;
  }

  .command-center-v029 .cc-page-body {
    padding-top: 12px;
    padding-bottom: calc(96px + env(safe-area-inset-bottom));
  }

  .command-center-v029 .cc-page-header {
    padding-top: 16px;
    padding-bottom: 8px;
  }

  .command-center-v029 .cc-page-header h1 {
    font-size: clamp(21px, 6vw, 24px);
  }

  .command-center-v029 .cc-hero-v029 {
    padding: 18px 16px;
    border-radius: 22px;
  }

  .command-center-v029 .cc-system-pulse {
    width: 100%;
    margin-bottom: 18px;
  }

  .command-center-v029 .cc-system-pulse > div {
    min-width: 0;
  }

  .command-center-v029 .cc-system-pulse > div > strong,
  .command-center-v029 .cc-system-pulse > div > small {
    overflow-wrap: anywhere;
  }

  .command-center-v029 .cc-hero-v029 .cc-hero-copy h1 {
    font-size: clamp(27px, 8vw, 31px);
    line-height: 1.04;
  }

  .command-center-v029 .cc-command-box {
    min-width: 0;
  }

  .command-center-v029 .cc-quick-actions {
    grid-template-columns: 1fr;
  }

  .command-center-v029 .cc-quick-actions button {
    min-height: 76px;
  }

  .command-center-v029 .cc-kpi-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .command-center-v029 .cc-kpi-strip button {
    min-height: 82px;
    padding: 12px;
  }

  .command-center-v029 .cc-panel-title {
    padding: 16px;
  }

  .command-center-v029 .cc-panel-title h2 {
    font-size: clamp(16px, 4.7vw, 19px);
  }

  .command-center-v029 .cc-panel-intro {
    font-size: 11px;
    line-height: 1.55;
  }

  .command-center-v029 .cc-owner-inbox .cc-panel-intro {
    padding: 14px 16px 0;
  }

  .command-center-v029 .cc-owner-inbox .cc-owner-stack {
    padding: 12px 16px 16px;
  }

  .command-center-v029 .cc-ops-radar .cc-radar-list,
  .command-center-v029 .cc-economics-grid,
  .command-center-v029 .cc-now-panel .cc-now-list,
  .command-center-v029 .cc-system-work-zone .cc-now-list,
  .command-center-v029 .cc-work-owner-zone .cc-owner-stack {
    padding: 16px;
  }

  .command-center-v029 .cc-ops-radar > .cc-radar-clear {
    margin: 16px;
  }

  .command-center-v029 .cc-radar-clear {
    align-items: flex-start;
    padding: 16px;
  }

  .command-center-v029 .cc-economics-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .command-center-v029 .cc-economics-grid > div {
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 12px;
    row-gap: 5px;
    align-items: center;
    padding: 15px;
  }

  .command-center-v029 .cc-economics-grid > div small {
    grid-column: 1 / -1;
  }

  .command-center-v029 .cc-economics-grid strong {
    font-size: clamp(21px, 7vw, 28px);
    text-align: right;
  }

  .command-center-v029 .cc-project-card-v029,
  .command-center-v029 .cc-brain-card-v029,
  .command-center-v029 .cc-venture-hero,
  .command-center-v029 .cc-venture-pipeline,
  .command-center-v029 .cc-placeholder-panel {
    padding: 16px;
  }

  .command-center-v029 .cc-project-stats,
  .command-center-v029 .cc-brain-metrics {
    gap: 8px;
  }

  .command-center-v029 .cc-stage-track {
    margin-right: -16px;
    margin-left: -16px;
    padding-right: 16px;
    padding-left: 16px;
    scroll-padding-inline: 16px;
  }

  .command-center-v029 .cc-detail-grid {
    gap: 8px;
  }
}

/* Narrow phones: prevent 4-up stats and toolbar labels from becoming cramped. */
@media (max-width: 390px) {
  .command-center-v029 {
    --cc-page-gutter: 12px;
    --cc-panel-inset: 14px;
  }

  .command-center-v029 .cc-mobile-header {
    padding-left: max(12px, env(safe-area-inset-left));
    padding-right: max(12px, env(safe-area-inset-right));
  }

  .command-center-v029 .cc-mobile-brand strong {
    font-size: 14px;
    letter-spacing: .18em;
  }

  .command-center-v029 .cc-status-pill {
    padding-inline: 9px;
  }

  .command-center-v029 .cc-kpi-strip button {
    gap: 8px;
    padding: 10px;
  }

  .command-center-v029 .cc-kpi-icon {
    flex-basis: 32px;
    width: 32px;
    height: 32px;
  }

  .command-center-v029 .cc-project-stats,
  .command-center-v029 .cc-brain-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .command-center-v029 .cc-panel-title {
    padding: 14px;
  }

  .command-center-v029 .cc-owner-inbox .cc-panel-intro {
    padding: 13px 14px 0;
  }

  .command-center-v029 .cc-owner-inbox .cc-owner-stack,
  .command-center-v029 .cc-ops-radar .cc-radar-list,
  .command-center-v029 .cc-economics-grid,
  .command-center-v029 .cc-now-panel .cc-now-list,
  .command-center-v029 .cc-system-work-zone .cc-now-list,
  .command-center-v029 .cc-work-owner-zone .cc-owner-stack {
    padding: 14px;
  }

  .command-center-v029 .cc-ops-radar > .cc-radar-clear {
    margin: 14px;
  }

  .command-center-v029 .cc-bottom-nav {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    padding-left: max(5px, env(safe-area-inset-left));
    padding-right: max(5px, env(safe-area-inset-right));
  }

  .command-center-v029 .cc-bottom-nav button {
    gap: 4px;
    padding-inline: 1px;
    font-size: 8px;
  }
}

/* Very narrow devices: preserve tappable controls and avoid horizontal overflow. */
@media (max-width: 340px) {
  .command-center-v029 .cc-mobile-brand strong {
    letter-spacing: .12em;
  }

  .command-center-v029 .cc-kpi-strip {
    grid-template-columns: 1fr;
  }

  .command-center-v029 .cc-kpi-strip button {
    min-height: 68px;
  }

  .command-center-v029 .cc-bottom-nav button span {
    font-size: 0;
  }

  .command-center-v029 .cc-bottom-nav button {
    min-height: 52px;
  }

  .command-center-v029 .cc-bottom-nav button svg {
    width: 20px;
    height: 20px;
  }
}

/* Landscape phones: reduce chrome height and use the available width. */
@media (max-width: 900px) and (max-height: 560px) and (orientation: landscape) {
  .command-center-v029 .cc-mobile-header {
    min-height: 54px;
    padding-top: max(7px, env(safe-area-inset-top));
    padding-bottom: 7px;
  }

  .command-center-v029 .cc-page-header {
    padding-top: 10px;
    padding-bottom: 6px;
  }

  .command-center-v029 .cc-page-body {
    max-width: none;
    padding-top: 8px;
    padding-bottom: calc(72px + env(safe-area-inset-bottom));
  }

  .command-center-v029 .cc-hero-v029 {
    padding: 16px 18px;
  }

  .command-center-v029 .cc-system-pulse {
    width: auto;
    margin-bottom: 14px;
  }

  .command-center-v029 .cc-quick-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .command-center-v029 .cc-kpi-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .command-center-v029 .cc-home-grid-v029 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .command-center-v029 .cc-bottom-nav {
    padding-top: 4px;
    padding-bottom: max(4px, env(safe-area-inset-bottom));
  }

  .command-center-v029 .cc-bottom-nav button {
    min-height: 46px;
    gap: 2px;
  }

  .command-center-v029 .cc-bottom-nav button span {
    font-size: 8px;
  }
}

/* Desktop: keep rhythm consistent when the viewport gets wide. */
@media (min-width: 901px) {
  .command-center-v029 .cc-page-body {
    padding-top: 28px;
    padding-bottom: 70px;
  }

  .command-center-v029 .cc-owner-inbox .cc-panel-intro {
    padding-top: 18px;
  }

  .command-center-v029 .cc-owner-inbox .cc-owner-stack,
  .command-center-v029 .cc-ops-radar .cc-radar-list,
  .command-center-v029 .cc-economics-grid,
  .command-center-v029 .cc-now-panel .cc-now-list,
  .command-center-v029 .cc-system-work-zone .cc-now-list,
  .command-center-v029 .cc-work-owner-zone .cc-owner-stack {
    padding: 18px;
  }

  .command-center-v029 .cc-ops-radar > .cc-radar-clear {
    margin: 18px;
  }
}
