/* Saving Early - Article + Data Visualization Widget */
/* Prefix: se- */

.se-body {
  box-sizing: border-box;
  padding: 0 1rem;
}

.se-body *,
.se-body *::before,
.se-body *::after {
  box-sizing: border-box;
}

.se-container {
  max-width: 750px;
  margin: 0 auto;
  width: 100%;
}

/* ========== Article Typography ========== */

.se-article-title {
  font-size: 2em;
  font-weight: 800;
  line-height: 1.2;
  margin: 0 0 24px 0;
  text-align: left;
}

.se-article-heading {
  margin: 32px 0 12px 0;
  text-align: left;
}

.se-article-text {
  line-height: 1.75;
  margin: 0 0 18px 0;
}

.se-article-text sup {
  font-size: 0.7em;
}



/* ========== Widget Wrapper ========== */

.se-widget {
  margin: 32px 0;
}

/* ========== Investor Cards ========== */

.se-investor-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 28px;
}

.se-card {
  border-radius: 10px;
  padding: 22px 24px;
  position: relative;
  overflow: hidden;
}

.se-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 100%;
}

.se-card-investor1 {
  background: #eff6ff;
}

.se-card-investor1::before {
  background: #2563eb;
}

.se-card-investor2 {
  background: #fef3f2;
}

.se-card-investor2::before {
  background: #dc4a3a;
}

.se-card h3 {
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  font-size: 1.05em;
  font-weight: 700;
  text-align: left;
  line-height: 1.3;
}


.se-card-desc {
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  font-size: 0.92em;
  line-height: 1.5;
  opacity: 0.8;
}

.se-card-stats {
  display: flex;
  gap: 20px;
}

.se-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.se-stat-label {
  font-size: 0.78em;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.6;
  font-weight: 600;
}

.se-stat-value {
  font-size: 1.15em;
  font-weight: 700;
}

.se-card-investor1 .se-stat-value {
  color: #1d4ed8;
}

.se-card-investor2 .se-stat-value {
  color: #c0392b;
}

/* ========== Chart Section ========== */

.se-chart-section {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 24px;
  margin-bottom: 20px;
}

.se-chart-title {
  margin: 0 0 4px 0;
  font-size: 1.1em;
  font-weight: 700;
  text-align: left;
}

.se-chart-subtitle {
  margin: 0 0 20px 0;
  font-size: 0.85em;
  font-weight: 400 !important;
  opacity: 0.55;
}

.se-chart-container {
  position: relative;
  width: 100%;
  min-height: 350px;
  contain: layout;
}

.se-snowball-section {
  margin: 28px 0;
}

.se-snowball-container {
  min-height: 350px;
}


/* ========== Responsive ========== */

@media (max-width: 600px) {
  .se-body {
    padding: 0 0.5rem;
  }

  .se-investor-cards {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .se-card {
    padding: 18px 20px;
  }

  .se-card-stats {
    gap: 16px;
  }

  .se-chart-section {
    padding: 16px;
  }

  .se-chart-container,
  .se-snowball-container {
    min-height: 260px;
  }
}
