diff --git a/Gemfile b/Gemfile
index f5df3f8d08f13176b4ad2ea467818af51d6f3f13..abffafc423df5123bda7716e7a1be64794e18613 100644
--- a/Gemfile
+++ b/Gemfile
@@ -143,7 +143,7 @@ gem 'rack-cors', '~> 2.0.1', require: 'rack/cors' # rubocop:todo Gemfile/Missing
 
 # GraphQL API
 gem 'graphql', '~> 2.3.5', feature_category: :api
-gem 'graphql-docs', '~> 4.0.0', group: [:development, :test], feature_category: :api
+gem 'graphql-docs', '~> 5.0.0', group: [:development, :test], feature_category: :api
 gem 'graphiql-rails', '~> 1.10', feature_category: :api
 gem 'apollo_upload_server', '~> 2.1.6', feature_category: :api
 gem 'graphlient', '~> 0.6.0', feature_category: :importers # Used by BulkImport feature (group::import)
diff --git a/Gemfile.checksum b/Gemfile.checksum
index 455954099e0f9f21eef81de159bd971c3633e9a2..8ddee28716b216cd158d48ae72993ef8a78ffdd8 100644
--- a/Gemfile.checksum
+++ b/Gemfile.checksum
@@ -103,7 +103,6 @@
 {"name":"cvss-suite","version":"3.0.1","platform":"ruby","checksum":"b5ca9e9e94032a42fd0dc28c1e305378b62c949e35ed7111fc4a1d76f68ad3f9"},
 {"name":"danger","version":"9.4.2","platform":"ruby","checksum":"43e552c6731030235a30fdeafe703d2e2ab9c30917154489cb0ecd9ad3259d80"},
 {"name":"danger-gitlab","version":"8.0.0","platform":"ruby","checksum":"497dd7d0f6513913de651019223d8058cf494df10acbd17de92b175dfa04a3a8"},
-{"name":"dartsass","version":"1.49.8","platform":"ruby","checksum":"267e7262a5655c8f0baa1ef663e976252bdbfa8bbf40c175153544a2dc8e1345"},
 {"name":"database_cleaner-active_record","version":"2.1.0","platform":"ruby","checksum":"7384b973d67bcc1b5a850b876a4638aa83cca3bc88f9d87562fe25cd2dd60d8a"},
 {"name":"database_cleaner-core","version":"2.0.1","platform":"ruby","checksum":"8646574c32162e59ed7b5258a97a208d3c44551b854e510994f24683865d846c"},
 {"name":"date","version":"3.3.3","platform":"java","checksum":"584e0a582d1eb2207b4eaac089d8a43f2ca10bea02682f286099642f15c56cce"},
@@ -287,7 +286,7 @@
 {"name":"graphlyte","version":"1.0.0","platform":"ruby","checksum":"b5af4ab67dde6e961f00ea1c18f159f73b52ed11395bb4ece297fe628fa1804d"},
 {"name":"graphql","version":"2.3.5","platform":"ruby","checksum":"9c367835f86541660d24c3d81632267ecee553d304577aaee070f8ac05860af1"},
 {"name":"graphql-client","version":"0.23.0","platform":"ruby","checksum":"f238b8e451676baad06bd15f95396e018192243dcf12c4e6d13fb41d9a2babc1"},
-{"name":"graphql-docs","version":"4.0.0","platform":"ruby","checksum":"f68296959263db26e1b7ba7058856d67b641cf508187222268be58f09dfa02d7"},
+{"name":"graphql-docs","version":"5.0.0","platform":"ruby","checksum":"76baca6e5a803a4b6a9fbbbfdbf16742b7c4c546c8592b6e1a7aa4e79e562d04"},
 {"name":"grpc","version":"1.63.0","platform":"aarch64-linux","checksum":"dc75c5fd570b819470781d9512105dddfdd11d984f38b8e60bb946f92d1f79ee"},
 {"name":"grpc","version":"1.63.0","platform":"arm64-darwin","checksum":"91b93a354508a9d1772f095554f2e4c04358c2b32d7a670e3705b7fc4695c996"},
 {"name":"grpc","version":"1.63.0","platform":"ruby","checksum":"5f4383c4ee2886e92c31b90422261b7527f26e3baa585d877e9804e715983686"},
