/* One global navigation; essay-specific steps belong to the essay, not here. */
body.ep-top-navigation { --ep-sidebar-offset: 0px; --ep-workspace-header-height: 58px; --ep-workspace-header-background: linear-gradient(90deg, #2b2d66 0%, #3f48a6 30%, #7a5cc0 58%, #bb86b8 80%, #e4a08a 100%); }
body.ep-top-navigation .migration-header {
  height: var(--ep-workspace-header-height); padding: 0 clamp(16px, 2vw, 30px); gap: 14px;
  /* Keep the opaque reference gradient. An inset rule leaves all 58px available
     for centering even-height controls on whole pixels, without a frosted layer. */
  background: var(--ep-workspace-header-background); color: #fff; border-bottom: 0; box-shadow: inset 0 -1px 0 #28295038;
  -webkit-backdrop-filter: none; backdrop-filter: none;
}
.ep-top-navigation .ep-workspace-brand { flex: 0 0 auto; padding: 0; gap: 8px; color: #fff; text-decoration: none; }
.ep-top-navigation .ep-workspace-brand strong { font-size: 17px; font-weight: 760; letter-spacing: -.045em; }
.ep-top-navigation .ep-workspace-brand__mark { width: 29px; height: 32px; border-radius: 9px; border-color: #abbade99; box-shadow: inset 0 1px 0 #ffffff40; }
.ep-top-navigation .ep-workspace-brand__mark svg { width: 23px; height: 23px; }
.ep-top-navigation #desktop-nav { display: flex; align-items: center; gap: 4px; margin: 0; }
.ep-top-navigation #desktop-nav > a { justify-content: center; min-height: 36px; padding: 7px 12px; border-radius: 9px; color: #d7dbeb; border-color: transparent; background: transparent; box-shadow: none; font-size: 13px; line-height: 20px; white-space: nowrap; }
/* Navigation stays text-only, including hover/press; override the older sidebar
   state rules without changing the responsive link hit areas. */
body.ep-top-navigation #desktop-nav > a:is(:hover, :active, [aria-current="page"]) {
  color: #fff; border-color: transparent; background: transparent; box-shadow: none;
}
.ep-top-navigation #desktop-nav > a[aria-current="page"] { font-weight: 700; }
.ep-top-navigation #desktop-nav > a[aria-current="page"]::before { content: none; }
body.ep-top-navigation #desktop-nav > a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.ep-top-navigation .ep-workspace-menu-tools { display: none; }
.ep-top-navigation #workspace-menu-toggle { display: none; place-items: center; width: 36px; height: 36px; flex: 0 0 36px; padding: 7px; border: 1px solid transparent; border-radius: 8px; background: transparent; color: #fff; cursor: pointer; }
.ep-top-navigation #workspace-menu-toggle svg { width: 20px; height: 20px; }
.ep-top-navigation #workspace-menu-toggle:hover { background: #ffffff20; }
.ep-top-navigation .ep-global-lookup { position: absolute; left: 50%; transform: translateX(-50%); width: clamp(165px, calc(100vw - 1000px), 340px); min-width: 135px; max-width: 340px; margin: 0; }
.ep-top-navigation .ep-global-lookup form { padding-top: 3px; padding-bottom: 3px; border-color: #dce3ef; border-radius: 10px; background: #fbfcff; }
.ep-top-navigation .ep-global-lookup form > svg { color: #657895; }
.ep-top-navigation .ep-global-lookup input::placeholder { color: #65738a; }
.ep-top-navigation .ep-global-lookup form button[type="submit"] { background: #e6edf7; color: #3f587b; }
.ep-top-navigation .migration-header .ep-global-site-entry { position: static; display: flex; align-items: center; flex: 0 0 auto; min-height: 36px; padding: 7px 10px; margin: 0 0 0 auto; gap: 7px; border: 1px solid #ffffff66; border-radius: 9px; background: #14132f70; color: #fff !important; box-shadow: none; font-size: 11px; -webkit-backdrop-filter: none; backdrop-filter: none; }
.ep-top-navigation .migration-header .ep-global-site-entry strong { color: inherit !important; }
.ep-top-navigation .migration-header .ep-global-site-entry strong span { display: none; }
.ep-top-navigation .migration-header .ep-global-site-entry small { color: inherit; border-left-color: #ffffff55; font-size: 10px; }
/* The header gradient lightens to coral on the right; a dark tint keeps white labels above 4.5:1. */
.ep-top-navigation .migration-header .ep-global-site-entry:hover { background: #14132f80; border-color: #ffffff88; }
.ep-workspace-account { position: relative; flex: 0 0 auto; color: #fff; }
.ep-workspace-account > summary { display: flex; align-items: center; gap: 5px; min-height: 36px; padding: 6px 8px; border: 1px solid #ffffff66; border-radius: 9px; background: #14132f70; list-style: none; font-size: 12px; cursor: pointer; user-select: none; }
.ep-workspace-account > summary::-webkit-details-marker { display: none; }
.ep-workspace-account > summary > svg { width: 18px; height: 18px; }
.ep-workspace-account[open] > summary, .ep-workspace-account > summary:hover { background: #14132f80; border-color: #ffffff88; }
.ep-workspace-account > summary:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.ep-workspace-account__panel { position: absolute; right: 0; top: calc(100% + 10px); width: 268px; max-height: calc(100dvh - 82px); overflow-y: auto; padding: 17px; border: 1px solid #c5d2e3; border-radius: 15px; background: #fbfcff; color: #526b8d; box-shadow: 0 14px 40px #253e6124; }
.ep-workspace-account__panel .ep-sidebar-quota { display: grid; gap: 7px; padding: 0 0 14px; background: none; border: 0; }
.ep-workspace-account__panel .ep-sidebar-quota > strong { font-size: 12px; color: #536783; }
.ep-workspace-account__panel .ep-sidebar-quota p { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0; color: #73849c; font-size: 12px; }
.ep-workspace-account__panel .ep-sidebar-quota b { color: #405776; font-weight: 600; font-variant-numeric: tabular-nums; }
.ep-workspace-account__panel :is(.ep-sidebar-account-action, .ep-sidebar-identity) { padding: 12px 0; }
.ep-workspace-account__panel :is(.ep-sidebar-account-action, .ep-sidebar-identity) small { display: block; margin-top: 3px; color: #8190a6; font-size: 10px; }
.ep-workspace-account__panel .ep-sidebar-purchase { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 36px; margin-top: 4px; padding: 7px 11px; font-size: 12px; border-radius: 9px; }
.ep-workspace-account__panel .ep-source-notice { display: block; margin-top: 12px; text-align: center; }
body.ep-top-navigation .migration-main { margin-left: 0 !important; padding-top: var(--ep-workspace-header-height); }
body.ep-top-navigation .migration-main .block-container { padding-left: clamp(20px, 4vw, 60px); padding-right: clamp(20px, 4vw, 60px); }
/* Text-heavy essay pages retain a comfortable centered working width on large displays. */
body.ep-top-navigation .migration-main:has(:is(.migration-write-page, .migration-report-page, .migration-training-page)) .block-container { width: min(100%, 1240px); max-width: 1240px; margin-inline: auto; padding-top: 18px; padding-bottom: 24px; box-sizing: border-box; }
body.ep-top-navigation .migration-app .ep-home-atmosphere,
body.ep-top-navigation .migration-app .migration-main::after { left: 0 !important; }
body.ep-top-navigation .migration-main:has(.migration-arsenal-page) .ep-home-atmosphere { left: 0 !important; }
body.ep-top-navigation :is(#desktop-account, #mobile-account) { display: none !important; }
body.ep-top-navigation.ep-exam-active #desktop-nav { visibility: hidden; pointer-events: none; }
@media (min-width: 1001px) and (max-width: 1500px) {
  body.ep-top-navigation .migration-header { gap: 9px; padding: 0 16px; }
  .ep-top-navigation #desktop-nav { gap: 2px; }
  .ep-top-navigation #desktop-nav > a { padding-inline: 7px; font-size: 12px; }
}
@media (min-width: 1001px) and (max-width: 1700px) {
  /* In a laptop-width header the search participates in flex layout, so it
     cannot overlap the last navigation item as an absolute centered box. */
  .ep-top-navigation .ep-global-lookup { position: relative; left: auto; transform: none; width: auto; flex: 1 1 165px; min-width: 135px; max-width: 340px; margin-left: auto; }
  .ep-top-navigation #desktop-nav { flex: 0 0 auto; }
  .ep-top-navigation .migration-header .ep-global-site-entry { margin-left: 0; }
}
@media (min-width: 1001px) and (max-width: 1200px) {
  .ep-top-navigation .ep-workspace-brand strong { display: none; }
  .ep-top-navigation .migration-header .ep-global-site-entry small { display: none; }
}
@media (max-width: 1000px) {
  body.ep-top-navigation .migration-header { gap: 9px; padding: 0 14px; }
  .ep-top-navigation #workspace-menu-toggle { display: grid; order: 5; }
  .ep-top-navigation #desktop-nav { display: none; position: absolute; top: calc(var(--ep-workspace-header-height) + 8px); left: 14px; right: 14px; padding: 9px; border: 1px solid #ffffff66; border-radius: 14px; background: var(--ep-workspace-header-background); box-shadow: 0 14px 40px #253e6124; }
  .ep-top-navigation.ep-workspace-menu-open #desktop-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
  .ep-top-navigation #desktop-nav > a { min-height: 42px; padding: 8px 5px; }
  .ep-top-navigation .ep-workspace-menu-tools { display: flex; justify-content: flex-end; grid-column: 1 / -1; gap: 16px; margin-top: 4px; padding: 10px 6px 2px; border-top: 1px solid #ffffff55; }
  .ep-top-navigation .ep-workspace-menu-tools a { min-height: 30px; padding: 5px 0; border: 0; border-radius: 0; color: #fff; font-size: 11px; }
  .ep-top-navigation .migration-header .ep-global-site-entry { display: none; }
  .ep-top-navigation .ep-global-lookup { position: relative; left: auto; transform: none; width: auto; flex: 1 1 200px; max-width: 470px; margin-left: auto; }
  .ep-workspace-account > summary { width: 36px; padding: 7px; justify-content: center; }
  .ep-workspace-account > summary > span { display: none; }
  .ep-workspace-account__panel { right: -45px; }
  body.ep-top-navigation .migration-main .block-container { padding-left: 24px; padding-right: 24px; }
}
@media (max-width: 600px) {
  body.ep-top-navigation .migration-header { gap: 5px; padding: 0 10px; }
  .ep-top-navigation .ep-workspace-brand { gap: 5px; }
  .ep-top-navigation .ep-workspace-brand strong { font-size: 14px; }
  .ep-top-navigation .ep-workspace-brand__mark { width: 25px; height: 29px; }
  .ep-top-navigation .ep-global-lookup { min-width: 0; flex-basis: 140px; }
  .ep-top-navigation .ep-global-lookup form { gap: 4px; padding-left: 7px; padding-right: 4px; }
  .ep-top-navigation .ep-global-lookup form > svg { display: none; }
  .ep-top-navigation .ep-global-lookup form button[type="submit"] { padding: 4px; }
  .ep-top-navigation .ep-lookup-panel { top: 64px; }
  .ep-top-navigation #desktop-nav { left: 10px; right: 10px; }
  .ep-top-navigation #desktop-nav > a { font-size: 12px; }
  body.ep-top-navigation .migration-main .block-container { padding-left: 14px; padding-right: 14px; }
}
@media (max-width: 360px) { .ep-top-navigation .ep-workspace-brand strong { display: none; } }
@media print {
  body.ep-top-navigation .migration-header { display: none !important; }
  body.ep-top-navigation .migration-main { margin-left: 0 !important; padding-top: 0; }
}
