.aurora-policy-menu {
  --ap-accent: var(--aurora-primary, var(--primary, #f59e0b));
  font-family: inherit;
  width: 100%;
  box-sizing: border-box;
  background: transparent;
  border: 0;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
}
.aurora-policy-menu * {
  box-sizing: border-box;
}
.aurora-policy-menu__heading {
  padding: 15px 18px;
  margin: 0;
  background: var(--bg-surface, #fff);
  color: var(--text-dark, #172033);
  border-bottom: 2px solid var(--ap-accent);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.055em;
  line-height: 1.4;
}
.aurora-policy-menu__list {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}
.aurora-policy-menu__item {
  margin: 0 !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--border-light, #e5e7eb);
}
.aurora-policy-menu__item:last-child {
  border-bottom: 0;
}
.aurora-policy-menu__link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 15px !important;
  color: var(--text-dark, #243247) !important;
  text-decoration: none !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  letter-spacing: 0.025em;
  line-height: 1.45;
  transition:
    background 0.2s ease,
    color 0.2s ease,
    padding-left 0.2s ease;
  border-left: 3px solid transparent;
}
.aurora-policy-menu__link::before {
  content: "";
  width: 5px;
  height: 5px;
  flex: none;
  border-radius: 50%;
  background: var(--ap-accent);
  opacity: 0.65;
}
.aurora-policy-menu__link:hover,
.aurora-policy-menu__link:focus-visible {
  background: color-mix(in srgb, var(--ap-accent) 9%, white);
  color: var(--text-dark, #172033) !important;
  border-left-color: var(--ap-accent);
  padding-left: 19px !important;
  outline: none;
}
.aurora-policy-menu__link:focus-visible {
  box-shadow: inset 0 0 0 2px var(--ap-accent);
}

/* Keep sidebar hover readable when Aurora dark mode is active. */
[data-theme="dark"] .aurora-policy-menu__link:hover,
[data-theme="dark"] .aurora-policy-menu__link:focus-visible {
  background: #33291c;
  color: #ffffff !important;
  border-left-color: #fbbf24;
}
[data-theme="dark"] .aurora-policy-menu__link:hover::before,
[data-theme="dark"] .aurora-policy-menu__link:focus-visible::before {
  background: #fbbf24;
  opacity: 1;
}
[data-theme="dark"] .aurora-policy-menu__link:focus-visible {
  box-shadow: inset 0 0 0 2px #fbbf24;
}

@media (max-width: 600px) {
  .aurora-policy-menu__link {
    font-size: 12px !important;
    padding: 12px 13px !important;
  }
}

/* ==================================
   About Journal
================================== */
/* JSPK custom Page Footer - add to OJS Journal Style Sheet; scoped to Aurora footer */
#aurora-footer .aurora-page-footer-content {
  width: 100%;
  max-width: none;
  margin-top: 1.5rem;
  font-size: inherit;
  color: inherit;
}
#aurora-footer .jspk-custom-footer {
  --jspk-footer-accent: var(--aurora-primary, #f59e0b);
  --jspk-footer-muted: rgba(255, 255, 255, 0.76);
  color: var(--aurora-footer-text, #fafaf9);
  text-align: left;
  font-family: var(--aurora-font-body, Arial, sans-serif);
}
#aurora-footer .jspk-footer-grid {
  display: grid;
  grid-template-columns: minmax(220px, 1.6fr) repeat(3, minmax(145px, 1fr));
  gap: 2rem;
  align-items: start;
}
#aurora-footer .jspk-footer-col {
  min-width: 0;
}
#aurora-footer .jspk-footer-col h2,
#aurora-footer .jspk-footer-col h3 {
  color: inherit;
  font-size: 1rem;
  font-weight: 750;
  line-height: 1.45;
  letter-spacing: 0.025em;
  margin: 0 0 1rem;
  text-transform: uppercase;
}
#aurora-footer .jspk-footer-col h2 {
  font-size: 1.08rem;
  color: var(--jspk-footer-accent);
}
#aurora-footer .jspk-footer-col h3::after {
  content: "";
  display: block;
  width: 54px;
  height: 2px;
  margin-top: 0.65rem;
  background: var(--jspk-footer-accent);
}
#aurora-footer .jspk-footer-col p {
  color: var(--jspk-footer-muted);
  font-size: 0.89rem;
  line-height: 1.75;
  margin: 0 0 0.7rem;
}
#aurora-footer .jspk-footer-brand .jspk-footer-tagline {
  color: inherit;
  font-weight: 650;
  border-left: 3px solid var(--jspk-footer-accent);
  padding-left: 0.75rem;
  margin-bottom: 0.95rem;
}
#aurora-footer .jspk-footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
#aurora-footer .jspk-footer-col li {
  margin: 0 0 0.8rem;
  padding: 0;
}
#aurora-footer .jspk-custom-footer a {
  color: inherit !important;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 450;
  line-height: 1.5;
  opacity: 0.9;
  transition:
    color 0.2s,
    opacity 0.2s,
    padding-left 0.2s;
}
#aurora-footer .jspk-custom-footer a:hover,
#aurora-footer .jspk-custom-footer a:focus-visible {
  color: var(--jspk-footer-accent) !important;
  opacity: 1;
}
#aurora-footer .jspk-custom-footer a:focus-visible {
  outline: 2px solid var(--jspk-footer-accent);
  outline-offset: 4px;
  border-radius: 2px;
}
#aurora-footer .jspk-platform-heading {
  font-weight: 700;
  color: inherit !important;
}
#aurora-footer .jspk-platform-link {
  display: inline-block;
  margin-top: 0.3rem;
}
/* Aurora uses data-theme, not only operating-system dark mode */
html[data-theme="dark"] #aurora-footer .jspk-custom-footer {
  --jspk-footer-muted: rgba(255, 255, 255, 0.72);
}
html:not([data-theme="dark"]) #aurora-footer .jspk-custom-footer {
  --jspk-footer-muted: rgba(255, 255, 255, 0.78);
}
@media (max-width: 980px) {
  #aurora-footer .jspk-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.75rem;
  }
}
@media (max-width: 560px) {
  #aurora-footer .jspk-footer-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  #aurora-footer .jspk-custom-footer {
    padding: 0.25rem 0.15rem;
  }
}

/* ==================================
   About Journal
================================== */
/* ABOUT THE JOURNAL / Aurora premium refresh — CSS only.
   Replace ONLY the previous about-journal-matching.css rules in OJS Additional CSS.*/
