.network-mini {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: max-content;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 6px 10px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: rgba(241, 248, 255, 0.98);
  color: var(--text-soft);
  font-size: 10px;
  line-height: 1;
}

.network-mini-label {
  color: var(--text-dim);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.network-mini strong {
  color: var(--text);
  font-size: 11px;
}

.guide-item {
  display: grid;
  gap: 8px;
}

.guide-item .subtle {
  margin: 0;
  color: var(--text-soft);
  font-size: 13px;
  line-height: 1.7;
}

.hero-shell {
  display: grid;
  gap: 18px;
}

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  gap: 18px;
}

.hero-card {
  display: grid;
  gap: 18px;
}

.hero-chip-row,
.signal-chip-row,
.selection-chip-row,
.action-row,
.metric-chip-row,
.filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.hero-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.hero-title h3,
.section-title {
  font-size: 28px;
  line-height: 1.1;
}

.hero-value {
  font-size: 54px;
  font-weight: 800;
  line-height: 0.92;
}

.hero-support {
  display: grid;
  gap: 10px;
}

.summary-list,
.news-list,
.plain-list,
.reason-list,
.stack-list,
.check-list {
  display: grid;
  gap: 12px;
}

.summary-item,
.news-item,
.plain-item,
.stack-item,
.check-item {
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: rgba(248, 252, 255, 0.98);
}

.news-item a {
  color: inherit;
  text-decoration: none;
}

.subtle {
  color: var(--text-soft);
}

.muted {
  color: var(--text-dim);
}

.tone-pill.green,
.metric-value.green,
.table-tone.green {
  color: #86f6c1;
  background: rgba(0, 214, 123, 0.12);
}

.tone-pill.red,
.metric-value.red,
.table-tone.red {
  color: #ff98aa;
  background: rgba(255, 91, 115, 0.12);
}

.tone-pill.amber,
.metric-value.amber,
.table-tone.amber {
  color: #ffd581;
  background: rgba(246, 186, 82, 0.12);
}

.metric-grid-compact,
.brain-stat-grid,
.watch-pool-grid,
.engine-layer-grid,
.selection-grid,
.session-grid,
.state-grid {
  display: grid;
  gap: 14px;
}

.metric-grid-compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.brain-stat-grid,
.watch-pool-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.engine-layer-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.selection-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.session-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.metric-card,
.state-card,
.engine-card,
.selection-card,
.session-card,
.watch-pool-card {
  padding: 16px;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: rgba(248, 252, 255, 0.98);
}

.metric-card h4,
.state-card h4,
.engine-card h4,
.selection-card h4,
.session-card h4,
.watch-pool-card h4 {
  margin: 0;
  font-size: 15px;
}

.metric-card strong,
.state-card strong,
.engine-card strong,
.watch-pool-card strong {
  display: block;
  margin-top: 8px;
  font-size: 24px;
}

.selection-card {
  display: grid;
  gap: 12px;
}

.selection-card__top {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
}

.selection-card__body {
  display: grid;
  gap: 10px;
}

.selection-card__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.selection-card__meta span,
.detail-grid span,
.detail-pair span {
  display: block;
  color: var(--text-dim);
  font-size: 12px;
}

.selection-card__meta strong,
.detail-grid strong,
.detail-pair strong {
  display: block;
  margin-top: 4px;
  color: var(--text);
  font-size: 14px;
}

.detail-grid,
.detail-pair-grid {
  display: grid;
  gap: 12px;
}

.detail-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.detail-pair-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ribbon-card,
.analysis-card,
.brain-card,
.decision-card {
  padding: 20px;
  border-radius: 20px;
  border: 1px solid var(--line-strong);
  background: linear-gradient(135deg, rgba(47, 123, 232, 0.1), rgba(132, 197, 255, 0.1));
}

.decision-status {
  display: grid;
  gap: 8px;
}

.decision-status strong {
  font-size: 46px;
  line-height: 0.95;
}

.decision-bar {
  height: 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  overflow: hidden;
}

.decision-bar span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--accent), var(--accent-2));
}

.rank-list,
.book-list,
.session-list,
.version-tree {
  display: grid;
  gap: 12px;
}

.rank-row,
.book-entry,
.version-card {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(249, 252, 255, 0.98);
}

.flow-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.flow-step {
  padding: 16px;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: rgba(247, 251, 255, 0.94);
}

