.proposition-page {
  --proposition-panel: linear-gradient(135deg, #1e2a4a 0%, #1b1d3c 40%, #162040 100%);
  --proposition-border: rgba(126, 148, 198, 0.24);
  --proposition-text: #f8fafc;
  color: var(--proposition-text);
  max-width: none;
  padding: 1.25rem 1.5rem 2rem;
}

.proposition-page .tile-card {
  border: 1px solid var(--proposition-border) !important;
  border-radius: 0.7rem !important;
  background: var(--proposition-panel) !important;
  box-shadow: 0 1.15rem 2.8rem rgba(0, 0, 0, 0.18) !important;
  overflow: hidden !important;
}

.proposition-page .tile-card::before {
  display: none;
}

.proposition-page .card-body {
  min-width: 0;
}

.proposition-page .proposition-card-logo {
  position: absolute;
  bottom: 0.75rem;
  left: 0.85rem;
  max-width: 8.5rem;
  height: 2.5rem;
  object-fit: contain;
  object-position: left center;
}

.proposition-page .Select-control,
.proposition-page .Select-menu-outer,
.proposition-page .Select-option,
.proposition-page .Select-placeholder,
.proposition-page .Select-value-label,
.proposition-page .Select-input > input {
  background-color: #1f223c !important;
  color: var(--proposition-text) !important;
}

.proposition-page .Select-control {
  border: 1px solid rgba(126, 148, 198, 0.48) !important;
  border-radius: 5px;
  box-shadow: none;
}

.proposition-page .Select-menu-outer {
  border: 1px solid rgba(126, 148, 198, 0.48) !important;
  border-radius: 5px;
  box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.28);
}

.proposition-page .Select-option.is-focused,
.proposition-page .Select-option:hover {
  background-color: rgba(37, 99, 235, 0.25) !important;
}

.proposition-page .Select-arrow {
  border-top-color: rgba(226, 232, 240, 0.72);
}

.proposition-top-grid,
.proposition-controls-grid,
.proposition-metrics-grid {
  display: grid;
  gap: 1rem;
  width: 100%;
  min-width: 0;
}

.proposition-top-grid {
  grid-template-columns: minmax(0, 5fr) minmax(12rem, 3fr) minmax(0, 4fr);
  align-items: stretch;
}

.proposition-controls-grid {
  grid-template-columns: minmax(0, 7fr) minmax(12rem, 3fr) max-content;
  align-items: end;
  margin: 0.75rem 0;
}

.proposition-metrics-grid {
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
}

.proposition-top-grid > *,
.proposition-metrics-grid > * {
  min-width: 0;
}

.proposition-top-grid .tile-card,
.proposition-metrics-grid .tile-card {
  height: 100%;
}

.proposition-funnel {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0.5rem 0;
}

.proposition-control {
  padding: 0.375rem 0.5rem;
}

.proposition-page .proposition-carousel-header {
  max-height: none !important;
  overflow: visible !important;
  padding-bottom: 0.75rem !important;
}

@media (max-width: 1199.98px) {
  .proposition-top-grid {
    grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.9fr);
    grid-template-areas: "summary explanation";
  }

  .proposition-summary-card { grid-area: summary; }
  .proposition-explanation-card { grid-area: explanation; }
  .proposition-funnel-card {
    display: none;
  }

  .proposition-metrics-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 767.98px) {
  .proposition-page {
    padding: 1rem;
  }

  .proposition-top-grid,
  .proposition-controls-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .proposition-top-grid {
    grid-template-areas:
      "summary"
      "explanation";
  }

  .proposition-funnel-card {
    display: none;
  }

  .proposition-control {
    padding: 0;
  }
}