.aj-about {
  --aj-accent: var(--aurora-primary, var(--primary, #f28b00));
  --aj-bg: var(--aurora-bg-surface, var(--bg-surface, #fff));
  --aj-fg: var(--aurora-text-body, var(--text-body, #44403c));
  --aj-title: var(--aurora-text-dark, var(--text-dark, #211d1a));
  --aj-muted: var(--aurora-text-muted, var(--text-muted, #77716b));
  --aj-border: var(
    --aurora-border,
    var(--border-light, rgba(120, 113, 108, 0.18))
  );
  --aj-glow: color-mix(in srgb, var(--aj-accent) 13%, transparent);
  --aj-soft: color-mix(in srgb, var(--aj-accent) 7%, var(--aj-bg));
  color: var(--aj-fg);
  font-family: var(
    --aurora-font-body,
    var(--font-body, Inter, Arial, sans-serif)
  );
  font-size: 15px;
  line-height: 1.82;
  max-width: 100%;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  overflow-wrap: break-word;
}
.aj-about,
.aj-about * {
  box-sizing: border-box;
}
.aj-about h1,
.aj-about h2,
.aj-about h3 {
  font-family: var(
    --aurora-font-heading,
    var(--font-heading, Inter, Arial, sans-serif)
  );
  color: var(--aj-title);
  letter-spacing: -0.03em;
}
.aj-about h1 {
  font-size: clamp(2.3rem, 5vw, 3.85rem);
  line-height: 1.1;
  margin: 13px 0 20px;
  font-weight: 850;
  letter-spacing: -0.055em;
}
.aj-about h2 {
  font-size: clamp(1.24rem, 2.4vw, 1.8rem);
  line-height: 1.3;
  margin: 0 0 15px;
  font-weight: 800;
}
.aj-about h3 {
  font-size: 1.03rem;
  line-height: 1.4;
  font-weight: 750;
  margin: 0 0 9px;
}
.aj-about p {
  margin: 0 0 16px;
  color: var(--aj-fg);
  line-height: 1.85;
}
.aj-about p:last-child {
  margin-bottom: 0;
}
.aj-eyebrow,
.aj-section-label {
  color: var(--aj-accent);
  font-weight: 850;
  font-size: 0.69rem;
  letter-spacing: 0.17em;
  line-height: 1.5;
  text-transform: uppercase;
}
/* Hero has its own restrained amber decoration, but no enclosing outer card. */
.aj-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(36px, 5vw, 66px) clamp(24px, 4.5vw, 56px) 46px;
  margin: 0 0 12px;
  border: 1px solid var(--aj-border);
  border-radius: 22px;
  background: linear-gradient(120deg, var(--aj-soft), var(--aj-bg) 62%);
  box-shadow: 0 16px 44px -36px
    color-mix(in srgb, var(--aj-title) 32%, transparent);
}
.aj-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto -75px -165px auto;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--aj-glow) 0%, transparent 69%);
  pointer-events: none;
}
.aj-hero::after {
  content: "";
  display: block;
  width: 58px;
  height: 4px;
  border-radius: 10px;
  background: var(--aj-accent);
  margin-top: 28px;
}
.aj-hero .aj-lead {
  max-width: 66ch;
  color: var(--aj-muted);
  font-size: clamp(1rem, 1.6vw, 1.15rem);
  line-height: 1.75;
}
.aj-hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}
.aj-hero-meta > div {
  display: inline-flex;
  align-items: center;
  font-size: 0.79rem;
  font-weight: 750;
  line-height: 1.3;
  color: var(--aj-title);
  padding: 9px 15px;
  border: 1px solid color-mix(in srgb, var(--aj-accent) 22%, var(--aj-border));
  background: color-mix(in srgb, var(--aj-accent) 5%, var(--aj-bg));
  border-radius: 999px;
}
.aj-hero-meta > div::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: none;
  margin-right: 9px;
  border-radius: 50%;
  background: var(--aj-accent);
}
.aj-intro {
  padding: 46px 4px 36px;
}
.aj-intro h2 {
  margin: 11px 0 18px;
  max-width: 28ch;
}
.aj-intro p {
  max-width: 90ch;
}
/* Highlight block */
.aj-model {
  position: relative;
  overflow: hidden;
  padding: clamp(24px, 3.5vw, 38px);
  border: 1px solid color-mix(in srgb, var(--aj-accent) 21%, var(--aj-border));
  background: linear-gradient(145deg, var(--aj-soft), var(--aj-bg) 70%);
  border-radius: 20px;
  box-shadow: 0 12px 36px -34px var(--aj-title);
}
.aj-model::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 4px;
  background: var(--aj-accent);
}
.aj-model h2 {
  margin: 10px 0 14px;
}
.aj-model > p {
  max-width: 75ch;
}
.aj-principles {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 24px;
}
.aj-principles > div {
  min-width: 0;
  border: 1px solid var(--aj-border);
  border-radius: 13px;
  padding: 19px 17px;
  background: var(--aj-bg);
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}
.aj-principles > div::before {
  content: "";
  display: block;
  width: 26px;
  height: 3px;
  border-radius: 4px;
  background: var(--aj-accent);
  margin-bottom: 16px;
}
.aj-principles strong {
  display: block;
  margin-bottom: 6px;
  font-size: 0.9rem;
  color: var(--aj-title);
}
.aj-principles p {
  font-size: 0.84rem;
  line-height: 1.65;
  color: var(--aj-muted);
}
/* Numbered editorial sections */
.aj-stage {
  position: relative;
  padding: 38px 4px 39px;
  border-bottom: 1px solid var(--aj-border);
  scroll-margin-top: 100px;
}
.aj-model + .aj-stage {
  margin-top: 17px;
}
.aj-stage-head {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 17px;
}
.aj-stage-head h2 {
  margin: 0;
}
.aj-num {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  height: 44px;
  border-radius: 13px;
  background: var(--aj-soft);
  border: 1px solid color-mix(in srgb, var(--aj-accent) 24%, var(--aj-border));
  font-size: 0.9rem;
  letter-spacing: 0.015em;
  font-weight: 850;
  color: var(--aj-accent);
  font-variant-numeric: tabular-nums;
}
.aj-stage > p {
  padding-left: 62px;
}
.aj-criteria {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
  margin: 25px 0 0 62px;
}
.aj-criteria-item {
  min-width: 0;
  position: relative;
  overflow: hidden;
  border: 1px solid var(--aj-border);
  border-radius: 16px;
  background: var(--aj-bg);
  padding: 22px 22px 21px;
  box-shadow: 0 10px 26px -26px var(--aj-title);
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}
.aj-criteria-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--aj-accent), transparent 80%);
  opacity: 0.75;
}
.aj-criteria-no {
  color: var(--aj-accent);
  font-size: 0.73rem;
  font-weight: 850;
  letter-spacing: 0.1em;
  margin-bottom: 12px;
}
.aj-criteria-item p {
  font-size: 0.9rem;
  color: var(--aj-muted);
  line-height: 1.7;
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .aj-criteria-item:hover,
  .aj-principles > div:hover {
    transform: translateY(-4px);
    border-color: color-mix(in srgb, var(--aj-accent) 42%, var(--aj-border));
    box-shadow: 0 16px 38px -28px var(--aj-title);
  }
}
.aj-footer {
  padding: 30px 4px 10px;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.aj-footer p {
  font-size: 0.88rem;
  color: var(--aj-muted);
}
@media (max-width: 760px) {
  .aj-hero {
    padding: 34px 23px 30px;
    border-radius: 17px;
  }
  .aj-principles {
    grid-template-columns: 1fr;
  }
  .aj-stage > p {
    padding-left: 0;
  }
  .aj-criteria {
    margin-left: 0;
  }
  .aj-stage-head {
    align-items: flex-start;
    gap: 12px;
  }
  .aj-num {
    flex-basis: 39px;
    height: 39px;
    border-radius: 11px;
  }
  .aj-intro {
    padding: 38px 2px 29px;
  }
}
@media (max-width: 540px) {
  .aj-hero {
    padding: 29px 20px;
  }
  .aj-hero-meta {
    gap: 7px;
  }
  .aj-hero-meta > div {
    font-size: 0.72rem;
    padding: 7px 10px;
  }
  .aj-criteria {
    grid-template-columns: 1fr;
  }
  .aj-criteria-item {
    padding: 18px;
  }
  .aj-stage {
    padding: 29px 1px;
  }
  .aj-stage-head h2 {
    font-size: 1.24rem;
  }
  .aj-model {
    padding: 24px 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .aj-about * {
    transition: none !important;
    animation: none !important;
  }
}

/* ==================================
   01. EDITORIAL TEAM
================================== */
/* Editor page — Aurora theme · OJS-safe scoped styles */
.ed-page {
  --ed-main: var(--aurora-bg-main, #fafaf9);
  --ed-surface: var(--aurora-bg-surface, #fff);
  --ed-ink: var(--aurora-text-dark, #1c1917);
  --ed-text: var(--aurora-text-body, #44403c);
  --ed-muted: var(--aurora-text-muted, #78716c);
  --ed-border: var(--aurora-border, rgba(0, 0, 0, 0.08));
  --ed-primary: var(--aurora-primary, #f59e0b);
  --ed-secondary: var(--aurora-secondary, #e11d48);
  --ed-tint: color-mix(in srgb, var(--ed-primary) 11%, var(--ed-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.72;
  color: var(--ed-text);
  width: 100%;
  max-width: 100%;
}
.ed-page * {
  box-sizing: border-box;
}
.ed-page h2,
.ed-page h3,
.ed-page h4,
.ed-page p {
  margin: 0;
}
.ed-page h2,
.ed-page h3,
.ed-page h4 {
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  color: var(--ed-ink);
  line-height: 1.32;
  letter-spacing: -0.025em;
}
.ed-page .ed-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--ed-surface);
  border: 1px solid var(--ed-border);
  border-radius: 22px;
  padding: clamp(28px, 5vw, 54px);
  margin-bottom: 20px;
}
.ed-page .ed-hero:before {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  right: -125px;
  top: -160px;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--ed-primary) 21%, transparent),
    transparent 71%
  );
}
.ed-page .ed-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(90deg, var(--ed-primary), var(--ed-secondary));
}
.ed-page .ed-eyebrow {
  font-size: 11px;
  letter-spacing: 0.14em;
  font-weight: 800;
  color: var(--ed-muted);
  text-transform: uppercase;
  position: relative;
  padding-left: 18px;
  margin-bottom: 13px;
}
.ed-page .ed-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--ed-primary);
  box-shadow: 0 0 0 4px var(--ed-tint);
}
.ed-page .ed-hero h2 {
  font-size: clamp(29px, 4.5vw, 44px);
  font-weight: 850;
  margin-bottom: 12px;
}
.ed-page .ed-hero-text {
  font-size: 15px;
  line-height: 1.85;
  max-width: 680px;
}
.ed-page .ed-pills {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 22px;
}
.ed-page .ed-pills > div {
  background: var(--ed-main);
  border: 1px solid var(--ed-border);
  border-radius: 999px;
  padding: 5px 13px;
  font-size: 11px;
  font-weight: 700;
  color: var(--ed-ink);
}
.ed-page .ed-section {
  background: var(--ed-surface);
  border: 1px solid var(--ed-border);
  border-radius: 20px;
  padding: clamp(20px, 3vw, 34px);
  margin-bottom: 18px;
}
.ed-page .ed-heading {
  display: flex;
  gap: 14px;
  align-items: center;
  margin-bottom: 22px;
}
.ed-page .ed-section-num {
  width: 45px;
  height: 45px;
  display: grid;
  place-items: center;
  flex: 0 0 45px;
  border-radius: 13px;
  background: var(--ed-tint);
  border: 1px solid color-mix(in srgb, var(--ed-primary) 25%, var(--ed-border));
  font-size: 13px;
  font-weight: 800;
  color: var(--ed-ink);
}
.ed-page .ed-overline {
  font-size: 10px;
  letter-spacing: 0.13em;
  font-weight: 800;
  color: var(--ed-muted);
  margin-bottom: 3px;
}
.ed-page .ed-heading h3 {
  font-size: clamp(20px, 2.8vw, 27px);
  font-weight: 800;
}
.ed-page .ed-chief-card {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid color-mix(in srgb, var(--ed-primary) 32%, var(--ed-border));
  border-radius: 17px;
  background: linear-gradient(115deg, var(--ed-tint), var(--ed-surface) 66%);
}
.ed-page .ed-avatar {
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  background: color-mix(in srgb, var(--ed-primary) 14%, var(--ed-surface));
  border: 1px solid color-mix(in srgb, var(--ed-primary) 25%, var(--ed-border));
  color: var(--ed-ink);
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  font-weight: 850;
  font-size: 20px;
  letter-spacing: -0.03em;
}
.ed-page .ed-chief-avatar {
  width: 92px;
  height: 92px;
  flex-basis: 92px;
  border-radius: 23px;
  font-size: 30px;
  background: color-mix(in srgb, var(--ed-primary) 19%, var(--ed-surface));
}
.ed-page .ed-role {
  font-size: 10px;
  letter-spacing: 0.15em;
  font-weight: 850;
  color: var(--ed-muted);
  margin-bottom: 8px;
}
.ed-page .ed-chief-details {
  position: relative;
  z-index: 1;
  min-width: 0;
}
.ed-page .ed-chief-details h4 {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 850;
  margin-bottom: 8px;
}
.ed-page .ed-field {
  font-size: 13px;
  font-weight: 750;
  color: var(--ed-ink);
  margin-bottom: 3px;
}
.ed-page .ed-affiliation {
  font-size: 13px;
  line-height: 1.65;
  color: var(--ed-text);
}
.ed-page .ed-chief-decoration {
  position: absolute;
  right: 26px;
  bottom: -34px;
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  font-size: 126px;
  font-weight: 900;
  letter-spacing: -0.09em;
  line-height: 1;
  color: color-mix(in srgb, var(--ed-primary) 9%, transparent);
  pointer-events: none;
}
.ed-page .ed-section-description {
  margin: -10px 0 20px;
  font-size: 13px;
  color: var(--ed-muted);
}
.ed-page .ed-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.ed-page .ed-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 240px;
  padding: 24px;
  border: 1px solid var(--ed-border);
  border-radius: 15px;
  background: var(--ed-main);
  transition:
    transform 0.2s,
    border-color 0.2s,
    box-shadow 0.2s;
}
.ed-page .ed-card:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--ed-primary) 52%, var(--ed-border));
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.05);
}
.ed-page .ed-card-top {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 17px;
}
.ed-page .ed-card-number {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: var(--ed-muted);
  border: 1px solid var(--ed-border);
  border-radius: 9px;
  padding: 5px 10px;
  background: var(--ed-surface);
}
.ed-page .ed-card h4 {
  font-size: clamp(16px, 2vw, 19px);
  font-weight: 800;
  margin-bottom: 18px;
  overflow-wrap: anywhere;
}
.ed-page .ed-card-rule {
  height: 2px;
  width: 31px;
  border-radius: 3px;
  background: var(--ed-primary);
  margin-top: auto;
  margin-bottom: 14px;
}
.ed-page .ed-footer {
  border: 1px solid color-mix(in srgb, var(--ed-primary) 27%, var(--ed-border));
  border-radius: 16px;
  padding: 24px 30px;
  margin-top: 18px;
  background: linear-gradient(135deg, var(--ed-tint), var(--ed-surface) 70%);
}
.ed-page .ed-footer-label {
  font-size: 10px;
  letter-spacing: 0.15em;
  font-weight: 850;
  color: var(--ed-muted);
  margin-bottom: 5px;
}
.ed-page .ed-footer p {
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  color: var(--ed-ink);
  font-size: 16px;
  font-weight: 800;
}
[data-theme="dark"] .ed-page {
  --ed-tint: color-mix(in srgb, var(--ed-primary) 14%, var(--ed-surface));
}
@media (max-width: 650px) {
  .ed-page .ed-grid {
    grid-template-columns: 1fr;
  }
  .ed-page .ed-section,
  .ed-page .ed-hero {
    border-radius: 16px;
  }
  .ed-page .ed-chief-card {
    align-items: flex-start;
    gap: 14px;
  }
  .ed-page .ed-chief-avatar {
    width: 65px;
    height: 65px;
    flex-basis: 65px;
    border-radius: 17px;
    font-size: 22px;
  }
  .ed-page .ed-chief-decoration {
    font-size: 85px;
    right: 12px;
  }
  .ed-page .ed-card {
    min-height: unset;
    padding: 21px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ed-page .ed-card {
    transition: none;
  }
}

/* ==================================
   02. REVIEWER
================================== */
/* Reviewer page — Aurora theme · OJS-safe scoped styles */
.rv-page {
  --rv-main: var(--aurora-bg-main, #fafaf9);
  --rv-surface: var(--aurora-bg-surface, #fff);
  --rv-ink: var(--aurora-text-dark, #1c1917);
  --rv-text: var(--aurora-text-body, #44403c);
  --rv-muted: var(--aurora-text-muted, #78716c);
  --rv-border: var(--aurora-border, rgba(0, 0, 0, 0.08));
  --rv-primary: var(--aurora-primary, #f59e0b);
  --rv-secondary: var(--aurora-secondary, #e11d48);
  --rv-tint: color-mix(in srgb, var(--rv-primary) 11%, var(--rv-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.72;
  color: var(--rv-text);
  width: 100%;
  max-width: 100%;
}
.rv-page * {
  box-sizing: border-box;
}
.rv-page h2,
.rv-page h3,
.rv-page h4,
.rv-page p {
  margin: 0;
}
.rv-page h2,
.rv-page h3,
.rv-page h4 {
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  color: var(--rv-ink);
  line-height: 1.32;
  letter-spacing: -0.025em;
}
.rv-page .rv-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--rv-surface);
  border: 1px solid var(--rv-border);
  border-radius: 22px;
  padding: clamp(28px, 5vw, 54px);
  margin-bottom: 20px;
}
.rv-page .rv-hero:before {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  right: -125px;
  top: -160px;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--rv-primary) 21%, transparent),
    transparent 71%
  );
}
.rv-page .rv-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(90deg, var(--rv-primary), var(--rv-secondary));
}
.rv-page .rv-eyebrow {
  font-size: 11px;
  letter-spacing: 0.14em;
  font-weight: 800;
  color: var(--rv-muted);
  text-transform: uppercase;
  position: relative;
  padding-left: 18px;
  margin-bottom: 13px;
}
.rv-page .rv-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--rv-primary);
  box-shadow: 0 0 0 4px var(--rv-tint);
}
.rv-page .rv-hero h2 {
  font-size: clamp(29px, 4.5vw, 44px);
  font-weight: 850;
  margin-bottom: 12px;
}
.rv-page .rv-hero-text {
  font-size: 15px;
  line-height: 1.85;
  max-width: 680px;
}
.rv-page .rv-pills {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 22px;
}
.rv-page .rv-pills > div {
  background: var(--rv-main);
  border: 1px solid var(--rv-border);
  border-radius: 999px;
  padding: 5px 13px;
  font-size: 11px;
  font-weight: 700;
  color: var(--rv-ink);
}
.rv-page .rv-section {
  background: var(--rv-surface);
  border: 1px solid var(--rv-border);
  border-radius: 20px;
  padding: clamp(20px, 3vw, 34px);
  margin-bottom: 18px;
}
.rv-page .rv-heading {
  display: flex;
  gap: 14px;
  align-items: center;
  margin-bottom: 22px;
}
.rv-page .rv-section-num {
  width: 45px;
  height: 45px;
  display: grid;
  place-items: center;
  flex: 0 0 45px;
  border-radius: 13px;
  background: var(--rv-tint);
  border: 1px solid color-mix(in srgb, var(--rv-primary) 25%, var(--rv-border));
  font-size: 13px;
  font-weight: 800;
  color: var(--rv-ink);
}
.rv-page .rv-overline {
  font-size: 10px;
  letter-spacing: 0.13em;
  font-weight: 800;
  color: var(--rv-muted);
  margin-bottom: 3px;
}
.rv-page .rv-heading h3 {
  font-size: clamp(20px, 2.8vw, 27px);
  font-weight: 800;
}
.rv-page .rv-chief-card {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid color-mix(in srgb, var(--rv-primary) 32%, var(--rv-border));
  border-radius: 17px;
  background: linear-gradient(115deg, var(--rv-tint), var(--rv-surface) 66%);
}
.rv-page .rv-avatar {
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  background: color-mix(in srgb, var(--rv-primary) 14%, var(--rv-surface));
  border: 1px solid color-mix(in srgb, var(--rv-primary) 25%, var(--rv-border));
  color: var(--rv-ink);
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  font-weight: 850;
  font-size: 20px;
  letter-spacing: -0.03em;
}
.rv-page .rv-chief-avatar {
  width: 92px;
  height: 92px;
  flex-basis: 92px;
  border-radius: 23px;
  font-size: 30px;
  background: color-mix(in srgb, var(--rv-primary) 19%, var(--rv-surface));
}
.rv-page .rv-role {
  font-size: 10px;
  letter-spacing: 0.15em;
  font-weight: 850;
  color: var(--rv-muted);
  margin-bottom: 8px;
}
.rv-page .rv-chief-details {
  position: relative;
  z-index: 1;
  min-width: 0;
}
.rv-page .rv-chief-details h4 {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 850;
  margin-bottom: 8px;
}
.rv-page .rv-field {
  font-size: 13px;
  font-weight: 750;
  color: var(--rv-ink);
  margin-bottom: 3px;
}
.rv-page .rv-affiliation {
  font-size: 13px;
  line-height: 1.65;
  color: var(--rv-text);
}
.rv-page .rv-chief-decoration {
  position: absolute;
  right: 26px;
  bottom: -34px;
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  font-size: 126px;
  font-weight: 900;
  letter-spacing: -0.09em;
  line-height: 1;
  color: color-mix(in srgb, var(--rv-primary) 9%, transparent);
  pointer-events: none;
}
.rv-page .rv-section-description {
  margin: -10px 0 20px;
  font-size: 13px;
  color: var(--rv-muted);
}
.rv-page .rv-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.rv-page .rv-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 240px;
  padding: 24px;
  border: 1px solid var(--rv-border);
  border-radius: 15px;
  background: var(--rv-main);
  transition:
    transform 0.2s,
    border-color 0.2s,
    box-shadow 0.2s;
}
.rv-page .rv-card:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--rv-primary) 52%, var(--rv-border));
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.05);
}
.rv-page .rv-card-top {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 17px;
}
.rv-page .rv-card-number {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: var(--rv-muted);
  border: 1px solid var(--rv-border);
  border-radius: 9px;
  padding: 5px 10px;
  background: var(--rv-surface);
}
.rv-page .rv-card h4 {
  font-size: clamp(16px, 2vw, 19px);
  font-weight: 800;
  margin-bottom: 18px;
  overflow-wrap: anywhere;
}
.rv-page .rv-card-rule {
  height: 2px;
  width: 31px;
  border-radius: 3px;
  background: var(--rv-primary);
  margin-top: auto;
  margin-bottom: 14px;
}
.rv-page .rv-footer {
  border: 1px solid color-mix(in srgb, var(--rv-primary) 27%, var(--rv-border));
  border-radius: 16px;
  padding: 24px 30px;
  margin-top: 18px;
  background: linear-gradient(135deg, var(--rv-tint), var(--rv-surface) 70%);
}
.rv-page .rv-footer-label {
  font-size: 10px;
  letter-spacing: 0.15em;
  font-weight: 850;
  color: var(--rv-muted);
  margin-bottom: 5px;
}
.rv-page .rv-footer p {
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  color: var(--rv-ink);
  font-size: 16px;
  font-weight: 800;
}
[data-theme="dark"] .rv-page {
  --rv-tint: color-mix(in srgb, var(--rv-primary) 14%, var(--rv-surface));
}
@media (max-width: 650px) {
  .rv-page .rv-grid {
    grid-template-columns: 1fr;
  }
  .rv-page .rv-section,
  .rv-page .rv-hero {
    border-radius: 16px;
  }
  .rv-page .rv-chief-card {
    align-items: flex-start;
    gap: 14px;
  }
  .rv-page .rv-chief-avatar {
    width: 65px;
    height: 65px;
    flex-basis: 65px;
    border-radius: 17px;
    font-size: 22px;
  }
  .rv-page .rv-chief-decoration {
    font-size: 85px;
    right: 12px;
  }
  .rv-page .rv-card {
    min-height: unset;
    padding: 21px;
  }
}
@media (prefers-reducrv-motion: reduce) {
  .rv-page .rv-card {
    transition: none;
  }
}

