/* Page-specific styles */

/* ===== HERO THEME ===== */
.article-hero { background: linear-gradient(160deg, #1a2a0a 0%, #2a4010 55%, #344d14 100%); }
.article-tag-row { display: flex; align-items: center; justify-content: center; gap: 8px; margin-bottom: 20px; flex-wrap: wrap; }
.tag-insights { background: #5a3a10; }
.tag-org      { background: #7a4a10; }
.article-hero-sub { color: #a8c870; }
.article-meta-author { color: #d1db24; }
.article-meta-date, .article-meta-read { color: #7a9a50; }
.article-meta-sep { color: #4a6a20; }
.article-cta { background: linear-gradient(135deg, #1a2a0a 0%, #2a4010 100%); border: 2px solid #3a5a14; }
.article-cta p { color: #a8c870; }
.article-cta a.secondary { color: #a8c870; border: 2px solid #3a6a14; }

/* Big stat */
.stat-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 32px 0;
}
.stat-card {
  background: #fff;
  border: 2px solid #dde8c8;
  border-radius: 12px;
  padding: 22px 18px;
  text-align: center;
}
.stat-num {
  font-size: 42px;
  font-weight: 900;
  color: #62b517;
  line-height: 1;
  margin-bottom: 6px;
}
.stat-num span { font-size: 24px; }
.stat-label {
  font-size: 12px;
  font-weight: 700;
  color: #555;
  line-height: 1.45;
}
.stat-source {
  font-size: 10px;
  color: #aaa;
  font-weight: 600;
  margin-top: 6px;
}
@media (max-width: 560px) { .stat-row { grid-template-columns: 1fr; } }

/* Forgetting curve visual */
.curve-block {
  background: #fff;
  border: 2px solid #dde8c8;
  border-radius: 14px;
  padding: 28px 24px;
  margin: 32px 0;
}
.curve-block-title {
  font-size: 11px; font-weight: 900; text-transform: uppercase;
  letter-spacing: 2px; color: #888; margin-bottom: 16px;
}
.curve-block svg { width: 100%; }

/* Learning ladder */
.ladder {
  margin: 32px 0;
  display: flex;
  flex-direction: column;
  gap: 0;
  border-radius: 12px;
  overflow: hidden;
  border: 2px solid #dde8c8;
}
.ladder-row {
  display: flex;
  align-items: center;
  gap: 0;
  border-bottom: 1px solid #dde8c8;
}
.ladder-row:last-child { border-bottom: none; }
.ladder-pct {
  width: 64px;
  flex-shrink: 0;
  font-size: 16px;
  font-weight: 900;
  text-align: center;
  padding: 14px 0;
  color: #fff;
}
.ladder-bar-wrap {
  flex: 1;
  padding: 10px 14px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  background: #fafcf6;
}
.ladder-method { font-size: 13px; font-weight: 800; color: #2a2a2a; }
.ladder-bar {
  height: 8px;
  border-radius: 4px;
  background: #e0e0e0;
  overflow: hidden;
}
.ladder-bar-fill { height: 100%; border-radius: 4px; }

/* Kolb cycle */
.kolb {
  background: #0c1829;
  border-radius: 14px;
  padding: 28px 24px;
  margin: 32px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.kolb-title {
  font-size: 10px; font-weight: 900; text-transform: uppercase;
  letter-spacing: 2.5px; color: #4a7aaa;
}
.kolb-ring {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 12px;
  width: 100%;
  max-width: 440px;
}
.kolb-quadrant {
  border-radius: 12px;
  padding: 16px 18px;
  position: relative;
}
.kolb-quadrant.q1 { background: #1a3a1a; border: 2px solid #62b517; }
.kolb-quadrant.q2 { background: #1a2a3a; border: 2px solid #4a8aaa; }
.kolb-quadrant.q3 { background: #2a2a1a; border: 2px solid #d1db24; }
.kolb-quadrant.q4 { background: #2a1a1a; border: 2px solid #aa6a4a; }
.kolb-q-num {
  font-size: 9px; font-weight: 900; text-transform: uppercase;
  letter-spacing: 2px; margin-bottom: 6px;
}
.q1 .kolb-q-num { color: #62b517; }
.q2 .kolb-q-num { color: #4a8aaa; }
.q3 .kolb-q-num { color: #d1db24; }
.q4 .kolb-q-num { color: #aa8a6a; }
.kolb-q-title { font-size: 14px; font-weight: 900; color: #fff; margin-bottom: 4px; }
.kolb-q-desc  { font-size: 12px; color: #8a9aaa; line-height: 1.5; }
.kolb-game-tag {
  font-size: 11px; font-weight: 800; color: #a8c96a; margin-top: 8px;
  padding: 3px 8px; background: rgba(98,181,23,0.12);
  border-radius: 5px; display: inline-block;
}

/* Conditions grid */
.conditions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin: 28px 0;
}
.condition-card {
  background: #fff;
  border: 2px solid #dde8c8;
  border-radius: 12px;
  padding: 20px 18px;
}
.condition-icon { font-size: 24px; margin-bottom: 8px; }
.condition-title { font-size: 14px; font-weight: 900; color: #1a2a0a; margin-bottom: 6px; }
.condition-desc  { font-size: 13px; color: #555; line-height: 1.6; }
@media (max-width: 560px) { .conditions { grid-template-columns: 1fr; } }

/* Compare table */
.compare-table {
  width: 100%; border-collapse: collapse;
  margin: 28px 0; font-size: 14px;
}
.compare-table th {
  background: #2a4010; color: #d1db24;
  font-size: 10px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 2px;
  padding: 12px 16px; text-align: left;
}
.compare-table th:first-child { border-radius: 8px 0 0 0; }
.compare-table th:last-child  { border-radius: 0 8px 0 0; }
.compare-table td {
  padding: 12px 16px;
  border-bottom: 1px solid #e8f0d8;
  font-weight: 600; color: #333;
  background: #fff; line-height: 1.5;
  vertical-align: top;
}
.compare-table tr:last-child td { border-bottom: none; }
.compare-table tr:last-child td:first-child { border-radius: 0 0 0 8px; }
.compare-table tr:last-child td:last-child  { border-radius: 0 0 8px 0; }
.compare-table td.passive { color: #7a3030; }
.compare-table td.active  { color: #2a6a2a; }