.progress-track {
  margin-top: 10px;
  height: 8px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(70, 120, 180, 0.12);
}

.progress-track span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--accent), var(--accent-2));
}

.chart-stage {
  position: relative;
  min-height: 260px;
  overflow: hidden;
}

.chart-stage svg {
  width: 100%;
  height: 100%;
  display: block;
}

.chart-overlay {
  position: absolute;
  left: 18px;
  top: 18px;
  display: grid;
  gap: 6px;
}

.book-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.skeleton-note {
  color: var(--text-dim);
  font-size: 12px;
}

.micro-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  color: var(--text-dim);
  font-size: 12px;
}

.news-cluster,
.analysis-cluster {
  display: grid;
  gap: 14px;
}

.headline-card {
  display: grid;
  gap: 8px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid var(--line-strong);
  background: linear-gradient(135deg, rgba(47, 123, 232, 0.08), rgba(132, 197, 255, 0.1));
}

.hero-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.command-decision-grid {
  align-items: start;
}

.lane-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 16px;
}

.lane-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: rgba(248, 252, 255, 0.98);
}

.lane-card.is-long {
  border-color: rgba(0, 214, 123, 0.28);
  background: linear-gradient(180deg, rgba(0, 214, 123, 0.08), rgba(247, 251, 255, 0.94));
}

.lane-card.is-short {
  border-color: rgba(255, 91, 115, 0.28);
  background: linear-gradient(180deg, rgba(255, 91, 115, 0.08), rgba(247, 251, 255, 0.94));
}

.lane-card.is-watch {
  border-color: rgba(246, 186, 82, 0.28);
  background: linear-gradient(180deg, rgba(246, 186, 82, 0.08), rgba(247, 251, 255, 0.94));
}

.pool-grid,
.training-batch-grid,
.bucket-lab-grid,
.brain-advice-grid {
  display: grid;
  gap: 14px;
}

.pool-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.training-batch-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 16px;
}

.bucket-lab-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 16px;
}

.brain-advice-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 16px;
}

.brain-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: 16px;
}

.brain-hero-stack {
  display: grid;
  gap: 14px;
}

.brain-hero-stack h4 {
  margin: 0;
  font-size: 22px;
  line-height: 1.35;
  color: var(--text-main);
}

.brain-kv-list {
  display: grid;
  gap: 12px;
}

.ghost-button--mini {
  min-height: 34px;
  padding: 0 12px;
  font-size: 12px;
}

.small-note {
  font-size: 11px;
  color: var(--text-dim);
}

@media (max-width: 1120px) {
  .hero-grid,
  .metric-grid-compact,
  .session-grid,
  .selection-grid,
  .hero-mini-grid,
  .detail-grid,
  .book-split,
  .flow-steps,
  .engine-layer-grid,
  .lane-grid,
  .pool-grid,
  .training-batch-grid,
  .bucket-lab-grid,
  .brain-advice-grid,
  .brain-overview-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .topbar-tools {
    width: 100%;
    flex-wrap: wrap;
  }

  .network-mini {
    width: 100%;
    justify-content: space-between;
  }

  .hero-value {
    font-size: 38px;
  }

  .decision-status strong {
    font-size: 34px;
  }

  .selection-card__meta,
  .brain-stat-grid,
  .watch-pool-grid,
  .detail-pair-grid {
    grid-template-columns: 1fr;
  }
}
.panel-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
}

.panel-heading h3,
.panel-heading h4 {
  margin: 4px 0 0;
}

.mini-badge,
.symbol-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(241, 248, 255, 0.98);
  color: var(--text-soft);
  font-size: 12px;
  line-height: 1;
}

.mini-badge.is-long,
.metric-card.is-long {
  border-color: rgba(0, 214, 123, 0.35);
}

.mini-badge.is-short,
.metric-card.is-short {
  border-color: rgba(255, 91, 115, 0.35);
}

.mini-badge.is-watch,
.metric-card.is-watch {
  border-color: rgba(246, 186, 82, 0.35);
}

.table-shell {
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 18px;
}

.table-shell table {
  width: 100%;
  border-collapse: collapse;
}

.table-shell th,
.table-shell td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  font-size: 13px;
}

.table-shell th {
  color: var(--text-dim);
  font-weight: 600;
}

.book-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: rgba(243, 249, 255, 0.98);
  margin-bottom: 10px;
}

.book-row.is-long { color: #86f6c1; }
.book-row.is-short { color: #ff98aa; }