/* Reviewer-specific refinements */
.rv-page .rv-hero {
  background: linear-gradient(125deg, var(--rv-surface) 58%, var(--rv-tint));
}
.rv-page .rv-hero-art {
  position: absolute;
  right: 36px;
  bottom: -30px;
  font-size: clamp(96px, 16vw, 174px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.09em;
  color: color-mix(in srgb, var(--rv-primary) 10%, transparent);
  pointer-events: none;
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
}
.rv-page .rv-hero-text,
.rv-page .rv-pills {
  position: relative;
  z-index: 1;
}
.rv-page .rv-card {
  position: relative;
  overflow: hidden;
  min-height: 265px;
  background: linear-gradient(145deg, var(--rv-main), var(--rv-surface));
  border-top: 3px solid
    color-mix(in srgb, var(--rv-primary) 55%, var(--rv-border));
}
.rv-page .rv-card:after {
  content: "";
  position: absolute;
  right: -35px;
  top: -35px;
  width: 115px;
  height: 115px;
  border: 1px solid color-mix(in srgb, var(--rv-primary) 13%, transparent);
  border-radius: 50%;
  pointer-events: none;
}
.rv-page .rv-card:hover {
  border-top-color: var(--rv-primary);
}
.rv-page .rv-role {
  color: var(--rv-muted);
}
.rv-page .rv-footer {
  margin-bottom: 10px;
}
@media (max-width: 650px) {
  .rv-page .rv-hero-art {
    font-size: 105px;
    right: 8px;
    bottom: -16px;
  }
  .rv-page .rv-card {
    min-height: unset;
  }
}

/* ==================================
   03. PEER REVIEW PROCESS
================================== */
/* Peer Review Process — OJS Aurora, standalone scoped stylesheet */
.prp-page {
  --prp-primary: var(--aurora-primary, #f59e0b);
  --prp-surface: var(--aurora-bg-surface, #fff);
  --prp-bg: var(--aurora-bg-main, #fafaf9);
  --prp-title: var(--aurora-text-dark, #1c1917);
  --prp-body: var(--aurora-text-body, #44403c);
  --prp-muted: var(--aurora-text-muted, #78716c);
  --prp-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --prp-tint: color-mix(in srgb, var(--prp-primary) 9%, var(--prp-surface));
  font-family: var(--aurora-font-body, system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.78;
  color: var(--prp-body);
  width: 100%;
  max-width: 100%;
}
.prp-page * {
  box-sizing: border-box;
}
.prp-page p {
  margin: 0 0 15px;
}
.prp-page p:last-child {
  margin-bottom: 0;
}
.prp-page h2,
.prp-page h3,
.prp-page h4 {
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  color: var(--prp-title);
  line-height: 1.34;
  margin: 0;
  letter-spacing: -0.025em;
}
.prp-page .prp-hero {
  border: 1px solid var(--prp-border);
  border-radius: 22px;
  padding: clamp(28px, 5vw, 54px);
  margin: 0 0 24px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0%, var(--prp-tint), transparent 57%),
    var(--prp-surface);
}
.prp-page .prp-hero:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;
  background: var(--prp-primary);
}
.prp-page .prp-eyebrow,
.prp-page .prp-kicker {
  font-size: 11px;
  letter-spacing: 0.14em;
  font-weight: 800;
  color: var(--prp-primary);
  text-transform: uppercase;
}
.prp-page .prp-hero h2 {
  font-size: clamp(28px, 4.1vw, 43px);
  margin: 10px 0 13px;
  font-weight: 800;
}
.prp-page .prp-hero p {
  max-width: 680px;
  font-size: 16px;
  color: var(--prp-muted);
}
.prp-page .prp-tags {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 22px;
}
.prp-page .prp-tags div {
  border: 1px solid var(--prp-border);
  background: var(--prp-surface);
  border-radius: 100px;
  padding: 6px 13px;
  font-size: 12px;
  font-weight: 700;
  color: var(--prp-body);
}
.prp-page .prp-intro {
  margin: 0 0 22px;
  padding: 25px 27px;
  border: 1px solid var(--prp-border);
  border-radius: 17px;
  background: var(--prp-surface);
}
.prp-page .prp-intro h3 {
  font-size: 21px;
  margin: 8px 0 12px;
}
.prp-page .prp-model {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  align-items: start;
  gap: 20px;
  margin-bottom: 23px;
  padding: 27px;
  background: var(--prp-tint);
  border: 1px solid var(--prp-border);
  border-radius: 18px;
}
.prp-page .prp-model-icon {
  display: grid;
  place-items: center;
  width: 70px;
  height: 70px;
  border-radius: 19px;
  background: var(--prp-primary);
  color: #19140b;
  font-size: 30px;
  font-weight: 800;
}
.prp-page .prp-model h3 {
  font-size: 22px;
  margin: 7px 0 11px;
}
.prp-page .prp-section {
  margin: 0 0 20px;
  border-radius: 18px;
  border: 1px solid var(--prp-border);
  background: var(--prp-surface);
  padding: clamp(22px, 3.3vw, 33px);
}
.prp-page .prp-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 19px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--prp-border);
}
.prp-page .prp-num {
  display: grid;
  place-items: center;
  flex: none;
  width: 43px;
  height: 43px;
  border-radius: 13px;
  background: var(--prp-tint);
  color: var(--prp-primary);
  font-weight: 800;
  font-size: 15px;
}
.prp-page .prp-head h3 {
  font-size: clamp(18px, 2.3vw, 23px);
  font-weight: 800;
}
.prp-page .prp-subtitle {
  font-weight: 800;
  color: var(--prp-title);
  margin: 20px 0 13px;
}
.prp-page .prp-checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
  list-style: none;
  padding: 0;
  margin: 15px 0 20px;
}
.prp-page .prp-checks li {
  position: relative;
  padding: 13px 15px 13px 35px;
  border: 1px solid var(--prp-border);
  border-radius: 12px;
  background: var(--prp-bg);
  font-size: 14px;
  line-height: 1.65;
}
.prp-page .prp-checks li:before {
  content: "✓";
  position: absolute;
  left: 13px;
  top: 13px;
  font-weight: 900;
  color: var(--prp-primary);
}
.prp-page .prp-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
  margin-top: 18px;
}
.prp-page .prp-card,
.prp-page .prp-decision {
  padding: 19px;
  border: 1px solid var(--prp-border);
  border-radius: 14px;
  background: var(--prp-bg);
  transition:
    transform 0.2s ease,
    border-color 0.2s ease;
}
.prp-page .prp-card:hover,
.prp-page .prp-decision:hover {
  transform: translateY(-2px);
  border-color: var(--prp-primary);
}
.prp-page .prp-card h4,
.prp-page .prp-decision h4 {
  font-size: 16px;
  margin-bottom: 9px;
}
.prp-page .prp-card p,
.prp-page .prp-decision p {
  font-size: 14px;
}
.prp-page .prp-decision-label {
  font-size: 12px;
  font-weight: 900;
  color: var(--prp-primary);
  margin-bottom: 10px;
}
.prp-page .prp-note {
  margin-top: 15px;
  padding: 13px 16px;
  background: var(--prp-tint);
  border-radius: 12px;
  font-size: 14px;
  font-weight: 700;
  color: var(--prp-title);
}
.prp-page .prp-last {
  background: linear-gradient(125deg, var(--prp-tint), var(--prp-surface) 70%);
  border-left: 4px solid var(--prp-primary);
}
[data-theme="dark"] .prp-page,
.dark-mode .prp-page,
body.dark .prp-page {
  --prp-tint: color-mix(in srgb, var(--prp-primary) 15%, var(--prp-surface));
}
@media (max-width: 700px) {
  .prp-page .prp-grid,
  .prp-page .prp-checks {
    grid-template-columns: 1fr;
  }
  .prp-page .prp-model {
    grid-template-columns: 1fr;
    gap: 13px;
  }
  .prp-page .prp-model-icon {
    width: 56px;
    height: 56px;
    font-size: 24px;
  }
  .prp-page .prp-head {
    align-items: flex-start;
  }
  .prp-page .prp-hero {
    border-radius: 16px;
  }
  .prp-page .prp-section {
    border-radius: 14px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .prp-page .prp-card,
  .prp-page .prp-decision {
    transition: none;
  }
  .prp-page .prp-card:hover,
  .prp-page .prp-decision:hover {
    transform: none;
  }
}

/* ==================================
   04. AIMS, FOCUS AND SCOPE
================================== */
/* Aims, Focus and Scope — scoped to avoid conflicts with Aurora */
.afs-page {
  --afs-bg: var(--aurora-bg-main, #fafaf9);
  --afs-surface: var(--aurora-bg-surface, #fff);
  --afs-heading: var(--aurora-text-dark, #1c1917);
  --afs-body: var(--aurora-text-body, #44403c);
  --afs-muted: var(--aurora-text-muted, #78716c);
  --afs-line: var(--aurora-border, rgba(0, 0, 0, 0.08));
  --afs-primary: var(--aurora-primary, #f59e0b);
  --afs-soft: color-mix(in srgb, var(--afs-primary) 11%, var(--afs-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  color: var(--afs-body);
  width: 100%;
  max-width: 100%;
  line-height: 1.75;
  font-size: 15px;
}
.afs-page * {
  box-sizing: border-box;
}
.afs-page svg {
  width: 23px;
  height: 23px;
  display: block;
}
.afs-page a {
  color: inherit;
  text-decoration: none;
}
.afs-page p {
  margin: 0;
}
.afs-page h2,
.afs-page h3,
.afs-page h4 {
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  color: var(--afs-heading);
  line-height: 1.32;
  letter-spacing: -0.025em;
  margin: 0;
}
.afs-page .afs-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border-radius: 22px;
  background: var(--afs-surface);
  border: 1px solid var(--afs-line);
  margin-bottom: 22px;
}
.afs-hero:before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 330px;
  height: 330px;
  right: -130px;
  top: -150px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--afs-primary) 20%, transparent),
    transparent 70%
  );
}
.afs-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 96px;
  height: 4px;
  border-radius: 0 5px 0 0;
  background: linear-gradient(
    90deg,
    var(--afs-primary),
    var(--aurora-secondary, #e11d48)
  );
}
.afs-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--afs-heading);
  margin-bottom: 16px;
}
.afs-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--afs-primary);
  box-shadow: 0 0 0 4px var(--afs-soft);
}
.afs-hero h2 {
  font-size: clamp(27px, 4vw, 43px);
  font-weight: 800;
  margin: 0 0 15px;
}
.afs-lead {
  max-width: 720px;
  font-size: 16px;
  color: var(--afs-body);
  line-height: 1.85;
}
.afs-hero-tags {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 23px;
}
.afs-hero-tags span {
  font-size: 11px;
  font-weight: 750;
  color: var(--afs-heading);
  border: 1px solid var(--afs-line);
  background: var(--afs-bg);
  border-radius: 999px;
  padding: 5px 12px;
}
.afs-nav {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 0 24px;
}
.afs-nav a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--afs-surface);
  border: 1px solid var(--afs-line);
  padding: 8px 12px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 750;
  transition:
    background 0.2s,
    border-color 0.2s;
}
.afs-nav a:hover,
.afs-nav a:focus-visible {
  background: var(--afs-soft);
  border-color: var(--afs-primary);
  outline: none;
}
.afs-section {
  border: 1px solid var(--afs-line);
  background: var(--afs-surface);
  border-radius: 18px;
  padding: clamp(22px, 3vw, 36px);
  margin-bottom: 18px;
}
.afs-section-head {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 17px;
}
.afs-step {
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  background: var(--afs-soft);
  border: 1px solid color-mix(in srgb, var(--afs-primary) 23%, transparent);
  color: var(--afs-heading);
  border-radius: 12px;
  font-size: 13px;
  font-weight: 850;
}
.afs-section h3 {
  font-size: clamp(19px, 2.5vw, 25px);
  font-weight: 800;
}
.afs-section > p + p {
  margin-top: 14px;
}
.afs-kicker {
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--afs-muted);
  margin-bottom: 10px !important;
}
.afs-aims {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 0;
  margin: 0;
  list-style: none;
}
.afs-aims li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 16px;
  border: 1px solid var(--afs-line);
  border-radius: 12px;
  background: var(--afs-bg);
  font-size: 13px;
  line-height: 1.65;
}
.afs-check {
  display: grid;
  place-items: center;
  flex: 0 0 23px;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  background: var(--afs-soft);
  color: var(--afs-heading);
  font-weight: 850;
}
.afs-focus-card {
  margin-top: 18px;
  border-left: 3px solid var(--afs-primary);
  padding: 13px 18px;
  background: var(--afs-bg);
  border-radius: 0 11px 11px 0;
}
.afs-scope-intro {
  margin-bottom: 20px !important;
}
.afs-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}
.afs-scope-card {
  min-width: 0;
  border: 1px solid var(--afs-line);
  border-radius: 14px;
  padding: 20px;
  background: var(--afs-bg);
  transition:
    transform 0.2s,
    border-color 0.2s,
    box-shadow 0.2s;
}
.afs-scope-card:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--afs-primary) 52%, var(--afs-line));
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.05);
}
.afs-scope-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}
.afs-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid color-mix(in srgb, var(--afs-primary) 23%, transparent);
  border-radius: 11px;
  color: var(--afs-heading);
  background: var(--afs-soft);
}
.afs-index {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  color: var(--afs-muted);
}
.afs-scope-card h4 {
  font-size: 15px;
  font-weight: 800;
  margin-bottom: 8px;
}
.afs-scope-card p {
  font-size: 12.8px;
  line-height: 1.72;
  color: var(--afs-body);
}
.afs-ending {
  border: 1px solid color-mix(in srgb, var(--afs-primary) 24%, var(--afs-line));
  background: linear-gradient(135deg, var(--afs-soft), var(--afs-surface) 65%);
}
.afs-page [id^="afs-"] {
  scroll-margin-top: 110px;
}
[data-theme="dark"] .afs-page {
  --afs-soft: color-mix(in srgb, var(--afs-primary) 15%, var(--afs-surface));
}
@media (max-width: 650px) {
  .afs-grid,
  .afs-aims {
    grid-template-columns: 1fr;
  }
  .afs-hero {
    border-radius: 16px;
  }
  .afs-section {
    border-radius: 15px;
  }
  .afs-nav {
    gap: 6px;
  }
  .afs-nav a {
    padding: 7px 9px;
    font-size: 11px;
  }
  .afs-scope-card {
    padding: 17px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .afs-page * {
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* Aims intro spacing formerly inline */
.afs-page .afs-aims-intro {
  margin-bottom: 18px;
}

/* ==================================
   05. AUTHOR GUIDELINES
================================== */
/* Author Guidelines — Aurora / OJS. Scoped to .ag-page */
.ag-page {
  --ag-surface: var(--aurora-bg-surface, #fff);
  --ag-background: var(--aurora-bg-main, #fafaf9);
  --ag-heading: var(--aurora-text-dark, #1c1917);
  --ag-text: var(--aurora-text-body, #44403c);
  --ag-muted: var(--aurora-text-muted, #78716c);
  --ag-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --ag-accent: var(--aurora-primary, #e5a22a);
  --ag-tint: color-mix(in srgb, var(--ag-accent) 10%, var(--ag-surface));
  color: var(--ag-text);
  font: 400 15px/1.75 var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  max-width: 100%;
  width: 100%;
}
.ag-page * {
  box-sizing: border-box;
}
.ag-page p {
  margin: 0;
}
.ag-page p + p {
  margin-top: 13px;
}
.ag-page h2,
.ag-page h3,
.ag-page h4 {
  margin: 0;
  color: var(--ag-heading);
  letter-spacing: -0.025em;
  line-height: 1.35;
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
}
.ag-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--ag-border);
  border-radius: 22px;
  background: var(--ag-surface);
  padding: clamp(27px, 5vw, 52px);
  margin-bottom: 18px;
}
.ag-hero:before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 335px;
  height: 335px;
  right: -140px;
  top: -170px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--ag-accent) 22%, transparent),
    transparent 71%
  );
}
.ag-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 125px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--ag-accent),
    var(--aurora-secondary, #c95065)
  );
  border-radius: 0 8px 0 0;
}
.ag-eyebrow {
  position: relative;
  padding-left: 18px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.13em;
  color: var(--ag-heading);
  margin-bottom: 15px;
}
.ag-eyebrow:before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--ag-accent);
  box-shadow: 0 0 0 4px var(--ag-tint);
}
.ag-hero h2 {
  font-size: clamp(29px, 4.5vw, 44px);
  font-weight: 850;
  margin-bottom: 11px;
}
.ag-hero-lead {
  font-weight: 800;
  color: var(--ag-heading);
  font-size: 17px !important;
  margin-bottom: 8px !important;
}
.ag-hero > p {
  max-width: 690px;
  font-size: 15px;
}
.ag-hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
}
.ag-hero-tags > div {
  border: 1px solid var(--ag-border);
  background: var(--ag-background);
  border-radius: 999px;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 750;
  color: var(--ag-heading);
}
.ag-intro,
.ag-section {
  border: 1px solid var(--ag-border);
  background: var(--ag-surface);
  border-radius: 18px;
  padding: clamp(21px, 3vw, 36px);
  margin-bottom: 17px;
}
.ag-intro-label {
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.13em;
  color: var(--ag-muted);
  margin-bottom: 10px;
}
.ag-intro h3 {
  font-size: clamp(21px, 3vw, 27px);
  margin-bottom: 16px;
}
.ag-section-head {
  display: flex;
  gap: 13px;
  align-items: center;
  margin-bottom: 19px;
}
.ag-number {
  display: grid;
  place-items: center;
  flex: none;
  width: 43px;
  height: 43px;
  border-radius: 12px;
  background: var(--ag-tint);
  border: 1px solid color-mix(in srgb, var(--ag-accent) 24%, transparent);
  font-size: 13px;
  font-weight: 850;
  color: var(--ag-heading);
}
.ag-section-head h3 {
  font-size: clamp(19px, 2.5vw, 26px);
  font-weight: 800;
}
.ag-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}
.ag-card {
  min-width: 0;
  border: 1px solid var(--ag-border);
  background: var(--ag-background);
  padding: 20px;
  border-radius: 14px;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}