@@ -624,6 +623,33 @@
 {"name":"safe_yaml","version":"1.0.4","platform":"ruby","checksum":"248193992ef1730a0c9ec579999ef2256a2b3a32a9bd9d708a1e12544a489ec2"},
 {"name":"safety_net_attestation","version":"0.4.0","platform":"ruby","checksum":"96be2d74e7ed26453a51894913449bea0e072f44490021545ac2d1c38b0718ce"},
 {"name":"sanitize","version":"6.0.2","platform":"ruby","checksum":"48c4eb8e92bb1699056b6000986ac50fc9df82f458a941abf2c4d6759bccd5cf"},
+{"name":"sass-embedded","version":"1.77.5","platform":"aarch64-linux-android","checksum":"ba9c75b59b34e12679c55a6a42da5b8b90311bd4e41477ff7d34a3738d2bf2e0"},
+{"name":"sass-embedded","version":"1.77.5","platform":"aarch64-linux-gnu","checksum":"c84eda6b86669a15695d9a7ddbc7a6e3cb706735d17fe37c5c4e1c584d467534"},
+{"name":"sass-embedded","version":"1.77.5","platform":"aarch64-linux-musl","checksum":"6f6224df2d4a22ba686a636ea8a4a7f146208d9e3dbbe35041a7daed63528c40"},
+{"name":"sass-embedded","version":"1.77.5","platform":"aarch64-mingw-ucrt","checksum":"66abfce03d940ca5c231c5eaf3df658508761dac09f7474101db9ee549561080"},
+{"name":"sass-embedded","version":"1.77.5","platform":"arm-linux-androideabi","checksum":"f5c55676da02a33d664d3ebef043e6b3813d64fd4fc1016420dd8ed4c5b252bf"},
+{"name":"sass-embedded","version":"1.77.5","platform":"arm-linux-gnueabihf","checksum":"e0e067f06ea4bb001c7c2099d6f0980d1fad918b3ea182857563f6488f07ff65"},
+{"name":"sass-embedded","version":"1.77.5","platform":"arm-linux-musleabihf","checksum":"ad2b7cf152d5a7195d57508d466ebce56cdcac5d3ef95f05fa62664eeb9a5eda"},
+{"name":"sass-embedded","version":"1.77.5","platform":"arm64-darwin","checksum":"a6a524aefe8b181c55d5f11c26b2329a06e20de32180f18904fc8488b89bdb36"},
+{"name":"sass-embedded","version":"1.77.5","platform":"riscv64-linux-android","checksum":"04cd2e96f12e1fc84010a01d213dd4496afbd7c92ed3f72b904a5cf55b8048c7"},
+{"name":"sass-embedded","version":"1.77.5","platform":"riscv64-linux-gnu","checksum":"7527f7eb49dc788892a2db4e22d23d06bbce05ddf6663950069cd8f933005484"},
+{"name":"sass-embedded","version":"1.77.5","platform":"riscv64-linux-musl","checksum":"b658e258db2eaa183143a12e95fa229b97f39fb74fa0d4463899bfbb05dba375"},
+{"name":"sass-embedded","version":"1.77.5","platform":"ruby","checksum":"a2a6adc4ce695ece780f40388d207de396e5091ddd28767440c7907a4501beda"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x64-mingw-ucrt","checksum":"20d1464c7faaec4481f81cc173ca1374a2cda5f558fa4e98b8bb3c7c386763d3"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x64-mingw32","checksum":"95b4c534bc31db1f5692fcfc0e965c81a21fd4dce7e72261d682780851f0d4b2"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x64-mswin64","checksum":"6591f5aa8c6940f7584004ad41581048d62d5ab8c83bbf65507c801098bcdb94"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86-cygwin","checksum":"834ee1a4cb4be1d354f12422550ada9db5966a836c6af05c2a2e7c3aa3790117"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86-linux-android","checksum":"4b0334b50a5475bcb621257abc4b32ca802205dbb23608a78c60b1ce1745d4b3"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86-linux-gnu","checksum":"de9255b988ce9866a4734acfcb44f55e73055607e11a1cfa4a0105e5fd6fd928"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86-linux-musl","checksum":"8fc2a3dda88a903550f422c99a0bab9385af493d731f2256cd580fe4a4e92423"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86-mingw-ucrt","checksum":"ea7544b5b30d64a4c9547d576eb2e76f66de8d0d773cfe205357cf564cfae773"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86-mingw32","checksum":"58f2879d01b31bab07f59f641badc62168ccfa7931c69aa906e79ede502c1911"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86-mswin32","checksum":"b699e56fde6bfbaa1b2042ad58680e84b6cc535b88dd1a0cfaabeee7c0af880f"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86_64-cygwin","checksum":"11eeea03f15ae39b03a84bebf8d80f8824941d2cfde57b1c21dbb31d65de0dc3"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86_64-darwin","checksum":"228ee25c012e50bef83e433415b20dddaaaa9c01c8c40c4f99669d919f26bfc3"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86_64-linux-android","checksum":"e183bf5a0b3916eb3f5b3c7596ae44fd72edb0fe233dd00df48131271ed752ea"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86_64-linux-gnu","checksum":"3000a6b984ea746eac1f0c9a17400134fe76c3d41b33436262ac82b5d153d7b4"},
+{"name":"sass-embedded","version":"1.77.5","platform":"x86_64-linux-musl","checksum":"c5dd43155112f7b4eb9e3cafb8ceaa54a157977a2033b1022875bac71a4a4d56"},
 {"name":"sawyer","version":"0.9.2","platform":"ruby","checksum":"fa3a72d62a4525517b18857ddb78926aab3424de0129be6772a8e2ba240e7aca"},
 {"name":"sd_notify","version":"0.1.1","platform":"ruby","checksum":"cbc7ac6caa7cedd26b30a72b5eeb6f36050dc0752df263452ea24fb5a4ad3131"},
 {"name":"seed-fu","version":"2.3.7","platform":"ruby","checksum":"f19673443e9af799b730e3d4eca6a89b39e5a36825015dffd00d02ea3365cf74"},
