/* Academy-only alignment and approved navigation colours, 2026-10-18. */
.sye-universal-header .sye-universal-nav > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  min-block-size: 40px;
  box-sizing: border-box;
  line-height: 1.2;
}
.sye-universal-header .sye-nav-logo {
  display: block;
  flex: 0 0 24px;
  inline-size: 24px;
  block-size: 24px;
  margin: 0;
  object-fit: contain;
}
.sye-universal-header .sye-universal-tools {
  align-items: center;
}
.sye-universal-header .sye-universal-tools > label {
  display: flex;
  align-items: center;
  margin: 0;
}
.sye-universal-header .sye-universal-language,
.sye-universal-header .sye-universal-cta {
  min-block-size: 40px;
  box-sizing: border-box;
}
.sye-universal-mobile nav a {
  display: flex;
  align-items: center;
  gap: .5rem;
  min-block-size: 44px;
}
.account-nav {
  align-items: center;
}
body.v12 .account-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}
body.v12 .account-nav > form {
  margin-inline: 0;
}
body.v12 .account-nav > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #002342;
  color: #fff;
  border: 1px solid #002342;
  border-radius: 999px;
  padding-inline: 1.15rem;
  text-decoration: none;
  font-weight: 700;
}
body.v12 .account-nav > a[href*="teacher-courses.php"],
body.v12 .account-nav > a[href*="assessment-admin.php"] {
  background: #a52b35;
  border-color: #a52b35;
  color: #fff;
}
body.v12 .journey-shell a[href^="login.php"]:not(.account-nav > a),
body.v12 .journey-shell form:has(input[type="password"]) button:not([type="button"]):not(.password-toggle) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  max-inline-size: 560px;
  block-size: 52px;
  min-block-size: 52px;
  box-sizing: border-box;
  padding: .75rem 1.2rem;
  border: 1px solid #c9a44c;
  border-radius: 6px;
  background: #c9a44c;
  color: #002342;
  font-weight: 700;
  text-decoration: none;
}
body.v12 .journey-shell form:has(input[name="password_confirm"]) button:not([type="button"]):not(.password-toggle) {
  background: #002342;
  border-color: #002342;
  color: #fff;
}
body.v12 .account-nav > a:hover { filter: brightness(1.12); }
body.v12 .account-nav > a:focus-visible,
body.v12 .journey-shell a[href^="login.php"]:focus-visible,
body.v12 .journey-shell form:has(input[type="password"]) button:focus-visible {
  outline: 3px solid #c9a44c;
  outline-offset: 3px;
}
.account-nav > form {
  display: flex;
  align-items: center;
  margin-block: 0;
}
.account-nav > a,
.account-nav > form > button,
.topbar .panel-nav > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-block-size: 48px;
  box-sizing: border-box;
  line-height: 1.4;
  margin-block: 0;
}
body.v12 .account-nav > a,
body.v12 .account-nav > form > button {
  block-size: 48px;
  min-block-size: 48px;
  padding-block: 0;
}
.learner-courses > .learner-course,
.courses-grid > .course-card {
  display: flex;
  flex-direction: column;
  min-inline-size: 0;
}
.learner-courses .learner-course-body,
.courses-grid .course-card-content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: stretch;
  min-inline-size: 0;
}
.learner-courses .learner-course-state,
.courses-grid .course-status {
  align-self: flex-start;
}
.learner-courses .learner-course-body h2 {
  min-block-size: 2.8em;
}
.courses-grid .course-card-content h2 {
  min-block-size: 2.7em;
}
.learner-courses .learner-course-body > h2,
.courses-grid .course-card-content > h2 {
  margin-block: .8rem .6rem;
}
.learner-courses .learner-course-body > p,
.courses-grid .course-card-content > p {
  margin-block: .55rem;
}
.learner-courses .learner-course-body > progress {
  margin-block: .5rem;
}
.learner-courses .learner-course-body > .actions,
.courses-grid .course-card-content > .actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: .5rem;
  margin-block-start: auto;
  padding-block-start: 1rem;
}
.learner-courses .actions > a,
.learner-courses .actions > span,
.courses-grid .actions > a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-block-size: 48px;
  min-inline-size: 0;
  box-sizing: border-box;
  text-align: center;
  line-height: 1.35;
  white-space: normal;
}
@media (max-width: 600px) {
  .learner-courses .learner-course-body h2,
  .courses-grid .course-card-content h2 {
    min-block-size: 0;
  }
}