.ag-card:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--ag-accent) 50%, var(--ag-border));
  box-shadow: 0 12px 25px rgba(0, 0, 0, 0.035);
}
.ag-card-num {
  display: inline-block;
  background: var(--ag-tint);
  border: 1px solid var(--ag-border);
  border-radius: 9px;
  padding: 3px 10px;
  margin-bottom: 12px;
  font-size: 11px;
  font-weight: 850;
  color: var(--ag-heading);
}
.ag-card h4 {
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 9px;
}
.ag-card p {
  font-size: 13px;
  line-height: 1.74;
}
.ag-card p + p {
  margin-top: 11px;
}
.ag-structure-grid .ag-card:last-child:nth-child(odd) {
  grid-column: 1/-1;
}
.ag-table-wrap {
  overflow-x: auto;
  margin-top: 18px;
  border: 1px solid var(--ag-border);
  border-radius: 13px;
}
.ag-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 440px;
  font-size: 13px;
  text-align: left;
}
.ag-table th,
.ag-table td {
  padding: 12px 16px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid var(--ag-border);
  line-height: 1.55;
}
.ag-table thead th {
  font-weight: 800;
  background: var(--ag-tint);
  color: var(--ag-heading);
}
.ag-table tbody th {
  width: 30%;
  font-weight: 800;
  color: var(--ag-heading);
}
.ag-table tbody tr:nth-child(even) {
  background: var(--ag-background);
}
.ag-table tbody tr:last-child th,
.ag-table tbody tr:last-child td {
  border-bottom: 0;
}
.ag-highlight {
  margin: 18px 0;
  border-left: 3px solid var(--ag-accent);
  background: var(--ag-background);
  border-radius: 0 12px 12px 0;
  padding: 16px 20px;
}
.ag-highlight-title {
  color: var(--ag-heading);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.11em;
  margin-bottom: 5px;
}
.ag-page strong {
  color: var(--ag-heading);
}
.ag-steps {
  padding: 0;
  margin: 18px 0 0;
  list-style: none;
  counter-reset: agstep;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}