diff --git a/Gemfile.lock b/Gemfile.lock
index bca5c84b2514d6fb513a22ace0a2371d858c477e..aa104330a67cf383ee9a07a4b733fd109748b9db 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -457,7 +457,6 @@ GEM
     danger-gitlab (8.0.0)
       danger
       gitlab (~> 4.2, >= 4.2.0)
-    dartsass (1.49.8)
     database_cleaner-active_record (2.1.0)
       activerecord (>= 5.a)
       database_cleaner-core (~> 2.0.0)
@@ -894,14 +893,14 @@ GEM
     graphql-client (0.23.0)
       activesupport (>= 3.0)
       graphql (>= 1.13.0)
-    graphql-docs (4.0.0)
+    graphql-docs (5.0.0)
       commonmarker (~> 0.23, >= 0.23.6)
-      dartsass (~> 1.49)
       escape_utils (~> 1.2)
       extended-markdown-filter (~> 0.4)
       gemoji (~> 3.0)
       graphql (~> 2.0)
       html-pipeline (~> 2.14, >= 2.14.3)
+      sass-embedded (~> 1.58)
     grpc (1.63.0)
       google-protobuf (~> 3.25)
       googleapis-common-protos-types (~> 1.0)
@@ -1655,6 +1654,9 @@ GEM
     sanitize (6.0.2)
       crass (~> 1.0.2)
       nokogiri (>= 1.12.0)
+    sass-embedded (1.77.5)
+      google-protobuf (>= 3.25, < 5.0)
+      rake (>= 13)
     sawyer (0.9.2)
       addressable (>= 2.3.5)
       faraday (>= 0.17.3, < 3)
@@ -2071,7 +2073,7 @@ DEPENDENCIES
   graphlient (~> 0.6.0)
   graphlyte (~> 1.0.0)
   graphql (~> 2.3.5)
-  graphql-docs (~> 4.0.0)
+  graphql-docs (~> 5.0.0)
   grpc (~> 1.63)
   gssapi (~> 1.3.1)
   guard-rspec