/* Education is a composition extension, not a second theme system.
   Map its domain surfaces onto Swage roles in both themes. */
.swage-education .edu-site {
  --edu-paper: var(--swage-canvas);
  --edu-surface: var(--swage-preview-paper);
  --edu-ink: var(--swage-ink);
  --edu-muted: var(--swage-muted);
  --edu-line: var(--swage-line);
  --edu-line-strong: var(--swage-line);
  --edu-accent: var(--swage-accent);
  --edu-accent-hover: var(--swage-accent);
  --edu-accent-soft: var(--swage-accent-soft);
  --edu-blue: var(--swage-material-recessed);
  --edu-green: var(--swage-accent-soft);
  --edu-radius: var(--swage-panel-radius);
  font-size: var(--swage-type-body);
}
.swage-education .edu-site :is(h1, h2, h3) {
  letter-spacing: var(--swage-tracking-normal);
}
.swage-education .edu-site > :is(.edu-hero, .edu-proof, .edu-section) {
  width: min(var(--edu-rail), calc(100% - var(--space-12)));
  padding-block: var(--swage-section-space);
  border-bottom: 0;
}
.swage-education .edu-site > .edu-hero {
  padding-top: var(--space-24);
}
.swage-education .edu-hero-copy {
  margin-inline: auto;
  text-align: center;
}
.swage-education .edu-hero-copy h1 {
  max-width: 22ch;
  margin-inline: auto;
  font-size: var(--swage-type-lifecycle-hero);
  line-height: var(--swage-leading-page);
  letter-spacing: var(--swage-tracking-lifecycle);
}
.swage-education .edu-hero-copy h1 em {
  color: var(--swage-text-accent);
  font-style: normal;
}
.swage-education .edu-hero-copy :is(.edu-lead, .edu-hero-facts) {
  margin-inline: auto;
}
.swage-education .edu-hero-copy .edu-actions {
  justify-content: center;
}
.swage-education .edu-hero-copy .swage-system-availability {
  margin-top: var(--space-6);
}
.swage-education .edu-hero-facts {
  text-align: left;
}
.swage-education .edu-site > .edu-proof {
  padding-block: var(--space-8);
  border-block: 1px solid var(--swage-line);
}
.swage-education .edu-site .edu-section h2 {
  font-size: var(--swage-type-lifecycle-section);
  line-height: var(--swage-leading-heading);
  max-width: 26ch;
}
.swage-education .edu-section-heading {
  gap: var(--space-8) var(--space-12);
}
.swage-education .edu-section-heading .edu-eyebrow {
  margin-bottom: 0;
}
.swage-education :is(.edu-flow, .edu-module-layout, .edu-role-table) {
  margin-top: var(--space-12);
}
.swage-education :is(.edu-workspace, .edu-ledger) {
  border-radius: var(--swage-panel-radius);
  overflow: hidden;
  isolation: isolate;
  background: var(--swage-preview-paper);
}
.swage-education .edu-app-main {
  background: var(--swage-material-recessed);
}
.swage-education :is(.edu-metrics > div, .edu-table-wrap, .edu-review-card) {
  background: var(--swage-preview-paper);
}
.swage-education .edu-site :is(th, td) {
  font-variant-numeric: tabular-nums;
}
.swage-education .edu-module-featured {
  grid-row: span 3;
  min-height: 0;
}
.swage-education .edu-module-featured h3 {
  font-size: var(--swage-type-lifecycle-card);
}
.swage-education .edu-module-layout {
  border-radius: var(--swage-panel-radius);
  overflow: hidden;
}
.swage-education .edu-module > svg {
  color: var(--swage-accent);
  width: var(--space-5);
}
.swage-education .edu-module-queue {
  min-height: var(--space-24);
}
.swage-education .edu-site > .edu-start {
  padding: var(--space-12);
  border: 1px solid var(--swage-line);
  border-radius: var(--swage-panel-radius);
}
.swage-education .edu-faq details:last-child {
  border-bottom: 0;
}
.swage-education .edu-text-link {
  gap: var(--space-3);
}
.swage-education .edu-text-link svg {
  width: var(--space-5);
  height: var(--space-5);
}
@media (width < 48rem) {
  .swage-education .edu-site > :is(.edu-hero, .edu-proof, .edu-section) {
    width: calc(100% - var(--space-8));
  }
  .swage-education .edu-site > .edu-start {
    padding: var(--space-6);
  }
  .swage-education .edu-hero-facts {
    text-align: center;
  }
  .swage-education .edu-section-heading {
    gap: var(--space-6);
  }
  .swage-education .edu-module-queue {
    min-height: var(--space-32);
  }
  .swage-education .edu-hero-copy h1 {
    font-size: var(--swage-type-lifecycle-hero-mobile);
  }
}

.swage-education .edu-specification-views {
  margin-top: var(--space-8);
  border-block: 1px solid var(--swage-line);
}
.swage-education .edu-specification-views > summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-block: var(--space-5);
  color: var(--swage-accent);
  cursor: pointer;
  font-weight: var(--swage-weight-semibold);
  list-style: none;
}
.swage-education .edu-specification-views > summary::-webkit-details-marker {
  display: none;
}
.swage-education .edu-specification-views > summary svg {
  width: var(--space-5);
  height: var(--space-5);
}
.swage-education .edu-specification-views[open] > summary svg {
  transform: rotate(180deg);
}
.swage-education .edu-app-heading h2 {
  font-size: var(--text-2xl);
  line-height: var(--swage-leading-card);
  letter-spacing: var(--swage-tracking-normal);
}

/* Action rows align controls; standalone text links retain their own spacing. */
.swage-education .edu-actions > .swage-text-link {
  margin-top: 0;
}
/* The marker and connector share a track, including the narrow layout. */
.swage-education .edu-flow li {
  --edu-flow-track: var(--space-16);
  grid-template-columns: var(--edu-flow-track) minmax(0, 1fr) auto;
}
.swage-education .edu-flow li::before {
  left: calc(var(--edu-flow-track) / 2);
  transform: translateX(-50%);
}
.swage-education .edu-flow > li > span {
  justify-self: center;
}
@media (width <= 820px) {
  .swage-education .edu-module-featured {
    grid-row: auto;
  }
}
@media (width <= 820px) {
  .swage-education .edu-flow li {
    --edu-flow-track: var(--space-12);
    grid-template-columns: var(--edu-flow-track) minmax(0, 1fr);
  }
}

/* Eyebrows retain authored sentence case and acronym capitalization. */
.swage-education .edu-eyebrow {
  text-transform: none;
}