.ag-steps li {
  counter-increment: agstep;
  position: relative;
  background: var(--ag-background);
  border: 1px solid var(--ag-border);
  padding: 15px 16px 15px 49px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.6;
}
.ag-steps li:before {
  content: counter(agstep, decimal-leading-zero);
  position: absolute;
  left: 13px;
  top: 15px;
  font-size: 11px;
  font-weight: 850;
  color: var(--ag-heading);
  background: var(--ag-tint);
  border-radius: 7px;
  padding: 2px 5px;
}
.ag-final {
  background: linear-gradient(130deg, var(--ag-tint), var(--ag-surface) 70%);
  border-color: color-mix(in srgb, var(--ag-accent) 26%, var(--ag-border));
}
[data-theme="dark"] .ag-page {
  --ag-tint: color-mix(in srgb, var(--ag-accent) 15%, var(--ag-surface));
}
@media (max-width: 650px) {
  .ag-card-grid,
  .ag-steps {
    grid-template-columns: 1fr;
  }
  .ag-structure-grid .ag-card:last-child:nth-child(odd) {
    grid-column: auto;
  }
  .ag-hero {
    border-radius: 16px;
  }
  .ag-intro,
  .ag-section {
    border-radius: 15px;
  }
  .ag-card {
    padding: 17px;
  }
  .ag-section-head {
    align-items: flex-start;
  }
  .ag-section-head h3 {
    padding-top: 6px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ag-page .ag-card {
    transition: none;
  }
}

/* ==================================
   Author fees 
================================== */
/* Author Fees — Aurora-compatible, isolated styling (af- prefix) */
.af-page {
  --af-surface: var(--aurora-bg-surface, #fff);
  --af-bg: var(--aurora-bg-main, #fafaf9);
  --af-heading: var(--aurora-text-dark, #1c1917);
  --af-body: var(--aurora-text-body, #44403c);
  --af-muted: var(--aurora-text-muted, #78716c);
  --af-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --af-primary: var(--aurora-primary, #f59e0b);
  --af-soft: color-mix(in srgb, var(--af-primary) 10%, var(--af-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  color: var(--af-body);
  line-height: 1.75;
  font-size: 15px;
  max-width: 100%;
  width: 100%;
}
.af-page * {
  box-sizing: border-box;
}
.af-page h2,
.af-page h3 {
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  color: var(--af-heading);
  letter-spacing: -0.025em;
  line-height: 1.3;
  margin: 0;
}
.af-page p {
  margin: 0;
}
.af-page strong {
  font-weight: 800;
}
.af-page .af-hero {
  isolation: isolate;
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid var(--af-border);
  border-radius: 22px;
  background: var(--af-surface);
  margin-bottom: 18px;
}
.af-page .af-hero:before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 340px;
  height: 340px;
  right: -120px;
  top: -150px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--af-primary) 20%, transparent),
    transparent 70%
  );
}
.af-page .af-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--af-primary),
    var(--aurora-secondary, #e11d48)
  );
}
.af-page .af-eyebrow {
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 800;
  color: var(--af-heading);
  margin-bottom: 16px;
  padding-left: 18px;
  position: relative;
}
.af-page .af-eyebrow:before {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  top: 6px;
  left: 0;
  background: var(--af-primary);
  border-radius: 50%;
  box-shadow: 0 0 0 4px var(--af-soft);
}
.af-page .af-hero h2 {
  font-size: clamp(28px, 4vw, 43px);
  font-weight: 850;
  margin-bottom: 14px;
}
.af-page .af-lead {
  font-size: 16px;
  max-width: 730px;
  line-height: 1.9;
}
.af-page .af-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 22px;
}
.af-page .af-tags > div {
  font-size: 11px;
  font-weight: 750;
  color: var(--af-heading);
  border: 1px solid var(--af-border);
  background: var(--af-bg);
  border-radius: 999px;
  padding: 5px 12px;
}
.af-page .af-section {
  border: 1px solid var(--af-border);
  background: var(--af-surface);
  border-radius: 18px;
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 18px;
  min-width: 0;
}
.af-page .af-section-head {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 17px;
}
.af-page .af-step {
  display: grid;
  place-items: center;
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  font-size: 13px;
  font-weight: 850;
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  background: var(--af-soft);
  border: 1px solid color-mix(in srgb, var(--af-primary) 25%, transparent);
  border-radius: 12px;
  color: var(--af-heading);
}
.af-page .af-section h3 {
  font-size: clamp(18px, 2.5vw, 24px);
  font-weight: 800;
}
.af-page .af-section p + p {
  margin-top: 14px;
}
.af-page .af-kicker {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--af-muted);
  font-weight: 850;
  margin-bottom: 11px;
}
.af-page .af-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 17px;
  align-items: stretch;
  margin-bottom: 18px;
}
.af-page .af-grid .af-section {
  margin: 0;
}
.af-page .af-charge {
  position: relative;
  overflow: hidden;
}
.af-page .af-pending {
  padding: 13px 15px;
  border: 1px solid color-mix(in srgb, var(--af-primary) 36%, var(--af-border));
  border-left: 3px solid var(--af-primary);
  border-radius: 9px;
  background: var(--af-soft);
  font-size: 13px;
}
.af-page .af-conditional {
  font-size: 13px;
  color: var(--af-muted);
  margin-top: 20px !important;
}
.af-page .af-quote {
  padding: 17px 18px;
  border-radius: 12px;
  background: var(--af-bg);
  border: 1px solid var(--af-border);
  margin-top: 10px;
  font-weight: 650;
  font-size: 14px;
  color: var(--af-heading);
  line-height: 1.8;
}
.af-page .af-followup {
  font-size: 13.5px;
  margin-top: 18px !important;
}
.af-page .af-ending {
  background: linear-gradient(135deg, var(--af-soft), var(--af-surface) 68%);
  border-color: color-mix(in srgb, var(--af-primary) 25%, var(--af-border));
}
[data-theme="dark"] .af-page {
  --af-soft: color-mix(in srgb, var(--af-primary) 15%, var(--af-surface));
}
@media (max-width: 720px) {
  .af-page .af-grid {
    grid-template-columns: 1fr;
  }
  .af-page .af-hero {
    border-radius: 16px;
  }
  .af-page .af-section {
    border-radius: 15px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .af-page * {
    transition: none !important;
  }
}

/* ==================================
   Publication Frequency
================================== */
/* Publication Frequency — isolated Aurora/OJS styling; HTML contains no styles */
.pf-page {
  --pf-surface: var(--bg-surface, var(--aurora-bg-surface, #fff));
  --pf-bg: var(--bg-main, var(--aurora-bg-main, #fafaf9));
  --pf-ink: var(--text-dark, var(--aurora-text-dark, #1c1917));
  --pf-body: var(--text-body, var(--aurora-text-body, #44403c));
  --pf-muted: var(--text-muted, var(--aurora-text-muted, #78716c));
  --pf-line: var(--border-light, var(--aurora-border, rgba(0, 0, 0, 0.08)));
  --pf-primary: var(--primary, var(--aurora-primary, #f59e0b));
  --pf-secondary: var(--secondary, var(--aurora-secondary, #e11d48));
  --pf-tint: color-mix(in srgb, var(--pf-primary) 9%, var(--pf-surface));
  width: 100%;
  max-width: 100%;
  font-family: var(--font-body, var(--aurora-font-body, system-ui, sans-serif));
  font-size: 15px;
  line-height: 1.8;
  color: var(--pf-body);
}
.pf-page,
.pf-page * {
  box-sizing: border-box;
}
.pf-page p {
  margin: 0;
}
.pf-page p + p {
  margin-top: 15px;
}
.pf-page h2,
.pf-page h3 {
  margin: 0;
  color: var(--pf-ink);
  font-family: var(
    --font-heading,
    var(--aurora-font-heading, system-ui, sans-serif)
  );
  letter-spacing: -0.028em;
  line-height: 1.25;
}
.pf-page strong {
  font-weight: 800;
}
.pf-page .pf-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--pf-surface);
  border: 1px solid var(--pf-line);
  border-radius: 22px;
  padding: clamp(28px, 5vw, 54px);
  margin-bottom: 18px;
}
.pf-page .pf-hero:before {
  content: "";
  z-index: -1;
  position: absolute;
  width: 390px;
  height: 390px;
  right: -140px;
  top: -190px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--pf-primary) 24%, transparent),
    transparent 68%
  );
}
.pf-page .pf-hero:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 144px;
  height: 4px;
  background: linear-gradient(90deg, var(--pf-primary), var(--pf-secondary));
  border-radius: 0 5px 5px 0;
}
.pf-page .pf-eyebrow {
  position: relative;
  padding-left: 18px;
  margin-bottom: 15px;
  font-size: 11px;
  letter-spacing: 0.15em;
  font-weight: 800;
  color: var(--pf-ink);
}
.pf-page .pf-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 8px;
  height: 8px;
  background: var(--pf-primary);
  border-radius: 50%;
  box-shadow: 0 0 0 4px var(--pf-tint);
}
.pf-page .pf-hero h2 {
  font-size: clamp(29px, 4vw, 44px);
  font-weight: 850;
  margin-bottom: 14px;
}
.pf-page .pf-lead {
  font-size: 16px;
  max-width: 740px;
  line-height: 1.9;
}
.pf-page .pf-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 23px;
}
.pf-page .pf-tags > div {
  font-size: 11px;
  font-weight: 750;
  color: var(--pf-ink);
  border: 1px solid var(--pf-line);
  background: var(--pf-bg);
  border-radius: 100px;
  padding: 5px 13px;
}
.pf-page .pf-section {
  background: var(--pf-surface);
  border: 1px solid var(--pf-line);
  border-radius: 18px;
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 18px;
  min-width: 0;
  transition:
    border-color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.pf-page .pf-section:hover {
  border-color: color-mix(in srgb, var(--pf-primary) 38%, var(--pf-line));
  box-shadow: 0 8px 22px -18px var(--pf-ink);
}
.pf-page .pf-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.pf-page .pf-heading h3 {
  font-size: clamp(19px, 2.5vw, 24px);
  font-weight: 800;
}
.pf-page .pf-number {
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border: 1px solid color-mix(in srgb, var(--pf-primary) 27%, var(--pf-line));
  background: var(--pf-tint);
  border-radius: 12px;
  font-size: 13px;
  font-weight: 850;
  color: var(--pf-ink);
  font-family: var(--font-heading, system-ui, sans-serif);
}
.pf-page .pf-kicker,
.pf-page .pf-info-label {
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  font-weight: 850;
  color: var(--pf-muted);
}
.pf-page .pf-kicker {
  margin-bottom: 12px;
}
.pf-page .pf-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 18px;
}
.pf-page .pf-grid .pf-section {
  margin: 0;
}
.pf-page .pf-info {
  margin-top: 18px;
  padding: 17px 18px;
  border: 1px solid color-mix(in srgb, var(--pf-primary) 24%, var(--pf-line));
  border-left: 3px solid var(--pf-primary);
  background: var(--pf-tint);
  border-radius: 11px;
  font-size: 14px;
  overflow-wrap: anywhere;
}
.pf-page .pf-info-label {
  margin-bottom: 7px;
  color: var(--pf-ink);
}
.pf-page .pf-info p + p {
  margin-top: 5px;
}
.pf-page .pf-feature .pf-info + p {
  margin-top: 18px;
}
.pf-page .pf-special {
  position: relative;
  overflow: hidden;
}
.pf-page .pf-special:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 5px;
  height: 95px;
  background: linear-gradient(var(--pf-primary), var(--pf-secondary));
  border-radius: 0 18px 0 10px;
}
.pf-page .pf-ending {
  background: linear-gradient(135deg, var(--pf-tint), var(--pf-surface) 72%);
  border-color: color-mix(in srgb, var(--pf-primary) 25%, var(--pf-line));
}
[data-theme="dark"] .pf-page {
  --pf-tint: color-mix(in srgb, var(--pf-primary) 14%, var(--pf-surface));
}
@media (max-width: 720px) {
  .pf-page .pf-grid {
    grid-template-columns: 1fr;
  }
  .pf-page .pf-hero {
    border-radius: 16px;
  }
  .pf-page .pf-section {
    border-radius: 15px;
  }
  .pf-page .pf-tags {
    gap: 7px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pf-page .pf-section {
    transition: none;
  }
}

/* ==================================
   Publication Ethics 
================================== */
/* Publication Ethics — Aurora OJS. Paste into Additional CSS (without <style> tags). */
.pe-page {
  --pe-bg: var(--aurora-bg-main, #fafaf9);
  --pe-surface: var(--aurora-bg-surface, #fff);
  --pe-heading: var(--aurora-text-dark, #1c1917);
  --pe-body: var(--aurora-text-body, #44403c);
  --pe-muted: var(--aurora-text-muted, #78716c);
  --pe-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --pe-accent: var(--aurora-primary, #f59e0b);
  --pe-soft: color-mix(in srgb, var(--pe-accent) 10%, var(--pe-surface));
  color: var(--pe-body);
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.78;
  width: 100%;
  max-width: 100%;
}
.pe-page * {
  box-sizing: border-box;
}
.pe-page p,
.pe-page ul {
  margin: 0;
}
.pe-page h2,
.pe-page h3 {
  margin: 0;
  color: var(--pe-heading);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  line-height: 1.35;
  letter-spacing: -0.025em;
}
.pe-page .pe-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid var(--pe-border);
  border-radius: 22px;
  background: var(--pe-surface);
  margin-bottom: 20px;
}
.pe-page .pe-hero:before {
  content: "";
  z-index: -1;
  position: absolute;
  right: -135px;
  top: -145px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--pe-accent) 23%, transparent),
    transparent 70%
  );
}
.pe-page .pe-hero:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--pe-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.pe-page .pe-eyebrow {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--pe-heading);
  position: relative;
  padding-left: 18px;
  margin-bottom: 17px;
}
.pe-page .pe-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--pe-accent);
  box-shadow: 0 0 0 4px var(--pe-soft);
}
.pe-page .pe-hero h2 {
  font-size: clamp(28px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.pe-page .pe-lead {
  font-size: 16px;
  line-height: 1.85;
  max-width: 740px;
}
.pe-page .pe-tags {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 23px;
}
.pe-page .pe-tags > div {
  background: var(--pe-bg);
  border: 1px solid var(--pe-border);
  border-radius: 999px;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 750;
  color: var(--pe-heading);
}
.pe-page .pe-section {
  border: 1px solid var(--pe-border);
  border-radius: 18px;
  background: var(--pe-surface);
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 18px;
  min-width: 0;
}
.pe-page .pe-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.pe-page .pe-number {
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  border: 1px solid color-mix(in srgb, var(--pe-accent) 25%, transparent);
  border-radius: 12px;
  background: var(--pe-soft);
  display: grid;
  place-items: center;
  color: var(--pe-heading);
  font-size: 13px;
  font-weight: 850;
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
}
.pe-page .pe-section h3 {
  font-size: clamp(19px, 2.3vw, 24px);
  font-weight: 800;
}
.pe-page .pe-section > p + p {
  margin-top: 14px;
}
.pe-page .pe-list-label {
  font-weight: 750;
  color: var(--pe-heading);
  margin: 18px 0 12px !important;
}
.pe-page .pe-check-grid {
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.pe-page .pe-check-grid li {
  position: relative;
  list-style: none;
  border: 1px solid var(--pe-border);
  border-radius: 12px;
  background: var(--pe-bg);
  padding: 15px 15px 15px 47px;
  font-size: 13px;
  line-height: 1.7;
}
.pe-page .pe-check-grid li:before {
  content: "✓";
  position: absolute;
  top: 15px;
  left: 15px;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--pe-soft);
  color: var(--pe-heading);
  font-weight: 800;
}
.pe-page .pe-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.pe-page .pe-grid .pe-section {
  height: calc(100% - 18px);
}
.pe-page .pe-grid .pe-heading {
  align-items: flex-start;
}
.pe-page .pe-grid .pe-heading h3 {
  font-size: 20px;
  padding-top: 7px;
}
.pe-page .pe-callout {
  margin-top: 19px;
  padding: 14px 18px;
  background: var(--pe-bg);
  border-left: 3px solid var(--pe-accent);
  border-radius: 0 10px 10px 0;
}
.pe-page .pe-process {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
  margin-top: 20px;
}
.pe-page .pe-process > div {
  border: 1px solid var(--pe-border);
  background: var(--pe-bg);
  border-radius: 13px;
  padding: 19px;
}
.pe-page .pe-process strong {
  display: block;
  font-size: 13px;
  color: var(--pe-heading);
  margin-bottom: 9px;
  letter-spacing: 0.015em;
}
.pe-page .pe-process p {
  font-size: 13px;
}
.pe-page .pe-outcomes {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 18px;
}
.pe-page .pe-outcomes > div {
  font-size: 12px;
  font-weight: 750;
  color: var(--pe-heading);
  border: 1px solid var(--pe-border);
  background: var(--pe-bg);
  padding: 9px 15px;
  border-radius: 10px;
}
.pe-page .pe-outcomes > div:before {
  content: "◆";
  color: var(--pe-accent);
  font-size: 9px;
  margin-right: 9px;
}
.pe-page .pe-commitment {
  background: linear-gradient(135deg, var(--pe-soft), var(--pe-surface) 70%);
  border-color: color-mix(in srgb, var(--pe-accent) 28%, var(--pe-border));
}
[data-theme="dark"] .pe-page {
  --pe-soft: color-mix(in srgb, var(--pe-accent) 15%, var(--pe-surface));
}
@media (max-width: 680px) {
  .pe-page .pe-grid,
  .pe-page .pe-check-grid,
  .pe-page .pe-process {
    grid-template-columns: 1fr;
  }
  .pe-page .pe-section {
    border-radius: 15px;
  }
  .pe-page .pe-hero {
    border-radius: 16px;
  }
  .pe-page .pe-grid {
    gap: 0;
  }
  .pe-page .pe-grid .pe-section {
    height: auto;
  }
  .pe-page .pe-grid .pe-heading h3 {
    font-size: 19px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pe-page * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}

/* ==================================
   Copyright Notice 
================================== */
/* Copyright Notice — Aurora theme / OJS. Paste into Additional CSS without <style> tags. */
.cn-page {
  --cn-bg: var(--aurora-bg-main, #fafaf9);
  --cn-surface: var(--aurora-bg-surface, #fff);
  --cn-heading: var(--aurora-text-dark, #1c1917);
  --cn-body: var(--aurora-text-body, #44403c);
  --cn-muted: var(--aurora-text-muted, #78716c);
  --cn-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --cn-accent: var(--aurora-primary, #f59e0b);
  --cn-soft: color-mix(in srgb, var(--cn-accent) 10%, var(--cn-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  color: var(--cn-body);
  font-size: 15px;
  line-height: 1.78;
  width: 100%;
  max-width: 100%;
}
.cn-page * {
  box-sizing: border-box;
}
.cn-page p {
  margin: 0;
}
.cn-page h2,
.cn-page h3 {
  margin: 0;
  color: var(--cn-heading);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  letter-spacing: -0.025em;
  line-height: 1.32;
}
.cn-page .cn-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  background: var(--cn-surface);
  border: 1px solid var(--cn-border);
  border-radius: 22px;
  margin-bottom: 20px;
}
.cn-page .cn-hero:before {
  content: "";
  position: absolute;
  z-index: -1;
  right: -130px;
  top: -145px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--cn-accent) 22%, transparent),
    transparent 70%
  );
}
.cn-page .cn-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--cn-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.cn-page .cn-eyebrow {
  position: relative;
  padding-left: 18px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.15em;
  color: var(--cn-heading);
  text-transform: uppercase;
  margin-bottom: 17px;
}
.cn-page .cn-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--cn-accent);
  box-shadow: 0 0 0 4px var(--cn-soft);
}
.cn-page .cn-hero h2 {
  font-size: clamp(28px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.cn-page .cn-lead {
  font-size: 16px;
  line-height: 1.85;
  max-width: 730px;
}
.cn-page .cn-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 23px;
}
.cn-page .cn-tags > div {
  border: 1px solid var(--cn-border);
  border-radius: 999px;
  background: var(--cn-bg);
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 750;
  color: var(--cn-heading);
}
.cn-page .cn-section {
  border: 1px solid var(--cn-border);
  border-radius: 18px;
  background: var(--cn-surface);
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 18px;
  min-width: 0;
}
.cn-page .cn-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.cn-page .cn-number {
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  border: 1px solid color-mix(in srgb, var(--cn-accent) 25%, transparent);
  border-radius: 12px;
  background: var(--cn-soft);
  display: grid;
  place-items: center;
  color: var(--cn-heading);
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
  font-size: 13px;
  font-weight: 850;
}
.cn-page .cn-section h3 {
  font-size: clamp(19px, 2.3vw, 24px);
  font-weight: 800;
}
.cn-page .cn-section > p + p {
  margin-top: 14px;
}
.cn-page .cn-pending {
  padding: 15px 18px;
  border: 1px dashed color-mix(in srgb, var(--cn-accent) 55%, var(--cn-border));
  border-radius: 12px;
  background: var(--cn-soft);
  margin-bottom: 22px;
}
.cn-page .cn-pending strong,
.cn-page .cn-license strong {
  display: block;
  color: var(--cn-heading);
  font-size: 13px;
  margin-bottom: 4px;
}
.cn-page .cn-pending p {
  font-size: 13px;
  overflow-wrap: anywhere;
}
.cn-page .cn-subheading {
  font-size: 13px;
  font-weight: 750;
  color: var(--cn-heading);
  margin-bottom: 12px !important;
}
.cn-page .cn-feature {
  padding: 21px 23px;
  border-left: 3px solid var(--cn-accent);
  border-radius: 0 12px 12px 0;
  background: var(--cn-bg);
  margin-bottom: 18px;
  font-weight: 600;
  color: var(--cn-heading);
}
.cn-page .cn-duo {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}
.cn-page .cn-tile {
  border: 1px solid var(--cn-border);
  border-radius: 13px;
  background: var(--cn-bg);
  padding: 20px;
  transition:
    transform 0.2s,
    border-color 0.2s;
}
.cn-page .cn-tile:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--cn-accent) 55%, var(--cn-border));
}
.cn-page .cn-tile-label {
  font-size: 13px;
  font-weight: 800;
  color: var(--cn-heading);
  margin-bottom: 10px;
  padding-left: 15px;
  position: relative;
}
.cn-page .cn-tile-label:before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--cn-accent);
  position: absolute;
  left: 0;
  top: 9px;
}
.cn-page .cn-tile p {
  font-size: 13px;
  line-height: 1.75;
}
.cn-page .cn-license {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background: var(--cn-bg);
  border: 1px solid var(--cn-border);
  border-radius: 14px;
  padding: 20px;
  margin-bottom: 18px;
}
.cn-page .cn-license-mark {
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  border: 2px solid var(--cn-accent);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--cn-soft);
  color: var(--cn-heading);
  font-size: 17px;
  font-weight: 850;
}
.cn-page .cn-license-body {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 13px;
}
.cn-page .cn-license-body b {
  color: var(--cn-heading);
}
.cn-page .cn-report {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
  margin-top: 19px;
}
.cn-page .cn-report-item {
  padding: 19px;
  background: var(--cn-bg);
  border: 1px solid var(--cn-border);
  border-radius: 13px;
}
.cn-page .cn-report-item strong {
  display: block;
  font-size: 13px;
  font-weight: 800;
  color: var(--cn-heading);
  margin-bottom: 8px;
}
.cn-page .cn-report-item p {
  font-size: 13px;
}
.cn-page .cn-commitment {
  background: linear-gradient(135deg, var(--cn-soft), var(--cn-surface) 70%);
  border-color: color-mix(in srgb, var(--cn-accent) 28%, var(--cn-border));
}
[data-theme="dark"] .cn-page {
  --cn-soft: color-mix(in srgb, var(--cn-accent) 15%, var(--cn-surface));
}
@media (max-width: 680px) {
  .cn-page .cn-duo,
  .cn-page .cn-report {
    grid-template-columns: 1fr;
  }
  .cn-page .cn-hero {
    border-radius: 16px;
  }
  .cn-page .cn-section {
    border-radius: 15px;
  }
  .cn-page .cn-license {
    flex-direction: column;
  }
  .cn-page .cn-feature {
    padding: 17px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .cn-page * {
    transition: none !important;
  }
}

/* ==================================
   Plagiarism Policy
================================== */
/* Plagiarism Policy · Aurora OJS. Paste into Additional CSS, without style tags. */
.pp-page {
  --pp-bg: var(--aurora-bg-main, #fafaf9);
  --pp-surface: var(--aurora-bg-surface, #fff);
  --pp-heading: var(--aurora-text-dark, #1c1917);
  --pp-body: var(--aurora-text-body, #44403c);
  --pp-muted: var(--aurora-text-muted, #78716c);
  --pp-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --pp-accent: var(--aurora-primary, #f59e0b);
  --pp-soft: color-mix(in srgb, var(--pp-accent) 10%, var(--pp-surface));
  width: 100%;
  max-width: 100%;
  color: var(--pp-body);
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.78;
}
.pp-page * {
  box-sizing: border-box;
}
.pp-page p,
.pp-page ul {
  margin: 0;
}
.pp-page h2,
.pp-page h3 {
  margin: 0;
  color: var(--pp-heading);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  line-height: 1.35;
  letter-spacing: -0.025em;
}
.pp-page .pp-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid var(--pp-border);
  border-radius: 22px;
  background: var(--pp-surface);
  margin-bottom: 20px;
}
.pp-page .pp-hero:before {
  content: "";
  z-index: -1;
  position: absolute;
  right: -135px;
  top: -145px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--pp-accent) 23%, transparent),
    transparent 70%
  );
}
.pp-page .pp-hero:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--pp-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.pp-page .pp-eyebrow {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--pp-heading);
  position: relative;
  padding-left: 18px;
  margin-bottom: 17px;
}
.pp-page .pp-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--pp-accent);
  box-shadow: 0 0 0 4px var(--pp-soft);
}
.pp-page .pp-hero h2 {
  font-size: clamp(28px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.pp-page .pp-lead {
  font-size: 16px;
  line-height: 1.85;
  max-width: 740px;
}
.pp-page .pp-tags {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 23px;
}
.pp-page .pp-tags > div {
  background: var(--pp-bg);
  border: 1px solid var(--pp-border);
  border-radius: 999px;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 750;
  color: var(--pp-heading);
}
.pp-page .pp-section {
  border: 1px solid var(--pp-border);
  border-radius: 18px;
  background: var(--pp-surface);
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 18px;
  min-width: 0;
}
.pp-page .pp-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.pp-page .pp-number {
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  border: 1px solid color-mix(in srgb, var(--pp-accent) 25%, transparent);
  border-radius: 12px;
  background: var(--pp-soft);
  display: grid;
  place-items: center;
  color: var(--pp-heading);
  font-size: 13px;
  font-weight: 850;
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
}
.pp-page .pp-section h3 {
  font-size: clamp(19px, 2.3vw, 24px);
  font-weight: 800;
}
.pp-page .pp-section > p + p {
  margin-top: 14px;
}
.pp-page .pp-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.pp-page .pp-grid .pp-section {
  height: calc(100% - 18px);
}
.pp-page .pp-grid .pp-heading {
  align-items: flex-start;
}
.pp-page .pp-grid .pp-heading h3 {
  font-size: 20px;
  padding-top: 7px;
}
.pp-page .pp-threshold {
  border: 1px solid color-mix(in srgb, var(--pp-accent) 30%, var(--pp-border));
  border-radius: 14px;
  background: var(--pp-soft);
  padding: 18px 21px;
  margin-top: 19px;
}
.pp-page .pp-threshold-label {
  font-size: 11px;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  font-weight: 850;
  color: var(--pp-heading);
  margin-bottom: 7px;
}
.pp-page .pp-threshold p {
  color: var(--pp-body);
}
.pp-page .pp-threshold strong {
  color: var(--pp-heading);
}
.pp-page .pp-callout {
  margin-top: 18px;
  padding: 14px 18px;
  background: var(--pp-bg);
  border-left: 3px solid var(--pp-accent);
  border-radius: 0 10px 10px 0;
}
.pp-page .pp-process {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}
.pp-page .pp-process > div {
  border: 1px solid var(--pp-border);
  background: var(--pp-bg);
  border-radius: 13px;
  padding: 19px;
}
.pp-page .pp-process strong {
  display: block;
  font-size: 13px;
  color: var(--pp-heading);
  margin-bottom: 9px;
  letter-spacing: 0.015em;
}
.pp-page .pp-process p {
  font-size: 13px;
}
.pp-page .pp-list-label {
  margin-bottom: 15px !important;
}
.pp-page .pp-check-grid {
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.pp-page .pp-check-grid li {
  position: relative;
  list-style: none;
  border: 1px solid var(--pp-border);
  border-radius: 12px;
  background: var(--pp-bg);
  padding: 15px 15px 15px 47px;
  font-size: 13px;
  line-height: 1.7;
}
.pp-page .pp-check-grid li:before {
  content: "✓";
  position: absolute;
  top: 15px;
  left: 15px;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--pp-soft);
  color: var(--pp-heading);
  font-weight: 800;
}
.pp-page .pp-commitment {
  background: linear-gradient(135deg, var(--pp-soft), var(--pp-surface) 70%);
  border-color: color-mix(in srgb, var(--pp-accent) 28%, var(--pp-border));
}
[data-theme="dark"] .pp-page {
  --pp-soft: color-mix(in srgb, var(--pp-accent) 15%, var(--pp-surface));
}
@media (max-width: 680px) {
  .pp-page .pp-grid,
  .pp-page .pp-check-grid,
  .pp-page .pp-process {
    grid-template-columns: 1fr;
  }
  .pp-page .pp-section {
    border-radius: 15px;
  }
  .pp-page .pp-hero {
    border-radius: 16px;
  }
  .pp-page .pp-grid {
    gap: 0;
  }
  .pp-page .pp-grid .pp-section {
    height: auto;
  }
  .pp-page .pp-grid .pp-heading h3 {
    font-size: 19px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .pp-page * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}

/* ==================================
   Reference Management
================================== */
/* References Management — Aurora OJS. Paste into Additional CSS (without style tags). */
.rm-page {
  --rm-bg: var(--aurora-bg-main, #fafaf9);
  --rm-surface: var(--aurora-bg-surface, #fff);
  --rm-heading: var(--aurora-text-dark, #1c1917);
  --rm-body: var(--aurora-text-body, #44403c);
  --rm-muted: var(--aurora-text-muted, #78716c);
  --rm-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --rm-accent: var(--aurora-primary, #f59e0b);
  --rm-soft: color-mix(in srgb, var(--rm-accent) 10%, var(--rm-surface));
  width: 100%;
  max-width: 100%;
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  color: var(--rm-body);
  font-size: 15px;
  line-height: 1.78;
}
.rm-page * {
  box-sizing: border-box;
}
.rm-page p,
.rm-page ul {
  margin: 0;
}
.rm-page h2,
.rm-page h3 {
  margin: 0;
  color: var(--rm-heading);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  line-height: 1.34;
  letter-spacing: -0.025em;
}
.rm-page .rm-hero {
  isolation: isolate;
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid var(--rm-border);
  border-radius: 22px;
  background: var(--rm-surface);
  margin-bottom: 20px;
}
.rm-page .rm-hero:before {
  content: "";
  z-index: -1;
  position: absolute;
  right: -135px;
  top: -145px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--rm-accent) 23%, transparent),
    transparent 70%
  );
}
.rm-page .rm-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--rm-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.rm-page .rm-eyebrow {
  position: relative;
  padding-left: 18px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--rm-heading);
  margin-bottom: 17px;
}
.rm-page .rm-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 8px;
  height: 8px;
  background: var(--rm-accent);
  border-radius: 50%;
  box-shadow: 0 0 0 4px var(--rm-soft);
}
.rm-page .rm-hero h2 {
  font-size: clamp(28px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.rm-page .rm-lead {
  font-size: 16px;
  line-height: 1.85;
  max-width: 740px;
}
.rm-page .rm-tags {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 23px;
}
.rm-page .rm-tags > div {
  background: var(--rm-bg);
  border: 1px solid var(--rm-border);
  border-radius: 999px;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 750;
  color: var(--rm-heading);
}
.rm-page .rm-section {
  border: 1px solid var(--rm-border);
  border-radius: 18px;
  background: var(--rm-surface);
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 18px;
  min-width: 0;
}
.rm-page .rm-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.rm-page .rm-number {
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  border: 1px solid color-mix(in srgb, var(--rm-accent) 25%, transparent);
  border-radius: 12px;
  background: var(--rm-soft);
  display: grid;
  place-items: center;
  color: var(--rm-heading);
  font-size: 13px;
  font-weight: 850;
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
}
.rm-page .rm-section h3 {
  font-size: clamp(19px, 2.3vw, 24px);
  font-weight: 800;
}
.rm-page .rm-section > p + p,
.rm-page .rm-compact > p + p {
  margin-top: 14px;
}
.rm-page .rm-emphasis {
  border: 1px solid color-mix(in srgb, var(--rm-accent) 30%, var(--rm-border));
  border-radius: 14px;
  background: var(--rm-soft);
  padding: 18px 21px;
  margin-bottom: 18px;
}
.rm-page .rm-small-label {
  font-size: 11px;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  font-weight: 850;
  color: var(--rm-heading);
  margin-bottom: 7px;
}
.rm-page .rm-emphasis strong {
  color: var(--rm-heading);
}
.rm-page .rm-checks {
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}
.rm-page .rm-checks li {
  position: relative;
  list-style: none;
  border: 1px solid var(--rm-border);
  border-radius: 12px;
  background: var(--rm-bg);
  padding: 15px 15px 15px 47px;
  font-size: 13px;
  line-height: 1.7;
}
.rm-page .rm-checks li:before {
  content: "✓";
  position: absolute;
  top: 15px;
  left: 15px;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--rm-soft);
  color: var(--rm-heading);
  font-weight: 800;
}
.rm-page .rm-note {
  margin-top: 18px;
  padding: 14px 18px;
  background: var(--rm-bg);
  border-left: 3px solid var(--rm-accent);
  border-radius: 0 10px 10px 0;
}
.rm-page .rm-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.rm-page .rm-grid .rm-section {
  height: calc(100% - 18px);
}
.rm-page .rm-compact .rm-heading {
  align-items: flex-start;
}
.rm-page .rm-compact .rm-heading h3 {
  font-size: 20px;
  padding-top: 7px;
}
.rm-page .rm-tools {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 20px;
}
.rm-page .rm-tools > div {
  background: var(--rm-bg);
  border: 1px solid var(--rm-border);
  border-radius: 11px;
  padding: 10px 17px;
  font-size: 13px;
  font-weight: 800;
  color: var(--rm-heading);
  transition:
    transform 0.2s,
    border-color 0.2s;
}
.rm-page .rm-tools > div:hover {
  transform: translateY(-2px);
  border-color: var(--rm-accent);
}
.rm-page .rm-ending {
  background: linear-gradient(135deg, var(--rm-soft), var(--rm-surface) 70%);
  border-color: color-mix(in srgb, var(--rm-accent) 28%, var(--rm-border));
}
[data-theme="dark"] .rm-page {
  --rm-soft: color-mix(in srgb, var(--rm-accent) 15%, var(--rm-surface));
}
@media (max-width: 680px) {
  .rm-page .rm-grid,
  .rm-page .rm-checks {
    grid-template-columns: 1fr;
  }
  .rm-page .rm-hero {
    border-radius: 16px;
  }
  .rm-page .rm-section {
    border-radius: 15px;
  }
  .rm-page .rm-grid {
    gap: 0;
  }
  .rm-page .rm-grid .rm-section {
    height: auto;
  }
  .rm-page .rm-compact .rm-heading h3 {
    font-size: 19px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .rm-page * {
    transition: none !important;
  }
}

/* ==================================
   Open Access Policy
================================== */
/* Open Access Policy — Aurora / OJS. Paste in Additional CSS, without <style> tags. */
.oa-page {
  --oa-bg: var(--aurora-bg-main, #fafaf9);
  --oa-surface: var(--aurora-bg-surface, #fff);
  --oa-heading: var(--aurora-text-dark, #1c1917);
  --oa-body: var(--aurora-text-body, #44403c);
  --oa-muted: var(--aurora-text-muted, #78716c);
  --oa-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --oa-accent: var(--aurora-primary, #f59e0b);
  --oa-soft: color-mix(in srgb, var(--oa-accent) 10%, var(--oa-surface));
  width: 100%;
  max-width: 100%;
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  color: var(--oa-body);
  font-size: 15px;
  line-height: 1.78;
}
.oa-page * {
  box-sizing: border-box;
}
.oa-page p {
  margin: 0;
}
.oa-page h2,
.oa-page h3 {
  margin: 0;
  color: var(--oa-heading);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  line-height: 1.33;
  letter-spacing: -0.025em;
}
.oa-page .oa-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid var(--oa-border);
  border-radius: 22px;
  background: var(--oa-surface);
  margin-bottom: 20px;
}
.oa-page .oa-hero:before {
  content: "";
  z-index: -1;
  position: absolute;
  right: -135px;
  top: -145px;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--oa-accent) 23%, transparent),
    transparent 70%
  );
}
.oa-page .oa-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--oa-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.oa-page .oa-eyebrow {
  position: relative;
  padding-left: 18px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--oa-heading);
  margin-bottom: 17px;
}
.oa-page .oa-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 8px;
  height: 8px;
  background: var(--oa-accent);
  border-radius: 50%;
  box-shadow: 0 0 0 4px var(--oa-soft);
}
.oa-page .oa-hero h2 {
  font-size: clamp(28px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.oa-page .oa-lead {
  font-size: 16px;
  line-height: 1.85;
  max-width: 740px;
}
.oa-page .oa-tags {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 23px;
}
.oa-page .oa-tags > div {
  background: var(--oa-bg);
  border: 1px solid var(--oa-border);
  border-radius: 999px;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 750;
  color: var(--oa-heading);
}
.oa-page .oa-section {
  min-width: 0;
  border: 1px solid var(--oa-border);
  border-radius: 18px;
  background: var(--oa-surface);
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 18px;
}
.oa-page .oa-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.oa-page .oa-number {
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  border: 1px solid color-mix(in srgb, var(--oa-accent) 25%, transparent);
  border-radius: 12px;
  background: var(--oa-soft);
  display: grid;
  place-items: center;
  color: var(--oa-heading);
  font-size: 13px;
  font-weight: 850;
  font-family: var(--aurora-font-heading, system-ui, sans-serif);
}
.oa-page .oa-section h3 {
  font-size: clamp(19px, 2.3vw, 24px);
  font-weight: 800;
}
.oa-page .oa-section > p + p,
.oa-page .oa-compact > p + p {
  margin-top: 14px;
}
.oa-page .oa-callout {
  padding: 19px 21px;
  border: 1px solid color-mix(in srgb, var(--oa-accent) 28%, var(--oa-border));
  background: var(--oa-soft);
  border-radius: 14px;
}
.oa-page .oa-label {
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--oa-heading);
  margin-bottom: 11px;
}
.oa-page .oa-quote {
  margin-top: 16px;
  padding: 18px 19px;
  background: var(--oa-surface);
  border-left: 3px solid var(--oa-accent);
  border-radius: 0 11px 11px 0;
  font-weight: 550;
  line-height: 1.8;
}
.oa-page .oa-feature {
  margin-top: 18px;
  background: var(--oa-bg);
  border-left: 3px solid var(--oa-accent);
  border-radius: 0 10px 10px 0;
  padding: 16px 19px;
}
.oa-page .oa-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}
.oa-page .oa-mini {
  border: 1px solid var(--oa-border);
  border-radius: 12px;
  background: var(--oa-bg);
  padding: 13px 15px 13px 42px;
  position: relative;
  font-size: 12.5px;
  font-weight: 800;
  color: var(--oa-heading);
}
.oa-page .oa-mini:before {
  content: "✓";
  position: absolute;
  left: 14px;
  top: 13px;
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--oa-soft);
  color: var(--oa-heading);
}
.oa-page .oa-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.oa-page .oa-grid .oa-section {
  height: calc(100% - 18px);
}
.oa-page .oa-compact .oa-heading {
  align-items: flex-start;
}
.oa-page .oa-compact .oa-heading h3 {
  font-size: 20px;
  padding-top: 7px;
}
.oa-page .oa-note {
  margin-top: 18px;
  padding: 15px 18px;
  background: var(--oa-bg);
  border-left: 3px solid var(--oa-accent);
  border-radius: 0 10px 10px 0;
}
.oa-page .oa-ending {
  background: linear-gradient(135deg, var(--oa-soft), var(--oa-surface) 70%);
  border-color: color-mix(in srgb, var(--oa-accent) 28%, var(--oa-border));
}
[data-theme="dark"] .oa-page {
  --oa-soft: color-mix(in srgb, var(--oa-accent) 15%, var(--oa-surface));
}
@media (max-width: 680px) {
  .oa-page .oa-grid,
  .oa-page .oa-mini-grid {
    grid-template-columns: 1fr;
  }
  .oa-page .oa-hero {
    border-radius: 16px;
  }
  .oa-page .oa-section {
    border-radius: 15px;
  }
  .oa-page .oa-grid {
    gap: 0;
  }
  .oa-page .oa-grid .oa-section {
    height: auto;
  }
  .oa-page .oa-compact .oa-heading h3 {
    font-size: 19px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .oa-page * {
    transition: none !important;
  }
}

/* ==================================
   Revenue Sources
================================== */
/* Revenue Sources — scoped Aurora theme styles */
.rs-page {
  --rs-bg: var(--aurora-bg-main, #fafaf9);
  --rs-surface: var(--aurora-bg-surface, #fff);
  --rs-heading: var(--aurora-text-dark, #1c1917);
  --rs-body: var(--aurora-text-body, #44403c);
  --rs-muted: var(--aurora-text-muted, #78716c);
  --rs-border: var(--aurora-border, rgba(0, 0, 0, 0.08));
  --rs-accent: var(--aurora-primary, #f59e0b);
  --rs-soft: color-mix(in srgb, var(--rs-accent) 10%, var(--rs-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.78;
  color: var(--rs-body);
  width: 100%;
  max-width: 100%;
}
.rs-page * {
  box-sizing: border-box;
}
.rs-page p,
.rs-page ul {
  margin: 0;
}
.rs-page h2,
.rs-page h3 {
  margin: 0;
  color: var(--rs-heading);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  letter-spacing: -0.025em;
  line-height: 1.35;
}
.rs-page strong {
  color: var(--rs-heading);
}
.rs-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--rs-border);
  background: var(--rs-surface);
  border-radius: 22px;
  padding: clamp(27px, 5vw, 52px);
  margin-bottom: 20px;
}
.rs-hero:before {
  content: "";
  position: absolute;
  width: 310px;
  height: 310px;
  right: -125px;
  top: -155px;
  z-index: -1;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--rs-accent) 22%, transparent),
    transparent 72%
  );
  border-radius: 50%;
}
.rs-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--rs-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.rs-eyebrow {
  position: relative;
  padding-left: 17px !important;
  color: var(--rs-heading);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  margin-bottom: 15px !important;
}
.rs-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--rs-accent);
}
.rs-hero h2 {
  font-size: clamp(28px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.rs-lead {
  max-width: 710px;
  font-size: 16px;
}
.rs-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 23px;
}
.rs-tags div {
  border: 1px solid var(--rs-border);
  background: var(--rs-bg);
  border-radius: 99px;
  font-size: 11px;
  font-weight: 750;
  padding: 6px 12px;
  color: var(--rs-heading);
}
.rs-section {
  min-width: 0;
  border: 1px solid var(--rs-border);
  border-radius: 18px;
  background: var(--rs-surface);
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 17px;
}
.rs-section > p + p {
  margin-top: 14px;
}
.rs-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.rs-number {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 43px;
  height: 43px;
  border-radius: 12px;
  background: var(--rs-soft);
  border: 1px solid color-mix(in srgb, var(--rs-accent) 28%, var(--rs-border));
  font-size: 13px;
  font-weight: 850;
  color: var(--rs-heading);
}
.rs-heading h3 {
  font-size: clamp(19px, 2.45vw, 25px);
  font-weight: 800;
}
.rs-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 17px;
}
.rs-two-col .rs-section {
  height: calc(100% - 17px);
}
.rs-source-grid {
  list-style: none;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
  margin-top: 18px !important;
}
.rs-source-grid li {
  position: relative;
  border: 1px solid var(--rs-border);
  border-radius: 12px;
  background: var(--rs-bg);
  padding: 16px 15px 16px 47px;
  font-size: 13px;
  line-height: 1.65;
  transition:
    transform 0.2s,
    border-color 0.2s;
}
.rs-source-grid li:before {
  content: "✓";
  position: absolute;
  left: 15px;
  top: 17px;
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--rs-soft);
  color: var(--rs-heading);
  font-weight: 900;
}
.rs-source-grid li:hover {
  transform: translateY(-2px);
  border-color: var(--rs-accent);
}
.rs-note,
.rs-emphasis {
  margin-top: 18px;
  border-radius: 0 11px 11px 0;
  border-left: 3px solid var(--rs-accent);
  background: var(--rs-soft);
  padding: 13px 17px;
  font-size: 13px;
}
.rs-emphasis {
  font-weight: 750;
  color: var(--rs-heading);
}
.rs-mini-grid {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 20px;
}
.rs-mini-grid div {
  font-size: 11px;
  font-weight: 750;
  padding: 6px 10px;
  border-radius: 9px;
  background: var(--rs-soft);
  border: 1px solid var(--rs-border);
  color: var(--rs-heading);
}
.rs-ending {
  background: linear-gradient(135deg, var(--rs-soft), var(--rs-surface) 66%);
  border-color: color-mix(in srgb, var(--rs-accent) 26%, var(--rs-border));
}
[data-theme="dark"] .rs-page {
  --rs-soft: color-mix(in srgb, var(--rs-accent) 15%, var(--rs-surface));
}
@media (max-width: 700px) {
  .rs-two-col,
  .rs-source-grid {
    grid-template-columns: 1fr;
  }
  .rs-hero {
    border-radius: 17px;
  }
  .rs-section {
    border-radius: 15px;
  }
  .rs-two-col {
    gap: 0;
  }
  .rs-two-col .rs-section {
    height: auto;
  }
  .rs-source-grid li {
    padding: 14px 14px 14px 47px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .rs-page * {
    transition: none !important;
  }
}

/* ==================================
   Advertising Policy 
================================== */
/* Advertising Policy — Aurora OJS scoped styles. Append to Additional CSS. */
.adp-page {
  --adp-bg: var(--aurora-bg-main, #fafaf9);
  --adp-surface: var(--aurora-bg-surface, #fff);
  --adp-heading: var(--aurora-text-dark, #1c1917);
  --adp-body: var(--aurora-text-body, #44403c);
  --adp-border: var(--aurora-border, rgba(0, 0, 0, 0.08));
  --adp-accent: var(--aurora-primary, #f59e0b);
  --adp-soft: color-mix(in srgb, var(--adp-accent) 10%, var(--adp-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.78;
  color: var(--adp-body);
  width: 100%;
  max-width: 100%;
}
.adp-page * {
  box-sizing: border-box;
}
.adp-page p {
  margin: 0;
}
.adp-page h2,
.adp-page h3 {
  margin: 0;
  color: var(--adp-heading);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  letter-spacing: -0.025em;
  line-height: 1.35;
}
.adp-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--adp-border);
  background: var(--adp-surface);
  border-radius: 22px;
  padding: clamp(27px, 5vw, 52px);
  margin-bottom: 20px;
}
.adp-hero:before {
  content: "";
  position: absolute;
  width: 310px;
  height: 310px;
  right: -125px;
  top: -155px;
  z-index: -1;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--adp-accent) 22%, transparent),
    transparent 72%
  );
  border-radius: 50%;
}
.adp-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 110px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--adp-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.adp-eyebrow {
  position: relative;
  padding-left: 17px !important;
  color: var(--adp-heading);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  margin-bottom: 15px !important;
}
.adp-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--adp-accent);
}
.adp-hero h2 {
  font-size: clamp(28px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.adp-lead {
  max-width: 710px;
  font-size: 16px;
}
.adp-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 23px;
}
.adp-tags div {
  border: 1px solid var(--adp-border);
  background: var(--adp-bg);
  border-radius: 99px;
  font-size: 11px;
  font-weight: 750;
  padding: 6px 12px;
  color: var(--adp-heading);
}
.adp-section {
  min-width: 0;
  border: 1px solid var(--adp-border);
  border-radius: 18px;
  background: var(--adp-surface);
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 17px;
}
.adp-section > p + p {
  margin-top: 14px;
}
.adp-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.adp-number {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 43px;
  height: 43px;
  border-radius: 12px;
  background: var(--adp-soft);
  border: 1px solid color-mix(in srgb, var(--adp-accent) 28%, var(--adp-border));
  font-size: 13px;
  font-weight: 850;
  color: var(--adp-heading);
}
.adp-heading h3 {
  font-size: clamp(19px, 2.45vw, 25px);
  font-weight: 800;
}
.adp-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 17px;
}
.adp-two-col .adp-section {
  height: calc(100% - 17px);
}
.adp-note {
  margin-top: 18px;
  border-radius: 0 11px 11px 0;
  border-left: 3px solid var(--adp-accent);
  background: var(--adp-soft);
  padding: 13px 17px;
  font-size: 13px;
}
.adp-highlight {
  background: linear-gradient(125deg, var(--adp-soft), var(--adp-surface) 55%);
  border-color: color-mix(in srgb, var(--adp-accent) 28%, var(--adp-border));
}
.adp-principles {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 20px 0;
}
.adp-principles div {
  position: relative;
  border: 1px solid var(--adp-border);
  background: var(--adp-surface);
  border-radius: 10px;
  padding: 8px 12px 8px 28px;
  color: var(--adp-heading);
  font-weight: 750;
  font-size: 12px;
}
.adp-principles div:before {
  content: "✓";
  position: absolute;
  left: 10px;
  font-weight: 900;
  color: var(--adp-accent);
}
.adp-ending {
  background: linear-gradient(135deg, var(--adp-soft), var(--adp-surface) 66%);
  border-color: color-mix(in srgb, var(--adp-accent) 26%, var(--adp-border));
}
[data-theme="dark"] .adp-page {
  --adp-soft: color-mix(in srgb, var(--adp-accent) 15%, var(--adp-surface));
}
@media (max-width: 700px) {
  .adp-two-col {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .adp-two-col .adp-section {
    height: auto;
  }
  .adp-hero {
    border-radius: 17px;
  }
  .adp-section {
    border-radius: 15px;
  }
  .adp-heading {
    align-items: flex-start;
  }
  .adp-number {
    width: 40px;
    height: 40px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .adp-page * {
    transition: none !important;
  }
}

/* ==================================
   AI policy 
================================== */
/* Artificial Intelligence (AI) Policy — Aurora OJS. Add to Additional CSS. */
.aip-page {
  --aip-bg: var(--aurora-bg-main, #fafaf9);
  --aip-surface: var(--aurora-bg-surface, #fff);
  --aip-heading: var(--aurora-text-dark, #1c1917);
  --aip-body: var(--aurora-text-body, #44403c);
  --aip-border: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --aip-accent: var(--aurora-primary, #f59e0b);
  --aip-soft: color-mix(in srgb, var(--aip-accent) 9%, var(--aip-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.78;
  color: var(--aip-body);
  width: 100%;
  max-width: 100%;
}
.aip-page * {
  box-sizing: border-box;
}
.aip-page p {
  margin: 0;
}
.aip-page h2,
.aip-page h3 {
  margin: 0;
  color: var(--aip-heading);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  letter-spacing: -0.025em;
  line-height: 1.35;
}
.aip-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--aip-border);
  background: var(--aip-surface);
  border-radius: 22px;
  padding: clamp(27px, 5vw, 52px);
  margin-bottom: 20px;
}
.aip-hero:before {
  content: "";
  position: absolute;
  width: 320px;
  height: 320px;
  right: -135px;
  top: -160px;
  z-index: -1;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--aip-accent) 24%, transparent),
    transparent 73%
  );
  border-radius: 50%;
}
.aip-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 128px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--aip-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.aip-eyebrow {
  position: relative;
  padding-left: 17px !important;
  color: var(--aip-heading);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  margin-bottom: 15px !important;
}
.aip-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--aip-accent);
}
.aip-hero h2 {
  font-size: clamp(27px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.aip-lead {
  max-width: 710px;
  font-size: 16px;
}
.aip-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 23px;
}
.aip-tags div {
  border: 1px solid var(--aip-border);
  background: var(--aip-bg);
  border-radius: 99px;
  font-size: 11px;
  font-weight: 750;
  padding: 6px 12px;
  color: var(--aip-heading);
}
.aip-section {
  min-width: 0;
  border: 1px solid var(--aip-border);
  border-radius: 18px;
  background: var(--aip-surface);
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 17px;
  transition:
    border-color 0.2s ease,
    transform 0.2s ease;
}
.aip-section > p + p {
  margin-top: 14px;
}
.aip-section:hover {
  border-color: color-mix(in srgb, var(--aip-accent) 35%, var(--aip-border));
}
.aip-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.aip-number {
  display: grid;
  place-items: center;
  flex-shrink: 0;
  width: 43px;
  height: 43px;
  border-radius: 12px;
  background: var(--aip-soft);
  border: 1px solid color-mix(in srgb, var(--aip-accent) 28%, var(--aip-border));
  font-size: 13px;
  font-weight: 850;
  color: var(--aip-heading);
}
.aip-heading h3 {
  font-size: clamp(19px, 2.45vw, 25px);
  font-weight: 800;
}
.aip-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 17px;
}
.aip-two-col .aip-section {
  height: calc(100% - 17px);
}
.aip-note {
  margin: 17px 0;
  border-radius: 0 11px 11px 0;
  border-left: 3px solid var(--aip-accent);
  background: var(--aip-soft);
  padding: 13px 17px;
  font-size: 13px;
}
.aip-highlight {
  background: linear-gradient(125deg, var(--aip-soft), var(--aip-surface) 65%);
  border-color: color-mix(in srgb, var(--aip-accent) 27%, var(--aip-border));
}
.aip-warning {
  border-left: 4px solid var(--aip-accent);
}
.aip-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 19px;
}
.aip-actions div {
  border: 1px solid var(--aip-border);
  background: var(--aip-soft);
  border-radius: 10px;
  padding: 8px 13px;
  color: var(--aip-heading);
  font-weight: 750;
  font-size: 12px;
}
.aip-ending {
  background: linear-gradient(135deg, var(--aip-soft), var(--aip-surface) 68%);
  border-color: color-mix(in srgb, var(--aip-accent) 28%, var(--aip-border));
}
[data-theme="dark"] .aip-page {
  --aip-soft: color-mix(in srgb, var(--aip-accent) 15%, var(--aip-surface));
}
@media (max-width: 700px) {
  .aip-two-col {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .aip-two-col .aip-section {
    height: auto;
  }
  .aip-hero {
    border-radius: 17px;
  }
  .aip-section {
    border-radius: 15px;
  }
  .aip-heading {
    align-items: flex-start;
  }
  .aip-number {
    width: 40px;
    height: 40px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .aip-page * {
    transition: none !important;
  }
}

/* ==================================
   Article Retraction & Withdrawal 
================================== */
/* Article Retraction & Withdrawal | Aurora OJS | Paste into Additional CSS */
.arw-page {
  --arw-surface: var(--aurora-bg-surface, #fff);
  --arw-bg: var(--aurora-bg-main, #fafaf9);
  --arw-ink: var(--aurora-text-dark, #1c1917);
  --arw-text: var(--aurora-text-body, #44403c);
  --arw-muted: var(--aurora-text-muted, #78716c);
  --arw-line: var(--aurora-border, rgba(0, 0, 0, 0.09));
  --arw-accent: var(--aurora-primary, #f59e0b);
  --arw-soft: color-mix(in srgb, var(--arw-accent) 9%, var(--arw-surface));
  font-family: var(--aurora-font-body, "DM Sans", system-ui, sans-serif);
  font-size: 15px;
  line-height: 1.76;
  color: var(--arw-text);
  width: 100%;
  max-width: 100%;
}
.arw-page * {
  box-sizing: border-box;
}
.arw-page p {
  margin: 0;
}
.arw-page h2,
.arw-page h3,
.arw-page h4 {
  margin: 0;
  color: var(--arw-ink);
  font-family: var(
    --aurora-font-heading,
    "Space Grotesk",
    system-ui,
    sans-serif
  );
  letter-spacing: -0.025em;
  line-height: 1.3;
}
.arw-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(27px, 5vw, 52px);
  border: 1px solid var(--arw-line);
  border-radius: 22px;
  background: var(--arw-surface);
  margin-bottom: 20px;
}
.arw-hero:before {
  content: "";
  position: absolute;
  width: 320px;
  height: 320px;
  right: -145px;
  top: -165px;
  z-index: -1;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--arw-accent) 24%, transparent),
    transparent 72%
  );
}
.arw-hero:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 140px;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--arw-accent),
    var(--aurora-secondary, #e11d48)
  );
}
.arw-eyebrow {
  position: relative;
  padding-left: 17px !important;
  color: var(--arw-ink);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.14em;
  margin-bottom: 15px !important;
}
.arw-eyebrow:before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--arw-accent);
}
.arw-hero h2 {
  font-size: clamp(27px, 4vw, 43px);
  font-weight: 800;
  margin-bottom: 14px;
}
.arw-lead {
  max-width: 720px;
  font-size: 16px;
}
.arw-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 23px;
}
.arw-tags div {
  border: 1px solid var(--arw-line);
  background: var(--arw-bg);
  border-radius: 99px;
  font-size: 11px;
  font-weight: 750;
  padding: 6px 12px;
  color: var(--arw-ink);
}
.arw-section {
  min-width: 0;
  background: var(--arw-surface);
  border: 1px solid var(--arw-line);
  border-radius: 18px;
  padding: clamp(22px, 3vw, 35px);
  margin-bottom: 17px;
  transition: border-color 0.2s ease;
}
.arw-section:hover {
  border-color: color-mix(in srgb, var(--arw-accent) 35%, var(--arw-line));
}
.arw-section > p + p {
  margin-top: 14px;
}
.arw-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
}
.arw-number {
  display: grid;
  place-items: center;
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  border-radius: 12px;
  background: var(--arw-soft);
  border: 1px solid color-mix(in srgb, var(--arw-accent) 27%, var(--arw-line));
  font-size: 13px;
  font-weight: 850;
  color: var(--arw-ink);
}
.arw-heading h3 {
  font-size: clamp(19px, 2.45vw, 25px);
  font-weight: 800;
}
.arw-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 17px;
}
.arw-two-col > .arw-section {
  height: calc(100% - 17px);
}
.arw-highlight {
  background: linear-gradient(135deg, var(--arw-soft), var(--arw-surface) 75%);
  border-color: color-mix(in srgb, var(--arw-accent) 24%, var(--arw-line));
}
.arw-emphasis {
  border-left: 4px solid var(--arw-accent);
}
.arw-ending {
  background: linear-gradient(125deg, var(--arw-soft), var(--arw-surface) 70%);
  border-color: color-mix(in srgb, var(--arw-accent) 27%, var(--arw-line));
}
.arw-small-title {
  font-weight: 800;
  color: var(--arw-ink);
  margin-top: 19px !important;
  margin-bottom: 9px !important;
}
.arw-checklist {
  list-style: none !important;
  padding: 0 !important;
  margin: 13px 0 17px !important;
  display: grid;
  gap: 9px;
}
.arw-checklist li {
  position: relative;
  margin: 0 !important;
  padding: 12px 13px 12px 37px !important;
  background: var(--arw-bg);
  border: 1px solid var(--arw-line);
  border-radius: 11px;
  line-height: 1.55;
}
.arw-checklist li:before {
  content: "✓";
  position: absolute;
  left: 13px;
  top: 12px;
  color: var(--arw-accent);
  font-weight: 900;
}
.arw-checklist-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.arw-note {
  margin-top: 17px;
  border-left: 3px solid var(--arw-accent);
  background: var(--arw-soft);
  border-radius: 0 11px 11px 0;
  padding: 14px 17px;
  font-size: 13px;
  color: var(--arw-ink);
}
.arw-stages {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.arw-stage {
  min-width: 0;
  background: var(--arw-bg);
  border: 1px solid var(--arw-line);
  border-radius: 14px;
  padding: 19px;
}
.arw-stage-label {
  font-size: 10px;
  letter-spacing: 0.13em;
  font-weight: 850;
  color: var(--arw-muted);
  margin-bottom: 11px;
}
.arw-stage h4 {
  font-size: 17px;
  margin-bottom: 10px;
}
.arw-stage p {
  font-size: 13px;
}
.arw-comparison {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.arw-comparison > div {
  padding: 18px;
  background: var(--arw-surface);
  border: 1px solid var(--arw-line);
  border-radius: 13px;
}
.arw-comparison h4 {
  font-size: 17px;
  margin-bottom: 9px;
}
.arw-comparison p {
  font-size: 14px;
}
.arw-workflow {
  counter-reset: arw-step;
  list-style: none !important;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  padding: 0 !important;
  margin: 19px 0 0 !important;
}
.arw-workflow li {
  counter-increment: arw-step;
  position: relative;
  min-width: 0;
  list-style: none !important;
  margin: 0 !important;
  padding: 48px 14px 17px !important;
  border: 1px solid var(--arw-line);
  background: var(--arw-bg);
  border-radius: 12px;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.5;
  color: var(--arw-ink);
}
.arw-workflow li:before {
  content: counter(arw-step, decimal-leading-zero);
  position: absolute;
  left: 14px;
  top: 12px;
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: var(--arw-soft);
  color: var(--arw-ink);
  font-size: 11px;
  font-weight: 900;
}
[data-theme="dark"] .arw-page {
  --arw-soft: color-mix(in srgb, var(--arw-accent) 15%, var(--arw-surface));
}
@media (max-width: 850px) {
  .arw-workflow {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .arw-stages {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 700px) {
  .arw-two-col,
  .arw-checklist-grid,
  .arw-comparison {
    grid-template-columns: 1fr;
  }
  .arw-two-col {
    gap: 0;
  }
  .arw-two-col > .arw-section {
    height: auto;
  }
  .arw-heading {
    align-items: flex-start;
  }
  .arw-number {
    flex-basis: 40px;
    width: 40px;
    height: 40px;
  }
  .arw-hero {
    border-radius: 17px;
  }
  .arw-section {
    border-radius: 15px;
  }
  .arw-workflow {
    grid-template-columns: 1fr;
  }
}
@media (prefers-reduced-motion: reduce) {
  .arw-page * {
    transition: none !important;
  }
}


/* Editorial cards — match the Reviewer board */
.ed-page .ed-card,
.ed-page .ed-chief-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(145deg, var(--ed-main), var(--ed-surface));
  border: 1px solid var(--ed-border);
  border-top: 3px solid
    color-mix(in srgb, var(--ed-primary) 55%, var(--ed-border));
}
.ed-page .ed-card {
  min-height: 265px;
}
.ed-page .ed-card::after,
.ed-page .ed-chief-card::after {
  content: "";
  position: absolute;
  right: -35px;
  top: -35px;
  width: 115px;
  height: 115px;
  border: 1px solid color-mix(in srgb, var(--ed-primary) 13%, transparent);
  border-radius: 50%;
  pointer-events: none;
}
.ed-page .ed-card:hover,
.ed-page .ed-chief-card:hover {
  border-top-color: var(--ed-primary);
}
@media (max-width: 650px) {
  .ed-page .ed-card {
    min-height: unset;
  }
}
