diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/index.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/index.html
index 18c04ff831..79a7ea9125 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/-menu-item.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/-menu-item.html
index c6c06c7c92..125cee0f12 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/-menu-item.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/-menu-item.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/image-vector.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/image-vector.html
index 44357e8ee0..506707fba9 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/image-vector.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/image-vector.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/index.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/index.html
index 8b64d91f2c..760e8bc147 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/is-important.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/is-important.html
index 4937c5225e..220b469463 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/is-important.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/is-important.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/label.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/label.html
index 5f77d53f2b..78b2114507 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/label.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/label.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/on-click.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/on-click.html
index 07b9e20c79..2eaf56d16c 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/on-click.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/-menu-item/on-click.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/index.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/index.html
index 703fe24109..782d35451a 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/core/org.dokka.it.android.kmp.core/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/index.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/index.html
index dd0926bb2f..40b2227b65 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/org.dokka.it.android.kmp.material3/-top-app-bar-action.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/org.dokka.it.android.kmp.material3/-top-app-bar-action.html
index 660d165dbe..247d544799 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/org.dokka.it.android.kmp.material3/-top-app-bar-action.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/org.dokka.it.android.kmp.material3/-top-app-bar-action.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/org.dokka.it.android.kmp.material3/index.html b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/org.dokka.it.android.kmp.material3/index.html
index bf8f31fda8..0958bc9dba 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/org.dokka.it.android.kmp.material3/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/material3/org.dokka.it.android.kmp.material3/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/styles/style.css b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/styles/style.css
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/projects/it-android-compose/expectedData/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/index.html b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/index.html
index 614a4761ac..cdaa93bc36 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/-android-specific-class.html b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/-android-specific-class.html
index a2c80703c8..359ab34eba 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/-android-specific-class.html
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/-android-specific-class.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/create-view.html b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/create-view.html
index 67e58275de..25be833659 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/create-view.html
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/create-view.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/index.html b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/index.html
index 5cc379c5c3..df2384609a 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/sparse-int-array.html b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/sparse-int-array.html
index 1fc87a92b9..a32f9d0651 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/sparse-int-array.html
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-android-specific-class/sparse-int-array.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-integration-test-activity/-integration-test-activity.html b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-integration-test-activity/-integration-test-activity.html
index 1478f0d429..31f3fcf588 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-integration-test-activity/-integration-test-activity.html
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-integration-test-activity/-integration-test-activity.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-integration-test-activity/index.html b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-integration-test-activity/index.html
index 720e93f7c9..06581cca60 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-integration-test-activity/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/-integration-test-activity/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/index.html b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/index.html
index 892ed16750..14ac32aef8 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/index.html
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/it-android/it.android/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/styles/style.css b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/styles/style.css
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/ui-kit/ui-kit.min.css
index 2ccc0adcdb..84756531fc 100644
--- a/dokka-integration-tests/gradle/projects/it-android/expectedData/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/projects/it-android/expectedData/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/index.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/index.html
index 8dd749dd2d..00c1d29e43 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/index.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-common-main-cls/-common-main-cls.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-common-main-cls/-common-main-cls.html
index 509fbbd3ef..82ec0150a7 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-common-main-cls/-common-main-cls.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-common-main-cls/-common-main-cls.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-common-main-cls/index.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-common-main-cls/index.html
index 64cbae708b..ad969b7487 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-common-main-cls/index.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-common-main-cls/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-ios-main-cls/-ios-main-cls.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-ios-main-cls/-ios-main-cls.html
index abc5bb8f33..2d42c44ba5 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-ios-main-cls/-ios-main-cls.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-ios-main-cls/-ios-main-cls.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-ios-main-cls/index.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-ios-main-cls/index.html
index c1345ec9c9..3b61c41eb6 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-ios-main-cls/index.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-ios-main-cls/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-jvm-main-cls/-jvm-main-cls.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-jvm-main-cls/-jvm-main-cls.html
index 1b543148b9..96c08ed26a 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-jvm-main-cls/-jvm-main-cls.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-jvm-main-cls/-jvm-main-cls.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-jvm-main-cls/index.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-jvm-main-cls/index.html
index 12135e759d..66973fc3a0 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-jvm-main-cls/index.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-jvm-main-cls/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-linux-main-cls/-linux-main-cls.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-linux-main-cls/-linux-main-cls.html
index 5dbb2f73f7..f7e65717dd 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-linux-main-cls/-linux-main-cls.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-linux-main-cls/-linux-main-cls.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-linux-main-cls/index.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-linux-main-cls/index.html
index 675fe96c22..c77e18c3d8 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-linux-main-cls/index.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-linux-main-cls/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-native-main-cls/-native-main-cls.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-native-main-cls/-native-main-cls.html
index 424888654c..63c353ee94 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-native-main-cls/-native-main-cls.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-native-main-cls/-native-main-cls.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-native-main-cls/index.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-native-main-cls/index.html
index 3840a187d3..fc3ec6d582 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-native-main-cls/index.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/-native-main-cls/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/[ios-arm64]ios-x64-main-fn.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/[ios-arm64]ios-x64-main-fn.html
index 8fc120111b..862f608124 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/[ios-arm64]ios-x64-main-fn.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/[ios-arm64]ios-x64-main-fn.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/[ios-x64]ios-x64-main-fn.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/[ios-x64]ios-x64-main-fn.html
index a029d35f99..362f222a2b 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/[ios-x64]ios-x64-main-fn.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/[ios-x64]ios-x64-main-fn.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/commpn-main-fn.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/commpn-main-fn.html
index 44805f80cf..aac23aedfe 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/commpn-main-fn.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/commpn-main-fn.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/index.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/index.html
index 0479fc2b25..9c7a2a3c9f 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/index.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/ios-main-fn.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/ios-main-fn.html
index 3402c07d3d..ecc89dc499 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/ios-main-fn.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/ios-main-fn.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/jvm-main-fn.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/jvm-main-fn.html
index b77e2eb671..5f91ebef4c 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/jvm-main-fn.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/jvm-main-fn.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-arm64-fn.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-arm64-fn.html
index 31117ba42f..c9579b5ee0 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-arm64-fn.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-arm64-fn.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-fn.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-fn.html
index 92deb0033c..c161d970dc 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-fn.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-fn.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-x64-fn.html b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-x64-fn.html
index a9c74f71b4..29f1c6ade6 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-x64-fn.html
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/it-kotlin-multiplatform/a.b.c/linux-x64-fn.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/styles/style.css b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/styles/style.css
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/ui-kit/ui-kit.min.css
index 2ccc0adcdb..84756531fc 100644
--- a/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/projects/it-kotlin-multiplatform/expectedData/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/-greeter.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/-greeter.html
index 646a55396b..57f5cda971 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/-greeter.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/-greeter.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/greet.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/greet.html
index d68e5bf263..2c71c9cf91 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/greet.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/greet.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/index.html
index 8ad5133e56..5ab1d37d61 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/name.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/name.html
index 6bbbdb187e..000e61963a 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/name.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/-greeter/name.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/index.html
index f7ab88a4d2..94f9f175df 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/main.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/main.html
index e6f665e1fe..78e504add7 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/main.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/-dokka -gradle -example/demo/main.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/index.html
index 8887bfb9aa..356685b56c 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/basic-gradle-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/-kakapo.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/-kakapo.html
index a0a1662ac1..e3710d2119 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/-kakapo.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/-kakapo.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/description.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/description.html
index 51192644d4..d6410853dd 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/description.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/description.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/index.html
index 9c54364137..45a68310a2 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/-kakapo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/index.html
index e9465b2a82..ff58f5b2a2 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/foo.example.module.kakapo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/index.html
index 4eba1df2aa..5840ca6842 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kakakpo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/-kea.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/-kea.html
index ea96130dd2..a2bb62b8e5 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/-kea.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/-kea.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/description.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/description.html
index 5f80f3ec73..d3cae5daae 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/description.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/description.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/index.html
index c480f93f0b..0b5053c56c 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/-kea/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/index.html
index 483c489cb9..83332fc012 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/foo.example.module.kea/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/index.html
index a499262580..30392c4c41 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/kea/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/composite-build-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/-greeter.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/-greeter.html
index c59f66de7a..025debef16 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/-greeter.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/-greeter.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/greet.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/greet.html
index dc466a06c0..6207e205cb 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/greet.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/greet.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/index.html
index a3596ec4ca..6e25986586 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/name.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/name.html
index 56eb573605..c98471bc91 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/name.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-greeter/name.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-hide-from-dokka/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-hide-from-dokka/index.html
index db2d89a891..3b4e8a117c 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-hide-from-dokka/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/-hide-from-dokka/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/index.html
index 2024e7f555..2bf9af8eca 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/-demo -library/demo/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/index.html
index 2125ad63ec..5dffbe816f 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-dokka-plugin-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/-greeter.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/-greeter.html
index 8aede45dbe..1b360b6bfd 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/-greeter.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/-greeter.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/greet.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/greet.html
index 0306aff757..5192dae86a 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/greet.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/greet.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/index.html
index 59525c2ff6..4f06069ef2 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/name.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/name.html
index ec2b2e1650..ccc7be9f3b 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/name.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/-greeter/name.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/index.html
index 9990c6d4e3..b7c7af0ee8 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/main.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/main.html
index 0aa35a1227..918da5e73d 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/main.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/custom-format-example/demo/main.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/index.html
index 86a75310a4..524caf0f80 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/custom-styling-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/-my-java-application.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/-my-java-application.html
index 9e39f9166f..c63daab3b3 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/-my-java-application.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/-my-java-application.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/index.html
index 55daaeb833..419ad694a7 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/main.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/main.html
index 88f80fc233..6576f7f235 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/main.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/-my-java-application/main.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/index.html
index ac90bc8e84..ac414eb613 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/demo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/index.html
index ccbf21ad94..c23ed603cc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-application/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/-my-java-feature-util/-my-java-feature-util.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/-my-java-feature-util/-my-java-feature-util.html
index a26486d978..0a9b0c8f19 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/-my-java-feature-util/-my-java-feature-util.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/-my-java-feature-util/-my-java-feature-util.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/-my-java-feature-util/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/-my-java-feature-util/index.html
index 8bb3b552f1..8bf4c5f411 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/-my-java-feature-util/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/-my-java-feature-util/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/index.html
index ca98e936a5..6cadc37de5 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.feature/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/-my-mongo-db-util/-my-mongo-db-util.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/-my-mongo-db-util/-my-mongo-db-util.html
index 35229ecee1..fbeb203100 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/-my-mongo-db-util/-my-mongo-db-util.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/-my-mongo-db-util/-my-mongo-db-util.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/-my-mongo-db-util/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/-my-mongo-db-util/index.html
index 0525c27738..c71eecb10f 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/-my-mongo-db-util/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/-my-mongo-db-util/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/index.html
index 6e96fbcb02..ff2d1d71bd 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/demo.mongodb/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/index.html
index 202591514f..d25d2ff275 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-features/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/-my-java-library-class/-my-java-library-class.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/-my-java-library-class/-my-java-library-class.html
index 73b1575df8..f6d093e413 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/-my-java-library-class/-my-java-library-class.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/-my-java-library-class/-my-java-library-class.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/-my-java-library-class/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/-my-java-library-class/index.html
index 4bc2609861..7c73d7a504 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/-my-java-library-class/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/-my-java-library-class/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/index.html
index 333424e814..a87b6f4c7d 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/demo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/index.html
index 5fa224f4d3..c72931b2d1 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/my-java-library/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/java-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/index.html
index dca01bc78a..6e16c31685 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/-greeter.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/-greeter.html
index d092f14135..81c74a726f 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/-greeter.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/-greeter.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/get-name.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/get-name.html
index 11df69d26e..f14d4981ad 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/get-name.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/get-name.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/greet.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/greet.html
index d2d35ee9d3..d38551eb7e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/greet.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/greet.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/index.html
index 7106f0e9f5..88862181ef 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-greeter/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-hello-world-kt/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-hello-world-kt/index.html
index 21b21030e2..349a3acab6 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-hello-world-kt/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-hello-world-kt/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-hello-world-kt/main.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-hello-world-kt/main.html
index 020fcec63b..9eb7ce331b 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-hello-world-kt/main.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/-hello-world-kt/main.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/index.html
index 00d2ff326d..7f90bc2e16 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/kotlin-as-java-example/demo/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/ui-kit/ui-kit.min.css
index 2ccc0adcdb..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-as-java-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/-foo/-foo.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/-foo/-foo.html
index c13f63c9a0..2ac13daa10 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/-foo/-foo.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/-foo/-foo.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/-foo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/-foo/index.html
index 23ae3b10a1..c727d92cb9 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/-foo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/-foo/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/index.html
index f9f461092d..d68a473025 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.common/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/async-with-delay.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/async-with-delay.html
index 593818ae5c..87ecdcbaa7 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/async-with-delay.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/async-with-delay.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/index.html
index 072a6113c8..d9f8657bfe 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/name.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/name.html
index 0aab9572d4..87a76b7709 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/name.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.coroutines/name.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/get-current-date.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/get-current-date.html
index daebc881b1..359e647d6f 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/get-current-date.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/get-current-date.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/get-date.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/get-date.html
index 6e4ffe9476..e63813993a 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/get-date.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/get-date.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/index.html
index 7b391cad9a..038daf917c 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp.date/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/aliases.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/aliases.html
index e7d7bd672f..81b63b9ee2 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/aliases.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/aliases.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/description.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/description.html
index 860247b887..33e2aaecf2 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/description.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/description.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/index.html
index cd9e744098..17597f0622 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/usage.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/usage.html
index 8a3f11fe61..43580cb45a 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/usage.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/-java-annotation/usage.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[js]my-extension.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[js]my-extension.html
index c944fa4be7..0fc8e96f82 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[js]my-extension.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[js]my-extension.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[js]shared.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[js]shared.html
index 346d7b877b..0da2d3d13a 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[js]shared.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[js]shared.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[jvm]my-extension.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[jvm]my-extension.html
index 28dc77d6ff..4db14f4d97 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[jvm]my-extension.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[jvm]my-extension.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[jvm]shared.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[jvm]shared.html
index e8942f41fd..debcb8f943 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[jvm]shared.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/[jvm]shared.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/index.html
index c248067c72..16f37a6584 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/js.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/js.html
index 89ed61c58f..25d43b09fb 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/js.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/js.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/jvm.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/jvm.html
index 9eb96cc8a4..3a0d8b7ec3 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/jvm.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/jvm.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/print-pointer-raw-value.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/print-pointer-raw-value.html
index 7d06e765f4..f89295d802 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/print-pointer-raw-value.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/print-pointer-raw-value.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/start-connection-pipeline.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/start-connection-pipeline.html
index dd473d052b..051dc92933 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/start-connection-pipeline.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/dokka-multiplatform-example/org.kotlintestmpp/start-connection-pipeline.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/index.html
index c72e39da08..f94bbbce17 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/kotlin-multiplatform-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/-greeter.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/-greeter.html
index 2db18c215b..94b4500e22 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/-greeter.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/-greeter.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/greet.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/greet.html
index 6f3b16e15a..b1436bf322 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/greet.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/greet.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/index.html
index e7891bcdb1..b8612a4c8b 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/name.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/name.html
index 5ab35c67d2..3bf33bec71 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/name.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/-greeter/name.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/index.html
index c73029e012..e5b1765b1e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/main.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/main.html
index a686367932..5785dbb8d1 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/main.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/dokka-library-publishing-example/demo/main.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/index.html
index cd7300ebc3..7f7bb83f22 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/index.html
@@ -19,7 +19,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/library-publishing-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/-child-project-a-class/-child-project-a-class.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/-child-project-a-class/-child-project-a-class.html
index 159228f225..cf7f9e5933 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/-child-project-a-class/-child-project-a-class.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/-child-project-a-class/-child-project-a-class.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/-child-project-a-class/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/-child-project-a-class/index.html
index 302b1638fe..5b59304ef3 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/-child-project-a-class/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/-child-project-a-class/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/index.html
index 818328aab8..ba6f865b67 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/demo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/index.html
index cfc8a9cd9d..1c76a5a92e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectA/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/-child-project-b-class/-child-project-b-class.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/-child-project-b-class/-child-project-b-class.html
index 97e23fe992..4970b7f822 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/-child-project-b-class/-child-project-b-class.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/-child-project-b-class/-child-project-b-class.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/-child-project-b-class/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/-child-project-b-class/index.html
index bdada129f9..a682a8d6b8 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/-child-project-b-class/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/-child-project-b-class/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/index.html
index 73640ad1ef..d3e2ec1479 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/demo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/index.html
index aeed1f96bb..bfab05c721 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/childProjectB/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/ui-kit/ui-kit.min.css
index 101832e16d..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/multimodule-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08))}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:899px){.toc--row{min-height:52px}}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;position:relative;top:8px;transform:rotate(0deg);width:24px}@media(max-width:899px){.toc--button:after{top:14px}}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}@media(max-width:899px){.toc--link{min-height:52px;padding:14px 4px 14px 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/-child-project-a-class.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/-child-project-a-class.html
index 30da0adc28..3b01a62125 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/-child-project-a-class.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/-child-project-a-class.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/extend.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/extend.html
index 2fa0dad674..a9521a459b 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/extend.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/extend.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/index.html
index e19918d782..5fe215130f 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-child-project-a-class/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/-fancy-a-p-i.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/-fancy-a-p-i.html
index b27017a9f7..5c9f25f92d 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/-fancy-a-p-i.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/-fancy-a-p-i.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/do-something.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/do-something.html
index d4a2b27347..d33d2118c5 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/do-something.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/do-something.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/index.html
index 836f47eac7..63e0873ff2 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/-fancy-a-p-i/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/index.html
index 99a0837e22..48371d7957 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/demo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/index.html
index c7222defdd..323ee28527 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectA/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/-child-project-b-class/-child-project-b-class.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/-child-project-b-class/-child-project-b-class.html
index 42feeedcd7..e11652db0b 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/-child-project-b-class/-child-project-b-class.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/-child-project-b-class/-child-project-b-class.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/-child-project-b-class/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/-child-project-b-class/index.html
index 3adfd55c55..1ea71c2a97 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/-child-project-b-class/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/-child-project-b-class/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/index.html
index af910a6c9c..3f5d498533 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/super-function42.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/super-function42.html
index 843f21f6d6..244775583d 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/super-function42.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/demo/super-function42.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/index.html b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/index.html
index 768243fd70..4b265bff2c 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/index.html
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/childProjectB/index.html
@@ -18,7 +18,6 @@
}
}
-
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/scripts/platform-content-handler.js b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/scripts/platform-content-handler.js
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/styles/style.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/styles/style.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/ui-kit/ui-kit.min.css b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/ui-kit/ui-kit.min.css
index 2ccc0adcdb..84756531fc 100644
--- a/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/ui-kit/ui-kit.min.css
+++ b/dokka-integration-tests/gradle/src/testExampleProjects/expectedData/exampleProjects/versioning-multimodule-example/html/ui-kit/ui-kit.min.css
@@ -1 +1 @@
-.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.table+hr{display:none}.main-content .content>hr{border:none;border-top:1px solid rgba(0,0,0,.2);border-top:1px solid var(--color-b20);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:1px solid hsla(0,0%,100%,.16);border-top:1px solid var(--color-w16)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
+.breadcrumbs{--breadcrumb-size:24px;margin-top:var(--breadcrumb-size);min-height:var(--breadcrumb-size);word-wrap:break-word}.breadcrumbs .delimiter{color:var(--text-outline);margin:0 4px}.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(../images/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}@media(max-width:899px){.button_dropdown.search--close-button:after{background-image:url(../images/cross.svg)}}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(../images/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(../images/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.symbol:not(.token):not(.wrapped),code.block{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;display:block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);overflow:auto;padding:12px 16px;position:relative;white-space:pre-wrap;word-break:break-word}code.block{max-width:100%;overflow-x:auto}.source-link-wrapper:after{clear:both;content:"";display:block;height:0}@media screen and (max-width:899px){.source-link-wrapper{display:block;margin-top:8px}}.source-link{float:right}.sample-container,div.CodeMirror{display:flex;flex-direction:column;position:relative}pre[runnable-code-sample]:after,pre[runnable-code-sample]:before{display:none}.copy-tooltip{align-items:center;display:flex;justify-content:center;position:absolute;right:4px;right:var(--size-s1);top:4px;top:var(--size-s1)}.copy-icon{border-radius:8px;border-radius:var(--size-s2);cursor:pointer;display:none;padding:8px;padding:var(--size-s2)}.copy-icon:hover{background:hsla(0,0%,100%,.5);background:var(--color-w50)}.copy-icon:before{background-color:var(--text-color);content:"";display:block;flex:0 0 auto;height:24px;-webkit-mask:url(../images/copy-icon.svg) no-repeat center/contain;mask:url(../images/copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .copy-icon:hover{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.js .sample-container:hover .copy-icon,.js-touched .copy-icon{display:block}.copy-popup-wrapper{background-color:#262628;background-color:var(--color-background-page-dt);border:1px solid hsla(0,0%,100%,.16);border:1px solid var(--color-w16);border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);cursor:default;display:none;padding:7px 16px 7px 8px;padding:7px var(--size-s3) 7px var(--size-s2);z-index:1}.copy-popup-wrapper>span{flex:0 0 auto}.copy-popup-wrapper.popup-to-left{margin-right:4px;margin-right:var(--size-s1)}.sample-container:hover .copy-popup-wrapper.active-popup,.table-row:hover .copy-popup-wrapper.active-popup{align-items:center;display:flex;justify-content:flex-start}.copy-popup-icon{background-image:url(../images/success-icon.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:24px;width:24px}.anchor-wrapper{margin-left:4px;margin-left:var(--size-s1);position:relative}.anchor-wrapper .copy-popup-wrapper{left:100%;margin-left:4px;margin-left:var(--size-s1);position:absolute;top:-8px;width:-moz-max-content;width:max-content}.anchor-wrapper .copy-popup-wrapper_bottom{left:calc(100% - 36px);top:32px}.anchor-wrapper .copy-popup-wrapper_bottom-right{left:auto;right:calc(100% - 32px);top:32px}.anchor-icon{align-items:center;background:rgba(0,0,0,.08);background:var(--color-b08);border-radius:4px;border-radius:var(--size-s1);color:#000;color:var(--color-text);display:flex;justify-content:center;margin:-4px 0;opacity:0;padding:4px;padding:var(--size-s1);transition:opacity .2s ease-in-out}.anchor-icon:hover{cursor:pointer}.anchor-icon:before{background-color:#000;background-color:var(--color-text);content:"";display:block;height:24px;-webkit-mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;mask:url(../images/anchor-copy-icon.svg) no-repeat center/contain;width:24px}.theme-dark .anchor-icon{background:hsla(0,0%,100%,.1);background:var(--color-w10)}.theme-dark .anchor-icon:before{background-color:#fff;background-color:var(--color-w100)}.js .main-subrow:hover .anchor-icon{opacity:1}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;min-width:min(360px,100vw);padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:flex;font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);gap:8px;letter-spacing:-.03em;list-style-type:none;padding:8px 12px;padding:var(--size-s2) 12px;position:relative}@media(max-width:899px){.dropdown--option{padding:14px 12px}}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0;z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option_link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--option-icon{display:inline-block;flex-shrink:0;height:24px;height:var(--size-m1);width:24px;width:var(--size-m1)}.dropdown--option-icon_selected{background-image:url(../images/check.svg)}.dropdown--option-text{display:inline-block;overflow:hidden;text-overflow:ellipsis}.dropdown--overlay{background-color:rgba(0,0,0,.5);background-color:var(--color-b50);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}.dropdown--header .button{border-radius:0;outline-offset:-4px}}.dropdown--header .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.dropdown--header .button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;padding-left:0;position:static;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(../images/filter.svg);background-position:50% 50%;background-repeat:no-repeat;position:relative}.filter-section--dropdown-toggle:after{display:none}}@media(max-width:899px)and (max-width:899px){.filter-section--dropdown-toggle{border-radius:0;outline-offset:-4px}.filter-section--dropdown-toggle:hover{background-color:hsla(0,0%,100%,.16)!important;background-color:var(--color-w16)!important}.filter-section--dropdown-toggle:active{background-color:hsla(0,0%,100%,.21)!important;background-color:var(--color-w21)!important}}.no-js .filter-section{display:none}.footer{background-color:#ebebeb;background-color:var(--color-background-footer);color:rgba(0,0,0,.7);color:var(--color-text-light);font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);position:relative}.theme-dark .footer{background-color:#323237;background-color:var(--color-background-footer-dt);color:hsla(0,0%,100%,.7);color:var(--color-text-light-dt)}.footer--container{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px;padding:0 var(--size-m3)}@media(max-width:439px){.footer--container{padding:0 16px;padding:0 var(--size-s3)}}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;filter:invert(1);flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;margin-bottom:12px;margin-top:12px;outline-color:#6c4a00!important;padding:0;width:40px;z-index:0}.theme-dark .footer--button{filter:none;outline-color:rgba(48,127,255,.5)!important;outline-color:var(--color-key-blue-50)!important}@media(hover:hover){.footer--button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}}.footer--button:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}.footer--button_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.theme-dark .footer--link{border-bottom-color:hsla(0,0%,100%,.7);border-bottom-color:var(--color-text-light-dt)}.footer--link.focus-visible{outline:var(--focus-outline)}.footer--link:focus-visible{outline:var(--focus-outline)}.footer--link:hover{border-bottom-color:#000;border-bottom-color:var(--color-text)}.theme-dark .footer--link:hover{border-bottom-color:hsla(0,0%,100%,.96);border-bottom-color:var(--color-text-dt)}.footer--content{align-items:center;display:flex;margin:12px 0;min-height:40px;text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(../images/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(../images/placeholder.svg)}.ui-kit-icon_cross{background-image:url(../images/cross.svg)}code:not(.block){background:rgba(0,0,0,.08);background:var(--color-background-inline-code);border-radius:2px;display:inline-block;font:400 15.5px/24px JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font:var(--font-code);padding:0 4px}.root{display:flex;flex-direction:column;height:100%}#container{display:flex;flex:1 1 auto;min-height:0}#main{display:flex;flex:1 1 0;flex-direction:column;margin-left:-5px;overflow:auto!important;scrollbar-gutter:stable}.main-content{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:var(--content-max-width);padding:0 48px 72px;padding:0 var(--size-m3) var(--size-l2);width:100%;z-index:0}@media(max-width:439px){.main-content{padding-left:16px;padding-left:var(--size-s3);padding-right:16px;padding-right:var(--size-s3)}}.resizer{cursor:ew-resize;flex:0 0 5px!important;left:-3px;position:relative;z-index:1}.main-content .content>hr{border:none;border-top:3px double rgba(0,0,0,.5);border-top:3px double var(--color-b50);margin:24px 0;margin:var(--size-m1) 0}.theme-dark .main-content .content>hr{border-top:3px double hsla(0,0%,100%,.5);border-top:3px double var(--color-w50)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);position:relative;white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{border-radius:0;height:52px;margin-left:12px;outline-offset:-4px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-b100);display:flex;flex-grow:100;height:52px;padding-top:0}}a{text-decoration:none}.main-content a:not([data-name]){border-bottom:1px solid var(--text-outline);cursor:pointer;font-size:inherit;font-style:normal;line-height:inherit;outline:none;padding-bottom:1px;transition:color .2s,border-color .2s;word-break:break-word;word-wrap:break-word}.main-content a:not([data-name]),.main-content a:not([data-name]):active,.main-content a:not([data-name]):focus,.main-content a:not([data-name]):hover{color:var(--text-color);text-decoration:none}.main-content a:not([data-name]):hover{border-bottom-color:var(--text-color)}.main-content a:not([data-name]).focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.main-content a:not([data-name]):focus-visible{box-shadow:0 0 0 4px rgba(48,127,255,.5);box-shadow:0 0 0 4px var(--color-key-blue-50)}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}.navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}@media(max-width:899px){.navigation-controls .navigation-controls--btn:hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls .navigation-controls--btn:active{background-color:hsla(0,0%,100%,.21);background-color:var(--color-w21)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{border-radius:0;height:52px;outline-offset:-4px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(../images/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(../images/homepage.svg)}.navigation-controls--btn_toc{background-image:url(../images/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(../images/go-to-top-icon.svg)}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-6px;margin-left:-4px;position:relative;top:-2px}@media(max-width:439px){.platform-tags{margin-left:0;margin-top:0}.platform-tags--wrapper{flex-basis:100%;float:none;margin-left:-16px;margin-top:8px}}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;position:relative;text-transform:capitalize}.platform-tags .platform-tag{align-items:center;display:flex;font-size:13px;padding:5px 8px}button.platform-tag{cursor:pointer;position:relative}button.platform-tag.focus-visible{outline:var(--focus-outline);z-index:1}button.platform-tag:focus-visible{outline:var(--focus-outline);z-index:1}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.08),rgba(0,0,0,.08));background-image:linear-gradient(var(--color-b08),var(--color-b08),var(--color-b08))}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:none}.filter-section .platform-tag:not([data-active]):hover{background-color:hsla(0,0%,100%,.16);background-color:var(--color-w16)}.filter-section .platform-tag:not([data-active]):after{background-color:currentColor;content:"";height:1px;left:12px;position:absolute;right:12px;top:20px;z-index:1}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.table-row .inline-comment{padding-bottom:8px;padding-top:8px}.table-row .platform-hinted .sourceset-dependent-content .brief,.table-row .platform-hinted .sourceset-dependent-content .inline-comment{padding:8px}.table{display:flex;flex-direction:column;margin-bottom:32px}.tableheader{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);font:600 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-bottom:0;margin-top:0;padding:7px 16px}.theme-dark .tableheader{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){.tableheader{border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}h4.tableheader{margin-top:24px;margin-top:var(--size-m1)}.table-row{background-color:var(--color-background);border:1px rgba(0,0,0,.2);border-style:solid solid none;border:1px solid var(--color-b20);border-bottom:1px var(--color-b20);display:flex;flex-direction:column;padding:16px 16px 15px}.theme-dark .table-row{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}.table-row_multimodule,.table-row_platform-tagged{border-left:none;border-right:none;padding-left:0;padding-right:0}.table-row_multimodule:first-of-type,.table-row_platform-tagged:first-of-type{border-top:none}@media(max-width:439px){.table-row:not(.table-row_multimodule):not(.table-row_platform-tagged){border-left:none;border-right:none;margin-left:-16px;margin-right:-16px}}.table-row:last-of-type{border-bottom-style:solid;border-bottom-width:1px}.table-row_multimodule:last-of-type,.table-row_platform-tagged:last-of-type{border-bottom:none}.table-row .brief-comment{color:#27282c;color:var(--color-background-nav)}.theme-dark .table-row .brief-comment{color:hsla(0,0%,100%,.4)}td.content{display:flex;flex-direction:column;padding-left:24px;padding-top:16px}.main-subrow{display:flex;flex-direction:row;flex-wrap:wrap;padding:0}.title-row{display:grid;grid-template-columns:auto auto 7em;width:100%}@media (min-width:901px),print{.title-row{grid-template-columns:20% auto 7em}}.keyValue{display:grid;grid-gap:16px}@media (min-width:901px),print{.keyValue{grid-template-columns:1fr 4fr}.keyValue>div:first-child{word-break:break-word}}.table--container{overflow:auto}@media(max-width:439px){.table--container{margin-left:-16px;overflow:auto;width:calc(100% + 32px)}}table{border-collapse:collapse;margin-bottom:24px;margin-top:24px;width:100%}td,th{border:1px solid rgba(0,0,0,.2);border:1px solid var(--color-b20);min-width:40px;text-align:left;vertical-align:top}th{background-color:rgba(25,25,28,.05);background-color:var(--color-background-code-block);padding:7.5px 15.5px}td{padding:15.5px}.theme-dark td,.theme-dark th{border-color:hsla(0,0%,100%,.16);border-color:var(--color-w16)}@media(max-width:439px){td:first-child,th:first-child{border-left:none}td:last-child,th:last-child{border-right:none}}tbody>tr{min-height:56px}td:first-child{width:20vw}.platform-hinted>.platform-bookmarks-row,.tabs-section{border-bottom:1px solid var(--text-outline);margin-bottom:32px;margin-bottom:var(--size-m2)}.platform-hinted>.platform-bookmarks-row.tabs_wrapping,.tabs-section.tabs_wrapping{border-bottom:none}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:4px solid transparent;border-top-left-radius:4px;border-top-right-radius:4px;color:var(--text-color);cursor:pointer;font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 16px 6px;position:relative;top:1px}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{background-color:var(--color-background-hover)}.section-tab.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.section-tab[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.tabs-section-body>div{margin-top:12px}.table .platform-bookmarks-row,.table .tabs-section{margin-bottom:16px;margin-bottom:var(--size-s3)}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{background-color:var(--color-background-hover)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:4px solid var(--active-tab-border-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text);--toc-link-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));--toc-button-hover-gradient:linear-gradient(270deg,transparent,rgba(0,0,0,.08));--toc-item-padding-left:8px;--toc-item-padding-right:4px;--toc-item-padding-top:8px;--toc-item-padding-bottom:8px;--toc-item-padding-left-mobile:8px;--toc-item-padding-right-mobile:4px;--toc-item-padding-top-mobile:14px;--toc-item-padding-bottom-mobile:14px;--toc-icon-size:24px;--toc-button-width:calc(var(--toc-icon-size) + var(--toc-item-padding-left)*2)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08);--toc-link-hover-gradient:linear-gradient(270deg,hsla(0,0%,100%,.08),rgba(17,0,0,0));--toc-button-hover-gradient:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,0))}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:flex-start;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;min-width:var(--toc-button-width);padding:0 4px 0 0;padding:0 var(--toc-item-padding-right) 0 0;position:absolute}.toc--button:after{background-image:url(../images/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;height:var(--toc-icon-size);line-height:0;margin-top:-12px;margin-top:calc(var(--toc-icon-size)/-2);position:absolute;top:50%;transform:rotate(0deg);width:24px;width:var(--toc-icon-size)}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}.toc--button:hover{background:linear-gradient(270deg,transparent,rgba(0,0,0,.08));background:var(--toc-button-hover-gradient)}.toc--button.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--button:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline)}.toc--link{box-sizing:border-box;color:inherit;padding:8px 4px 8px 0;padding:var(--toc-item-padding-top) var(--toc-item-padding-right) var(--toc-item-padding-bottom) 0;width:100%}@media(max-width:899px){.toc--link{padding:14px 4px 14px 0;padding:var(--toc-item-padding-top-mobile) var(--toc-item-padding-right-mobile) var(--toc-item-padding-bottom-mobile) 0}}.toc--link:hover{background:rgba(0,0,0,.08);background:var(--toc-hover-color)}.toc--link.focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--link:focus-visible{box-shadow:inset 4px 0 0 rgba(48,127,255,.5),inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset 4px 0 0 var(--color-key-blue-50),inset -4px 0 0 var(--color-key-blue-50);outline:var(--focus-outline);outline-offset:0}.toc--button~.toc--link.focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--button~.toc--link:focus-visible{box-shadow:inset -4px 0 0 rgba(48,127,255,.5);box-shadow:inset -4px 0 0 var(--color-key-blue-50)}.toc--skip-link{background-color:#458cff;background-color:var(--color-key-blue-hover);color:#fff;color:var(--color-w100);font:400 13px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font);margin-top:36px;padding:1px;position:absolute;z-index:100}.toc--skip-link:not(:focus){overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;border:0!important;height:1px!important;padding:0!important;width:1px!important}.toc--skip-link:focus{outline:var(--focus-outline);outline-offset:0}.sidebar>.toc--skip-link{margin-top:0}.toc--part_hidden>.toc--row>.toc--button~.toc--skip-link{display:none}@media(max-width:899px){.toc--skip-link{display:none}}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(var(--toc-button-width) + var(--toc-icon-size)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px}.toc--icon{height:16px;line-height:32px;width:16px}.toc--button+.toc--link:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.08),rgba(17,0,0,.08));background:var(--toc-link-hover-gradient)}.toc--icon.class:before{content:url(../images/class.svg)}.toc--icon.class-kt:before{content:url(../images/class-kotlin.svg)}.toc--icon.function:before{content:url(../images/function.svg)}.toc--icon.enum-class:before{content:url(../images/enum.svg)}.toc--icon.enum-class-kt:before{content:url(../images/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(../images/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(../images/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(../images/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(../images/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(../images/exception-class.svg)}.toc--icon.interface:before{content:url(../images/interface.svg)}.toc--icon.interface-kt:before{content:url(../images/interface-kotlin.svg)}.toc--icon.object:before{content:url(../images/object.svg)}.toc--icon.typealias-kt:before{content:url(../images/typealias-kotlin.svg)}.toc--icon.val:before{content:url(../images/field-value.svg)}.toc--icon.var:before{content:url(../images/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#458cff;background-color:var(--color-key-blue-hover)}.toc--part[data-active]>.toc--row .toc--button~.toc--link:hover{background:linear-gradient(270deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(270deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.toc--part[data-active]>.toc--row .toc--button:hover{background:linear-gradient(90deg,hsla(0,0%,100%,.16),rgba(17,0,0,0)),#307fff;background:linear-gradient(90deg,hsla(0,0%,100%,.16) 0,rgba(17,0,0,0) 100%),var(--color-key-blue)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto!important;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{min-height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-hover:#458cff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w21:hsla(0,0%,100%,.21);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-b100:#000;--color-background-inline-code:var(--color-b08);--color-background-code-block:rgba(25,25,28,.05);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-number:#871094;--color-cd-number-alternative:#6db9f3;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--copy-icon-color:var(--color-b50);--copy-icon-hover-color:var(--color-b70);--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 15.5px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--color-background-hover:var(--color-b08);--focus-outline:4px solid var(--color-key-blue-50);--content-max-width:1128px;--text-color:var(--color-text);--text-outline:var(--color-b20);--sidebar-width:280px}.theme-dark{--color-background:var(--color-background-page-dt);--color-background-hover:var(--color-w10);--text-color:var(--color-text-dt);--text-outline:var(--color-w16);--color-background-inline-code:var(--color-w10);--color-background-code-block:var(--color-w05)}body{background-color:#fff;background-color:var(--color-background);color:#000;color:var(--text-color);font:400 16px/24px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);margin:0}small{font:400 14px/20px Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s)}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(fonts/inter-latin-400-normal.woff2) format("woff2"),url(fonts/inter-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(fonts/inter-latin-600-normal.woff2) format("woff2"),url(fonts/inter-latin-600-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:400;src:url(fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-400-normal.woff) format("woff")}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:600;src:url(fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2"),url(fonts/jetbrains-mono-latin-600-normal.woff) format("woff")}
\ No newline at end of file
diff --git a/dokka-runners/dokka-gradle-plugin/api/dokka-gradle-plugin.api b/dokka-runners/dokka-gradle-plugin/api/dokka-gradle-plugin.api
index 20b9275d75..600e439d4e 100644
--- a/dokka-runners/dokka-gradle-plugin/api/dokka-gradle-plugin.api
+++ b/dokka-runners/dokka-gradle-plugin/api/dokka-gradle-plugin.api
@@ -369,6 +369,18 @@ public abstract class org/jetbrains/dokka/gradle/engine/plugins/DokkaHtmlPluginP
public final class org/jetbrains/dokka/gradle/engine/plugins/DokkaHtmlPluginParameters$Companion {
}
+public abstract class org/jetbrains/dokka/gradle/engine/plugins/DokkaKotlinPlaygroundSamplesParameters : org/jetbrains/dokka/gradle/engine/plugins/DokkaPluginParametersBaseSpec {
+ public static final field Companion Lorg/jetbrains/dokka/gradle/engine/plugins/DokkaKotlinPlaygroundSamplesParameters$Companion;
+ public static final field DOKKA_KOTLIN_PLAYGROUND_SAMPLES_PLUGIN_FQN Ljava/lang/String;
+ public static final field DOKKA_KOTLIN_PLAYGROUND_SAMPLES_PLUGIN_PARAMETERS_NAME Ljava/lang/String;
+ public abstract fun getKotlinPlaygroundScript ()Lorg/gradle/api/provider/Property;
+ public abstract fun getKotlinPlaygroundServer ()Lorg/gradle/api/provider/Property;
+ public fun jsonEncode ()Ljava/lang/String;
+}
+
+public final class org/jetbrains/dokka/gradle/engine/plugins/DokkaKotlinPlaygroundSamplesParameters$Companion {
+}
+
public abstract class org/jetbrains/dokka/gradle/engine/plugins/DokkaPluginParametersBaseSpec : java/io/Serializable, org/gradle/api/Named {
public fun getName ()Ljava/lang/String;
public fun getPluginFqn ()Ljava/lang/String;
diff --git a/dokka-runners/dokka-gradle-plugin/build.gradle.kts b/dokka-runners/dokka-gradle-plugin/build.gradle.kts
index a9cfbbe2ee..d57b3093e9 100644
--- a/dokka-runners/dokka-gradle-plugin/build.gradle.kts
+++ b/dokka-runners/dokka-gradle-plugin/build.gradle.kts
@@ -90,6 +90,7 @@ dependencies {
devPublication("org.jetbrains.dokka:plugin-jekyll:${project.version}")
devPublication("org.jetbrains.dokka:plugin-jekyll-template-processing:${project.version}")
devPublication("org.jetbrains.dokka:plugin-kotlin-as-java:${project.version}")
+ devPublication("org.jetbrains.dokka:plugin-kotlin-playground-samples:${project.version}")
devPublication("org.jetbrains.dokka:plugin-mathjax:${project.version}")
devPublication("org.jetbrains.dokka:plugin-templating:${project.version}")
devPublication("org.jetbrains.dokka:plugin-versioning:${project.version}")
diff --git a/dokka-runners/dokka-gradle-plugin/src/main/kotlin/engine/plugins/DokkaKotlinPlaygroundSamplesParameters.kt b/dokka-runners/dokka-gradle-plugin/src/main/kotlin/engine/plugins/DokkaKotlinPlaygroundSamplesParameters.kt
new file mode 100644
index 0000000000..ab18c6ae48
--- /dev/null
+++ b/dokka-runners/dokka-gradle-plugin/src/main/kotlin/engine/plugins/DokkaKotlinPlaygroundSamplesParameters.kt
@@ -0,0 +1,58 @@
+/*
+ * Copyright 2014-2025 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+package org.jetbrains.dokka.gradle.engine.plugins
+
+import kotlinx.serialization.json.buildJsonObject
+import org.gradle.api.provider.Property
+import org.gradle.api.tasks.Input
+import org.gradle.api.tasks.Optional
+import org.jetbrains.dokka.gradle.internal.InternalDokkaGradlePluginApi
+import org.jetbrains.dokka.gradle.internal.putIfNotNull
+import javax.inject.Inject
+
+/**
+ * Configuration for Dokka Kotlin Playground Samples Plugin.
+ *
+ * The Kotlin Playground Samples Plugin makes `@sample` code blocks interactive and runnable using [Kotlin Playground](https://github.com/JetBrains/kotlin-playground).
+ *
+ * Note: The Kotlin Playground Samples Plugin only works with Dokka's HTML format.
+ */
+abstract class DokkaKotlinPlaygroundSamplesParameters
+@InternalDokkaGradlePluginApi
+@Inject
+constructor(
+ name: String
+) : DokkaPluginParametersBaseSpec(
+ name,
+ DOKKA_KOTLIN_PLAYGROUND_SAMPLES_PLUGIN_FQN
+) {
+
+ /**
+ * URL to the Kotlin Playground JS script.
+ */
+ @get:Input
+ @get:Optional
+ abstract val kotlinPlaygroundScript: Property
+
+ /**
+ * URL to the Kotlin Playground server for running and compiling samples. Used by the Kotlin Playground script.
+ */
+ @get:Input
+ @get:Optional
+ abstract val kotlinPlaygroundServer: Property
+
+ override fun jsonEncode(): String {
+ return buildJsonObject {
+ putIfNotNull("kotlinPlaygroundScript", kotlinPlaygroundScript.orNull)
+ putIfNotNull("kotlinPlaygroundServer", kotlinPlaygroundServer.orNull)
+ }.toString()
+ }
+
+ companion object {
+ const val DOKKA_KOTLIN_PLAYGROUND_SAMPLES_PLUGIN_PARAMETERS_NAME = "kotlinPlaygroundSamples"
+ const val DOKKA_KOTLIN_PLAYGROUND_SAMPLES_PLUGIN_FQN =
+ "org.jetbrains.dokka.kotlinPlaygroundSamples.KotlinPlaygroundSamplesPlugin"
+ }
+}
diff --git a/dokka-runners/dokka-gradle-plugin/src/main/kotlin/formats/DokkaHtmlPlugin.kt b/dokka-runners/dokka-gradle-plugin/src/main/kotlin/formats/DokkaHtmlPlugin.kt
index bd44423329..ef81f39342 100644
--- a/dokka-runners/dokka-gradle-plugin/src/main/kotlin/formats/DokkaHtmlPlugin.kt
+++ b/dokka-runners/dokka-gradle-plugin/src/main/kotlin/formats/DokkaHtmlPlugin.kt
@@ -13,6 +13,8 @@ import org.gradle.kotlin.dsl.registerBinding
import org.gradle.kotlin.dsl.withType
import org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters
import org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters.Companion.DOKKA_HTML_PARAMETERS_NAME
+import org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters
+import org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters.Companion.DOKKA_KOTLIN_PLAYGROUND_SAMPLES_PLUGIN_PARAMETERS_NAME
import org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters
import org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters.Companion.DOKKA_VERSIONING_PLUGIN_PARAMETERS_NAME
import org.jetbrains.dokka.gradle.internal.InternalDokkaGradlePluginApi
@@ -37,6 +39,7 @@ constructor(
override fun DokkaFormatPluginContext.configure() {
registerDokkaBasePluginConfiguration()
registerDokkaVersioningPlugin()
+ registerDokkaKotlinPlaygroundSamplesPlugin()
configureHtmlUrlLogging()
configureModuleAggregation()
}
@@ -67,6 +70,17 @@ constructor(
}
}
+ /** Register Dokka Kotlin Playground Samples Plugin */
+ private fun DokkaFormatPluginContext.registerDokkaKotlinPlaygroundSamplesPlugin() {
+ with(dokkaExtension.pluginsConfiguration) {
+ registerBinding(
+ DokkaKotlinPlaygroundSamplesParameters::class,
+ DokkaKotlinPlaygroundSamplesParameters::class
+ )
+ register(DOKKA_KOTLIN_PLAYGROUND_SAMPLES_PLUGIN_PARAMETERS_NAME)
+ }
+ }
+
/** Register a [LogHtmlPublicationLinkTask] task. */
private fun DokkaFormatPluginContext.configureHtmlUrlLogging() {
val indexHtmlFile = dokkaTasks.generatePublication
diff --git a/dokka-runners/dokka-gradle-plugin/src/test/kotlin/engine/plugins/DokkaKotlinPlaygroundSamplesParametersTest.kt b/dokka-runners/dokka-gradle-plugin/src/test/kotlin/engine/plugins/DokkaKotlinPlaygroundSamplesParametersTest.kt
new file mode 100644
index 0000000000..9b8b5ed651
--- /dev/null
+++ b/dokka-runners/dokka-gradle-plugin/src/test/kotlin/engine/plugins/DokkaKotlinPlaygroundSamplesParametersTest.kt
@@ -0,0 +1,125 @@
+/*
+ * Copyright 2014-2025 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+package org.jetbrains.dokka.gradle.engine.plugins
+
+import io.kotest.assertions.json.shouldEqualJson
+import io.kotest.core.spec.style.FunSpec
+import io.kotest.core.test.TestScope
+import io.kotest.matchers.nulls.shouldBeNull
+import io.kotest.matchers.shouldBe
+import org.gradle.kotlin.dsl.apply
+import org.gradle.kotlin.dsl.create
+import org.gradle.kotlin.dsl.getByType
+import org.gradle.testfixtures.ProjectBuilder
+import org.jetbrains.dokka.gradle.DokkaExtension
+import org.jetbrains.dokka.gradle.DokkaPlugin
+import org.jetbrains.dokka.gradle.utils.enableV2Plugin
+
+class DokkaKotlinPlaygroundSamplesParametersTest : FunSpec({
+
+ val project = ProjectBuilder.builder().build()
+ .enableV2Plugin()
+ project.plugins.apply(type = DokkaPlugin::class)
+
+ fun TestScope.kotlinPlaygroundSamplesPluginParams(
+ configure: DokkaKotlinPlaygroundSamplesParameters.() -> Unit = {}
+ ): DokkaKotlinPlaygroundSamplesParameters =
+ project.extensions
+ .getByType()
+ .pluginsConfiguration
+ .create(testCase.name.testName, configure)
+
+
+ context("when no params are provided") {
+ val params = kotlinPlaygroundSamplesPluginParams {
+ // no configuration
+ }
+
+ test("kotlinPlaygroundScript is null") {
+ params.kotlinPlaygroundScript.orNull.shouldBeNull()
+ }
+
+ test("kotlinPlaygroundServer is null") {
+ params.kotlinPlaygroundServer.orNull.shouldBeNull()
+ }
+
+ test("JSON is empty") {
+ params.jsonEncode() shouldEqualJson "{}"
+ }
+ }
+
+ context("when only kotlinPlaygroundScript is provided") {
+ val kotlinPlaygroundScriptUrl = "https://customKotlinPlaygroundScript/example.js"
+ val params = kotlinPlaygroundSamplesPluginParams {
+ kotlinPlaygroundScript.set(kotlinPlaygroundScriptUrl)
+ }
+
+ test("kotlinPlaygroundScript is correct") {
+ params.kotlinPlaygroundScript.orNull shouldBe kotlinPlaygroundScriptUrl
+ }
+
+ test("kotlinPlaygroundServer is null") {
+ params.kotlinPlaygroundServer.orNull.shouldBeNull()
+ }
+
+ test("expect correct JSON") {
+ params.jsonEncode() shouldEqualJson """
+ |{
+ | "kotlinPlaygroundScript": "$kotlinPlaygroundScriptUrl"
+ |}
+ """.trimMargin()
+ }
+ }
+
+ context("when only kotlinPlaygroundServer is provided") {
+ val kotlinPlaygroundServerUrl = "https://kotlinPlaygroundServer.example.com/"
+ val params = kotlinPlaygroundSamplesPluginParams {
+ kotlinPlaygroundServer.set(kotlinPlaygroundServerUrl)
+ }
+
+ test("kotlinPlaygroundScript is null") {
+ params.kotlinPlaygroundScript.orNull.shouldBeNull()
+ }
+
+ test("kotlinPlaygroundServer is correct") {
+ params.kotlinPlaygroundServer.orNull shouldBe kotlinPlaygroundServerUrl
+ }
+
+ test("expect correct JSON") {
+ params.jsonEncode() shouldEqualJson """
+ |{
+ | "kotlinPlaygroundServer": "$kotlinPlaygroundServerUrl"
+ |}
+ """.trimMargin()
+ }
+ }
+
+ context("when both kotlinPlaygroundScript and kotlinPlaygroundServer are provided") {
+ val kotlinPlaygroundScriptUrl = "https://customKotlinPlaygroundScript/example.js"
+ val kotlinPlaygroundServerUrl = "https://kotlinPlaygroundServer.example.com/"
+
+ val params = kotlinPlaygroundSamplesPluginParams {
+ kotlinPlaygroundScript.set(kotlinPlaygroundScriptUrl)
+ kotlinPlaygroundServer.set(kotlinPlaygroundServerUrl)
+ }
+
+ test("kotlinPlaygroundScript is correct") {
+ params.kotlinPlaygroundScript.orNull shouldBe kotlinPlaygroundScriptUrl
+ }
+
+ test("kotlinPlaygroundServer is correct") {
+ params.kotlinPlaygroundServer.orNull shouldBe kotlinPlaygroundServerUrl
+ }
+
+ test("expect correct JSON") {
+ params.jsonEncode() shouldEqualJson """
+ |{
+ | "kotlinPlaygroundScript": "$kotlinPlaygroundScriptUrl",
+ | "kotlinPlaygroundServer": "$kotlinPlaygroundServerUrl"
+ |}
+ """.trimMargin()
+ }
+ }
+})
diff --git a/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/root-project.txt b/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/root-project.txt
index 1a4669182d..0cea598581 100644
--- a/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/root-project.txt
+++ b/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/root-project.txt
@@ -1236,6 +1236,9 @@ fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`html`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("html", configure)
+fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`kotlinPlaygroundSamples`(configure: Action): Unit =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.configure("kotlinPlaygroundSamples", configure)
+
fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`versioning`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("versioning", configure)
@@ -1263,6 +1266,9 @@ fun org.jetbrains.dokka.gradle.DokkaExtension.`pluginsConfiguration`(configure:
fun org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters.`ext`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
+fun org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters.`ext`(configure: Action): Unit =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
+
fun org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters.`ext`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
@@ -1296,6 +1302,9 @@ val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`html`: org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("html") as org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters
+val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`kotlinPlaygroundSamples`: org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters get() =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("kotlinPlaygroundSamples") as org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters
+
val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`versioning`: org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("versioning") as org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters
@@ -1407,5 +1416,8 @@ val org.jetbrains.dokka.gradle.DokkaExtension.`pluginsConfiguration`: org.gradle
val org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
+val org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
+
val org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
diff --git a/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/subproject-goodbye.txt b/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/subproject-goodbye.txt
index 1a4669182d..0cea598581 100644
--- a/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/subproject-goodbye.txt
+++ b/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/subproject-goodbye.txt
@@ -1236,6 +1236,9 @@ fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`html`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("html", configure)
+fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`kotlinPlaygroundSamples`(configure: Action): Unit =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.configure("kotlinPlaygroundSamples", configure)
+
fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`versioning`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("versioning", configure)
@@ -1263,6 +1266,9 @@ fun org.jetbrains.dokka.gradle.DokkaExtension.`pluginsConfiguration`(configure:
fun org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters.`ext`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
+fun org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters.`ext`(configure: Action): Unit =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
+
fun org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters.`ext`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
@@ -1296,6 +1302,9 @@ val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`html`: org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("html") as org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters
+val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`kotlinPlaygroundSamples`: org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters get() =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("kotlinPlaygroundSamples") as org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters
+
val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`versioning`: org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("versioning") as org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters
@@ -1407,5 +1416,8 @@ val org.jetbrains.dokka.gradle.DokkaExtension.`pluginsConfiguration`: org.gradle
val org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
+val org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
+
val org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
diff --git a/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/subproject-hello.txt b/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/subproject-hello.txt
index 1a4669182d..0cea598581 100644
--- a/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/subproject-hello.txt
+++ b/dokka-runners/dokka-gradle-plugin/src/testFunctional/resources/KotlinDslAccessorsTest/subproject-hello.txt
@@ -1236,6 +1236,9 @@ fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`html`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("html", configure)
+fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`kotlinPlaygroundSamples`(configure: Action): Unit =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.configure("kotlinPlaygroundSamples", configure)
+
fun org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`versioning`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("versioning", configure)
@@ -1263,6 +1266,9 @@ fun org.jetbrains.dokka.gradle.DokkaExtension.`pluginsConfiguration`(configure:
fun org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters.`ext`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
+fun org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters.`ext`(configure: Action): Unit =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
+
fun org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters.`ext`(configure: Action): Unit =
(this as org.gradle.api.plugins.ExtensionAware).extensions.configure("ext", configure)
@@ -1296,6 +1302,9 @@ val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`html`: org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("html") as org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters
+val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`kotlinPlaygroundSamples`: org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters get() =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("kotlinPlaygroundSamples") as org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters
+
val org.gradle.api.ExtensiblePolymorphicDomainObjectContainer.`versioning`: org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("versioning") as org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters
@@ -1407,5 +1416,8 @@ val org.jetbrains.dokka.gradle.DokkaExtension.`pluginsConfiguration`: org.gradle
val org.jetbrains.dokka.gradle.engine.plugins.DokkaHtmlPluginParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
+val org.jetbrains.dokka.gradle.engine.plugins.DokkaKotlinPlaygroundSamplesParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
+ (this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
+
val org.jetbrains.dokka.gradle.engine.plugins.DokkaVersioningPluginParameters.`ext`: org.gradle.api.plugins.ExtraPropertiesExtension get() =
(this as org.gradle.api.plugins.ExtensionAware).extensions.getByName("ext") as org.gradle.api.plugins.ExtraPropertiesExtension
diff --git a/dokka-subprojects/README.md b/dokka-subprojects/README.md
index 855a008303..4cc120b46f 100644
--- a/dokka-subprojects/README.md
+++ b/dokka-subprojects/README.md
@@ -11,6 +11,7 @@
| [plugin-javadoc](plugin-javadoc) | Provides the ability to generate documentation in Javadoc format. |
| [plugin-jekyll](plugin-jekyll) | Provides the ability to generate documentation in `Jekyll Flavoured Markdown` format. |
| [plugin-kotlin-as-java](plugin-kotlin-as-java) | Renders all Kotlin signatures as Java signatures. |
+| [plugin-kotlin-playground-samples](plugin-kotlin-playground-samples) | Makes @sample code blocks interactive and runnable using Kotlin Playground. |
| [plugin-mathjax](plugin-mathjax) | Allows rendering mathematics in the web pages. |
| [plugin-templating](plugin-templating) | An internal Dokka plugin that handles HTML template processing. |
| [plugin-versioning](plugin-versioning) | Provides the ability to host documentation for multiple versions of your library/application. |
diff --git a/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/renderers/html/HtmlRenderer.kt b/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/renderers/html/HtmlRenderer.kt
index ee5f22ec0d..cd0a388704 100644
--- a/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/renderers/html/HtmlRenderer.kt
+++ b/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/renderers/html/HtmlRenderer.kt
@@ -870,12 +870,7 @@ public open class HtmlRenderer(
code.children.forEach { buildContentNode(it, pageContext) }
}
}
- /*
- Disable copy button on samples as:
- - it is useless
- - it overflows with playground's run button
- */
- if (!code.style.contains(ContentStyle.RunnableSample)) copyButton()
+ copyButton()
}
}
diff --git a/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/transformers/pages/DefaultSamplesTransformer.kt b/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/transformers/pages/DefaultSamplesTransformer.kt
index aadab12f5c..f115819e0c 100644
--- a/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/transformers/pages/DefaultSamplesTransformer.kt
+++ b/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/transformers/pages/DefaultSamplesTransformer.kt
@@ -17,8 +17,6 @@ import org.jetbrains.dokka.transformers.pages.PageTransformer
import org.jetbrains.dokka.analysis.kotlin.sample.SampleAnalysisEnvironmentCreator
import org.jetbrains.dokka.analysis.kotlin.sample.SampleSnippet
-internal const val KOTLIN_PLAYGROUND_SCRIPT = "https://unpkg.com/kotlin-playground@1/dist/playground.min.js"
-
/**
* It works ONLY with a content model from the base plugin.
*/
@@ -44,69 +42,33 @@ internal class DefaultSamplesTransformer(val context: DokkaContext) : PageTransf
}
page.modified(
- content = newContent,
- embeddedResources = page.embeddedResources + KOTLIN_PLAYGROUND_SCRIPT
+ content = newContent
)
}
}
}
+
private fun ContentNode.addSample(
contentPage: ContentPage,
fqLink: String,
sample: SampleSnippet,
): ContentNode {
- val node = contentCode(contentPage.content.sourceSets, contentPage.dri, createSampleBody(sample.imports, sample.body), "kotlin")
+ val node = contentCode(contentPage.content.sourceSets, contentPage.dri, sample.body, "kotlin")
return dfs(fqLink, node)
}
- /**
- * If both [imports] and [body] are present, it should return
- *
- * ```kotlin
- * import com.example.One
- * import com.example.Two
- *
- * fun main() {
- * //sampleStart
- * println("Sample function body")
- * println("Another line")
- * //sampleEnd
- * }
- * ```
- *
- * If [imports] are empty, it should return:
- *
- * ```kotlin
- * fun main() {
- * //sampleStart
- * println("Sample function body")
- * println("Another line")
- * //sampleEnd
- * }
- * ```
- *
- * Notice the presence/absence of the new line before the body.
- */
- private fun createSampleBody(imports: List, body: String) =
- // takeIf {} is needed so that joinToString's postfix is not added for empty lists,
- // and trimMargin() then removes the first empty line
- """ |${imports.takeIf { it.isNotEmpty() }?.joinToString(separator = "\n", postfix = "\n") { "import $it" } ?: "" }
- |fun main() {
- | //sampleStart
- | $body
- | //sampleEnd
- |}""".trimMargin()
-
private fun ContentNode.dfs(fqName: String, node: ContentCodeBlock): ContentNode {
return when (this) {
is ContentHeader -> copy(children.map { it.dfs(fqName, node) })
is ContentDivergentGroup -> @Suppress("UNCHECKED_CAST") copy(children.map {
it.dfs(fqName, node)
} as List)
+
is ContentDivergentInstance -> copy(
before.let { it?.dfs(fqName, node) },
divergent.dfs(fqName, node),
after.let { it?.dfs(fqName, node) })
+
is ContentCodeBlock -> copy(children.map { it.dfs(fqName, node) })
is ContentCodeInline -> copy(children.map { it.dfs(fqName, node) })
is ContentDRILink -> copy(children.map { it.dfs(fqName, node) })
@@ -143,7 +105,7 @@ internal class DefaultSamplesTransformer(val context: DokkaContext) : PageTransf
language = language,
dci = DCI(dri, ContentKind.Sample),
sourceSets = sourceSets,
- style = styles + ContentStyle.RunnableSample + TextStyle.Monospace,
+ style = styles + TextStyle.Monospace,
extra = extra
)
}
diff --git a/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/translators/documentables/DescriptionSections.kt b/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/translators/documentables/DescriptionSections.kt
index 91f9bdd70b..17e1623c38 100644
--- a/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/translators/documentables/DescriptionSections.kt
+++ b/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/translators/documentables/DescriptionSections.kt
@@ -230,7 +230,7 @@ internal fun PageContentBuilder.DocumentableContentBuilder.samplesSectionContent
group(
sourceSets = setOf(sourceSet),
kind = ContentKind.Sample,
- styles = setOf(TextStyle.Monospace, ContentStyle.RunnableSample),
+ styles = setOf(TextStyle.Monospace),
) {
samples.filter { it.value.isEmpty() || sourceSet in it.value }
.forEach { text(text = it.key, sourceSets = setOf(sourceSet)) }
diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/scripts/platform-content-handler.js b/dokka-subprojects/plugin-base/src/main/resources/dokka/scripts/platform-content-handler.js
index 44e7231137..ada75ff34e 100644
--- a/dokka-subprojects/plugin-base/src/main/resources/dokka/scripts/platform-content-handler.js
+++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/scripts/platform-content-handler.js
@@ -9,12 +9,8 @@ filteringContext = {
}
let highlightedAnchor;
let topNavbarOffset;
-let instances = [];
let sourcesetNotification;
-const samplesDarkThemeName = 'darcula'
-const samplesLightThemeName = 'idea'
-
window.addEventListener('load', () => {
document.querySelectorAll("div[data-platform-hinted]")
.forEach(elem => elem.addEventListener('click', (event) => togglePlatformDependent(event, elem)))
@@ -37,7 +33,11 @@ const darkModeSwitch = () => {
const osDarkSchemePreferred = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
const darkModeEnabled = storage ? JSON.parse(storage) : osDarkSchemePreferred
const element = document.getElementById("theme-toggle-button")
- initPlayground(darkModeEnabled ? samplesDarkThemeName : samplesLightThemeName)
+
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
+ }
element.addEventListener('click', () => {
const enabledClasses = document.getElementsByTagName("html")[0].classList
@@ -45,52 +45,14 @@ const darkModeSwitch = () => {
//if previously we had saved dark theme then we set it to light as this is what we save in local storage
const darkModeEnabled = enabledClasses.contains("theme-dark")
- if (darkModeEnabled) {
- initPlayground(samplesDarkThemeName)
- } else {
- initPlayground(samplesLightThemeName)
+ // Notify external scripts about changing dark mode, runnable samples plugin depends on this
+ if (window.onDarkModeChanged) {
+ window.onDarkModeChanged(darkModeEnabled)
}
safeLocalStorage.setItem(localStorageKey, JSON.stringify(darkModeEnabled))
})
}
-const initPlayground = (theme) => {
- if (!samplesAreEnabled()) return
- instances.forEach(instance => instance.destroy())
- instances = []
-
- // Manually tag code fragments as not processed by playground since we also manually destroy all of its instances
- document.querySelectorAll('code.runnablesample').forEach(node => {
- node.removeAttribute("data-kotlin-playground-initialized");
-
- if (node.parentNode) {
- node.parentNode.setAttribute("runnable-code-sample", "");
- }
- })
-
- KotlinPlayground('code.runnablesample', {
- getInstance: playgroundInstance => {
- instances.push(playgroundInstance)
- },
- theme: theme
- });
-}
-
-// We check if type is accessible from the current scope to determine if samples script is present
-// As an alternative we could extract this samples-specific script to new js file but then we would handle dark mode in 2 separate files which is not ideal
-const samplesAreEnabled = () => {
- try {
- if (typeof KotlinPlayground === 'undefined') {
- // KotlinPlayground is exported universally as a global variable or as a module
- // Due to possible interaction with other js scripts KotlinPlayground may not be accessible directly from `window`, so we need an additional check
- KotlinPlayground = exports.KotlinPlayground;
- }
- return typeof KotlinPlayground === 'function';
- } catch (e) {
- return false
- }
-}
-
// Hash change is needed in order to allow for linking inside the same page with anchors
// If this is not present user is forced to refresh the site in order to use an anchor
window.onhashchange = handleAnchor
@@ -278,16 +240,6 @@ function refreshFiltering() {
refreshFilterButtons()
refreshPlatformTabs()
refreshNoContentNotification()
- refreshPlaygroundSamples()
-}
-
-function refreshPlaygroundSamples() {
- document.querySelectorAll('code.runnablesample').forEach(node => {
- const playground = node.KotlinPlayground;
- /* Some samples may be hidden by filter, they have 0px height for visible code area
- * after rendering. Call this method for re-calculate code area height */
- playground && playground.view.codemirror.refresh();
- });
}
function refreshNoContentNotification() {
diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/styles/style.css b/dokka-subprojects/plugin-base/src/main/resources/dokka/styles/style.css
index a5762e4c27..1eee255ada 100644
--- a/dokka-subprojects/plugin-base/src/main/resources/dokka/styles/style.css
+++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/styles/style.css
@@ -452,7 +452,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o
font-size: 20px;
font-weight: 600;
}
-
-div.runnablesample {
- height: fit-content;
-}
diff --git a/dokka-subprojects/plugin-base/src/test/kotlin/content/samples/ContentForSamplesTest.kt b/dokka-subprojects/plugin-base/src/test/kotlin/content/samples/ContentForSamplesTest.kt
index be2a79ce21..12098852b1 100644
--- a/dokka-subprojects/plugin-base/src/test/kotlin/content/samples/ContentForSamplesTest.kt
+++ b/dokka-subprojects/plugin-base/src/test/kotlin/content/samples/ContentForSamplesTest.kt
@@ -6,16 +6,13 @@ package content.samples
import matchers.content.*
import org.jetbrains.dokka.base.testApi.testRunner.BaseAbstractTest
-import org.jetbrains.dokka.base.transformers.pages.KOTLIN_PLAYGROUND_SCRIPT
import org.jetbrains.dokka.model.DisplaySourceSet
import utils.TestOutputWriterPlugin
-import utils.assertContains
import utils.classSignature
import utils.findTestType
import java.nio.file.Paths
import kotlin.test.Test
import kotlin.test.assertEquals
-import kotlin.test.assertNotEquals
class ContentForSamplesTest : BaseAbstractTest() {
private val testDataDir = getTestDataDir("content/samples").toAbsolutePath()
@@ -78,7 +75,6 @@ class ContentForSamplesTest : BaseAbstractTest() {
) {
pagesTransformationStage = { module ->
val page = module.findTestType("test", "Foo")
- assertContains(page.embeddedResources, KOTLIN_PLAYGROUND_SCRIPT)
page.content.assertNode {
group {
header(1) { +"Foo" }
@@ -93,12 +89,7 @@ class ContentForSamplesTest : BaseAbstractTest() {
header(4) { +"Samples" }
group {
codeBlock {
- +"""|
- |fun main() {
- | //sampleStart
- | print("Hello")
- | //sampleEnd
- |}""".trimMargin()
+ +"""print("Hello")""".trimMargin()
}
}
}
@@ -106,9 +97,6 @@ class ContentForSamplesTest : BaseAbstractTest() {
skipAllNotMatching()
}
}
- renderingStage = { _, _ ->
- assertNotEquals(-1, writerPlugin.writer.contents["root/test/-foo/index.html"]?.indexOf(KOTLIN_PLAYGROUND_SCRIPT))
- }
}
}
@@ -142,7 +130,6 @@ class ContentForSamplesTest : BaseAbstractTest() {
) {
pagesTransformationStage = { module ->
val page = module.findTestType("pageMerger", "Parent")
- assertContains(page.embeddedResources, KOTLIN_PLAYGROUND_SCRIPT)
page.content.assertNode {
group {
header(1) { +"Parent" }
@@ -168,12 +155,7 @@ class ContentForSamplesTest : BaseAbstractTest() {
header(4) { +"Samples" }
group {
codeBlock {
- +"""|
- |fun main() {
- | //sampleStart
- | print("Hello")
- | //sampleEnd
- |}""".trimMargin()
+ +"""print("Hello")""".trimMargin()
}
check {
sourceSets.assertSourceSet("common")
diff --git a/dokka-subprojects/plugin-base/src/test/kotlin/linkableContent/LinkableContentTest.kt b/dokka-subprojects/plugin-base/src/test/kotlin/linkableContent/LinkableContentTest.kt
index f529a2b0c7..327f4a2a1f 100644
--- a/dokka-subprojects/plugin-base/src/test/kotlin/linkableContent/LinkableContentTest.kt
+++ b/dokka-subprojects/plugin-base/src/test/kotlin/linkableContent/LinkableContentTest.kt
@@ -211,16 +211,8 @@ class LinkableContentTest : BaseAbstractTest() {
.let { it as ContentCodeBlock }.children.single()
.let { it as ContentText }.text
assertEquals(
- """
- |import p2.${name}Class
- |import kotlin.collections.List
- |import kotlin.collections.Map
- |
- |fun main() {
- | //sampleStart
- | ${name}Class().printWithExclamation("Hi, $name")
- | //sampleEnd
- |}""".trimMargin(),
+ """${name}Class().printWithExclamation("Hi, $name")"""
+ .trimMargin(),
text
)
}
diff --git a/dokka-subprojects/plugin-kotlin-playground-samples/README.md b/dokka-subprojects/plugin-kotlin-playground-samples/README.md
new file mode 100644
index 0000000000..d4e726df32
--- /dev/null
+++ b/dokka-subprojects/plugin-kotlin-playground-samples/README.md
@@ -0,0 +1,69 @@
+# Kotlin Playground Samples Plugin
+
+Dokka plugin that makes @sample code blocks interactive and runnable using [Kotlin Playground](https://github.com/JetBrains/kotlin-playground).
+
+## Applying the plugin
+Plugin works out of the box without any additional configuration required.
+
+You can apply the Kotlin Playground Samples plugin the same way as other Dokka plugins:
+
+
+Kotlin
+
+```kotlin
+dependencies {
+ dokkaHtmlPlugin("org.jetbrains.dokka:kotlin-playground-samples-plugin")
+}
+```
+
+
+
+Groovy
+
+```groovy
+dependencies {
+ dokkaHtmlPlugin 'org.jetbrains.dokka:kotlin-playground-samples-plugin'
+}
+```
+
+
+
+Maven
+
+```xml
+
+ org.jetbrains.dokka
+ dokka-maven-plugin
+ ...
+
+
+
+ org.jetbrains.dokka
+ kotlin-playground-samples-plugin
+ 2.1.0
+
+
+
+
+```
+
+
+## Configuration (Optional)
+You can specify the Kotlin Playground JS script and the Kotlin Playground server. Otherwise, default values are used.
+
+| Option | Description |
+|--------------------------|----------------------------------------------------------------------------------------------------------|
+| `kotlinPlaygroundScript` | URL to the Kotlin Playground JS script. |
+| `kotlinPlaygroundServer` | URL to the Kotlin Playground server for running and compiling samples. Used by Kotlin Playground script. |
+
+### Configuration example using Dokka Gradle Plugin v2:
+```kotlin
+dokka {
+ pluginsConfiguration {
+ kotlinPlaygroundSamples {
+ kotlinPlaygroundScript = "https://customKotlinPlaygroundScript/example.js"
+ kotlinPlaygroundServer = "https://kotlinPlaygroundServer.example.com/"
+ }
+ }
+}
+```
diff --git a/dokka-subprojects/plugin-kotlin-playground-samples/api/plugin-kotlin-playground-samples.api b/dokka-subprojects/plugin-kotlin-playground-samples/api/plugin-kotlin-playground-samples.api
new file mode 100644
index 0000000000..6c99c18f13
--- /dev/null
+++ b/dokka-subprojects/plugin-kotlin-playground-samples/api/plugin-kotlin-playground-samples.api
@@ -0,0 +1,29 @@
+public final class org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration : org/jetbrains/dokka/plugability/ConfigurableBlock {
+ public static final field Companion Lorg/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration$Companion;
+ public static final field defaultKotlinPlaygroundScript Ljava/lang/String;
+ public fun ()V
+ public fun (Ljava/lang/String;Ljava/lang/String;)V
+ public synthetic fun (Ljava/lang/String;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
+ public final fun component1 ()Ljava/lang/String;
+ public final fun component2 ()Ljava/lang/String;
+ public final fun copy (Ljava/lang/String;Ljava/lang/String;)Lorg/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration;
+ public static synthetic fun copy$default (Lorg/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)Lorg/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration;
+ public fun equals (Ljava/lang/Object;)Z
+ public final fun getKotlinPlaygroundScript ()Ljava/lang/String;
+ public final fun getKotlinPlaygroundServer ()Ljava/lang/String;
+ public fun hashCode ()I
+ public final fun setKotlinPlaygroundScript (Ljava/lang/String;)V
+ public final fun setKotlinPlaygroundServer (Ljava/lang/String;)V
+ public fun toString ()Ljava/lang/String;
+}
+
+public final class org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration$Companion {
+}
+
+public final class org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesPlugin : org/jetbrains/dokka/plugability/DokkaPlugin {
+ public fun ()V
+ public final fun getKotlinPlaygroundSamplesScriptsInstaller ()Lorg/jetbrains/dokka/plugability/Extension;
+ public final fun getKotlinPlaygroundSamplesStylesInstaller ()Lorg/jetbrains/dokka/plugability/Extension;
+ public final fun getKotlinPlaygroundSamplesTransformer ()Lorg/jetbrains/dokka/plugability/Extension;
+}
+
diff --git a/dokka-subprojects/plugin-kotlin-playground-samples/build.gradle.kts b/dokka-subprojects/plugin-kotlin-playground-samples/build.gradle.kts
new file mode 100644
index 0000000000..fe3a1b09a9
--- /dev/null
+++ b/dokka-subprojects/plugin-kotlin-playground-samples/build.gradle.kts
@@ -0,0 +1,26 @@
+/*
+ * Copyright 2014-2025 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+import dokkabuild.overridePublicationArtifactId
+
+plugins {
+ id("dokkabuild.kotlin-jvm")
+ id("dokkabuild.publish-jvm")
+ id("dokkabuild.test-k2")
+}
+
+overridePublicationArtifactId("kotlin-playground-samples-plugin")
+
+dependencies {
+ compileOnly(projects.dokkaSubprojects.dokkaCore)
+ compileOnly(projects.dokkaSubprojects.analysisKotlinApi)
+
+ implementation(projects.dokkaSubprojects.pluginBase)
+
+ testImplementation(libs.kotlin.test)
+ testImplementation(projects.dokkaSubprojects.dokkaTestApi)
+ testImplementation(projects.dokkaSubprojects.pluginBaseTestUtils)
+ symbolsTestImplementation(project(path = ":dokka-subprojects:analysis-kotlin-symbols", configuration = "shadow"))
+ descriptorsTestImplementation(project(path = ":dokka-subprojects:analysis-kotlin-descriptors", configuration = "shadow"))
+}
diff --git a/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration.kt b/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration.kt
new file mode 100644
index 0000000000..94eb4a5c01
--- /dev/null
+++ b/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesConfiguration.kt
@@ -0,0 +1,17 @@
+/*
+ * Copyright 2014-2025 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+package org.jetbrains.dokka.kotlinPlaygroundSamples
+
+import org.jetbrains.dokka.plugability.ConfigurableBlock
+
+public data class KotlinPlaygroundSamplesConfiguration(
+ var kotlinPlaygroundScript: String = defaultKotlinPlaygroundScript,
+ var kotlinPlaygroundServer: String? = null
+) : ConfigurableBlock {
+ public companion object {
+ public const val defaultKotlinPlaygroundScript: String =
+ "https://unpkg.com/kotlin-playground@1/dist/playground.min.js"
+ }
+}
diff --git a/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesInstaller.kt b/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesInstaller.kt
new file mode 100644
index 0000000000..f700455a93
--- /dev/null
+++ b/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesInstaller.kt
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2014-2025 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+package org.jetbrains.dokka.kotlinPlaygroundSamples
+
+import org.jetbrains.dokka.pages.*
+import org.jetbrains.dokka.plugability.DokkaContext
+import org.jetbrains.dokka.plugability.configuration
+import org.jetbrains.dokka.transformers.pages.PageTransformer
+
+internal class KotlinPlaygroundSamplesScriptsInstaller(private val dokkaContext: DokkaContext) : PageTransformer {
+
+ private val kotlinPlaygroundServer =
+ configuration(dokkaContext)?.kotlinPlaygroundServer
+
+ private val scriptsPages = listOf(
+ "scripts/kotlin-playground-samples.js"
+ )
+
+ override fun invoke(input: RootPageNode): RootPageNode =
+ input.let { root ->
+ if (dokkaContext.configuration.delayTemplateSubstitution) root
+ else {
+ if (kotlinPlaygroundServer == null) {
+ root.modified(children = input.children + scriptsPages.toRenderSpecificResourcePage())
+ } else {
+ val modifiedScript = modifyScript()
+
+ root.modified(children = input.children + scriptsPages.map {
+ RendererSpecificResourcePage(
+ it,
+ emptyList(),
+ RenderingStrategy.Write(modifiedScript)
+ )
+ })
+ }
+ }
+ }
+
+ private fun modifyScript(): String {
+ val scriptContent = javaClass.getResource("/dokka/${scriptsPages.first()}")
+ ?.readText()
+ ?: throw IllegalStateException("Script /dokka/${scriptsPages.first()} not found in resources")
+
+ return scriptContent.replace(
+ "const kotlinPlaygroundServer = null",
+ "const kotlinPlaygroundServer = \"$kotlinPlaygroundServer\""
+ )
+ }
+}
+
+internal class KotlinPlaygroundSamplesStylesInstaller(private val dokkaContext: DokkaContext) : PageTransformer {
+ private val stylesPages = listOf(
+ "styles/kotlin-playground-samples.css"
+ )
+
+ override fun invoke(input: RootPageNode): RootPageNode =
+ input.let { root ->
+ if (dokkaContext.configuration.delayTemplateSubstitution) root
+ else root.modified(children = input.children + stylesPages.toRenderSpecificResourcePage())
+ }
+}
+
+private fun List.toRenderSpecificResourcePage(): List =
+ map { RendererSpecificResourcePage(it, emptyList(), RenderingStrategy.Copy("/dokka/$it")) }
diff --git a/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesPlugin.kt b/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesPlugin.kt
new file mode 100644
index 0000000000..a754cfd86f
--- /dev/null
+++ b/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesPlugin.kt
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2014-2025 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+package org.jetbrains.dokka.kotlinPlaygroundSamples
+
+import org.jetbrains.dokka.CoreExtensions
+import org.jetbrains.dokka.base.DokkaBase
+import org.jetbrains.dokka.plugability.DokkaPlugin
+import org.jetbrains.dokka.plugability.PluginApiPreviewAcknowledgement
+import org.jetbrains.dokka.plugability.DokkaPluginApiPreview
+import org.jetbrains.dokka.plugability.Extension
+import org.jetbrains.dokka.transformers.pages.PageTransformer
+
+public class KotlinPlaygroundSamplesPlugin : DokkaPlugin() {
+
+ private val dokkaBase by lazy { plugin() }
+
+ public val kotlinPlaygroundSamplesTransformer: Extension by extending {
+ CoreExtensions.pageTransformer providing ::KotlinPlaygroundSamplesTransformer override dokkaBase.defaultSamplesTransformer
+ }
+
+ public val kotlinPlaygroundSamplesScriptsInstaller: Extension by extending {
+ dokkaBase.htmlPreprocessors providing ::KotlinPlaygroundSamplesScriptsInstaller order {
+ after(dokkaBase.scriptsInstaller)
+ before(dokkaBase.customResourceInstaller)
+ }
+ }
+
+ public val kotlinPlaygroundSamplesStylesInstaller: Extension by extending {
+ dokkaBase.htmlPreprocessors providing ::KotlinPlaygroundSamplesStylesInstaller order {
+ after(dokkaBase.stylesInstaller)
+ before(dokkaBase.customResourceInstaller)
+ }
+ }
+
+ @DokkaPluginApiPreview
+ override fun pluginApiPreviewAcknowledgement(): PluginApiPreviewAcknowledgement = PluginApiPreviewAcknowledgement
+}
diff --git a/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesTransformer.kt b/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesTransformer.kt
new file mode 100644
index 0000000000..6e7582bb0c
--- /dev/null
+++ b/dokka-subprojects/plugin-kotlin-playground-samples/src/main/kotlin/org/jetbrains/dokka/kotlinPlaygroundSamples/KotlinPlaygroundSamplesTransformer.kt
@@ -0,0 +1,168 @@
+/*
+ * Copyright 2014-2025 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
+package org.jetbrains.dokka.kotlinPlaygroundSamples
+
+import org.jetbrains.dokka.analysis.kotlin.KotlinAnalysisPlugin
+import org.jetbrains.dokka.analysis.kotlin.sample.SampleAnalysisEnvironmentCreator
+import org.jetbrains.dokka.analysis.kotlin.sample.SampleSnippet
+import org.jetbrains.dokka.links.DRI
+import org.jetbrains.dokka.model.DisplaySourceSet
+import org.jetbrains.dokka.model.doc.Sample
+import org.jetbrains.dokka.model.properties.PropertyContainer
+import org.jetbrains.dokka.pages.*
+import org.jetbrains.dokka.plugability.DokkaContext
+import org.jetbrains.dokka.plugability.plugin
+import org.jetbrains.dokka.plugability.querySingle
+import org.jetbrains.dokka.plugability.configuration
+import org.jetbrains.dokka.transformers.pages.PageTransformer
+
+/**
+ * Replaces DefaultSamplesTransformer, adds runnable samples functionality with Kotlin Playground.
+ */
+internal class KotlinPlaygroundSamplesTransformer(val context: DokkaContext) : PageTransformer {
+
+ private val sampleAnalysisEnvironment: SampleAnalysisEnvironmentCreator =
+ context.plugin().querySingle { sampleAnalysisEnvironmentCreator }
+
+ private val config = configuration(context)
+
+ private val kotlinPlaygroundScript = config?.kotlinPlaygroundScript
+ ?: KotlinPlaygroundSamplesConfiguration.defaultKotlinPlaygroundScript
+
+ private val kotlinPlaygroundSamplesResources = listOf(
+ "scripts/kotlin-playground-samples.js",
+ "styles/kotlin-playground-samples.css"
+ )
+
+ override fun invoke(input: RootPageNode): RootPageNode {
+ return sampleAnalysisEnvironment.use {
+ input.transformContentPagesTree { page ->
+ val samples = (page as? WithDocumentables)?.documentables?.flatMap {
+ it.documentation.entries.flatMap { entry ->
+ entry.value.children.filterIsInstance().map { entry.key to it }
+ }
+ } ?: return@transformContentPagesTree page
+
+ val newContent = samples.fold(page.content) { acc, (sampleSourceSet, sample) ->
+ resolveSample(sampleSourceSet, sample.name)
+ ?.let {
+ acc.addSample(page, sample.name, it)
+ } ?: acc
+ }
+
+ page.modified(
+ content = newContent,
+ embeddedResources = page.embeddedResources + kotlinPlaygroundScript + kotlinPlaygroundSamplesResources
+ )
+ }
+ }
+ }
+
+ private fun ContentNode.addSample(
+ contentPage: ContentPage,
+ fqLink: String,
+ sample: SampleSnippet,
+ ): ContentNode {
+ val node = contentCode(
+ contentPage.content.sourceSets,
+ contentPage.dri,
+ createSampleBody(sample.imports, sample.body),
+ "kotlin"
+ )
+ return dfs(fqLink, node)
+ }
+
+ /**
+ * If both [imports] and [body] are present, it should return
+ *
+ * ```kotlin
+ * import com.example.One
+ * import com.example.Two
+ *
+ * fun main() {
+ * //sampleStart
+ * println("Sample function body")
+ * println("Another line")
+ * //sampleEnd
+ * }
+ * ```
+ *
+ * If [imports] are empty, it should return:
+ *
+ * ```kotlin
+ * fun main() {
+ * //sampleStart
+ * println("Sample function body")
+ * println("Another line")
+ * //sampleEnd
+ * }
+ * ```
+ *
+ * Notice the presence/absence of the new line before the body.
+ */
+ private fun createSampleBody(imports: List, body: String) =
+ // takeIf {} is needed so that joinToString's postfix is not added for empty lists,
+ // and trimMargin() then removes the first empty line
+ """ |${
+ imports.takeIf { it.isNotEmpty() }?.joinToString(separator = "\n", postfix = "\n") { "import $it" } ?: ""
+ }
+ |fun main() {
+ | //sampleStart
+ | $body
+ | //sampleEnd
+ |}""".trimMargin()
+
+ private fun ContentNode.dfs(fqName: String, node: ContentCodeBlock): ContentNode {
+ return when (this) {
+ is ContentHeader -> copy(children.map { it.dfs(fqName, node) })
+ is ContentDivergentGroup -> @Suppress("UNCHECKED_CAST") copy(children.map {
+ it.dfs(fqName, node)
+ } as List)
+
+ is ContentDivergentInstance -> copy(
+ before.let { it?.dfs(fqName, node) },
+ divergent.dfs(fqName, node),
+ after.let { it?.dfs(fqName, node) })
+
+ is ContentCodeBlock -> copy(children.map { it.dfs(fqName, node) })
+ is ContentCodeInline -> copy(children.map { it.dfs(fqName, node) })
+ is ContentDRILink -> copy(children.map { it.dfs(fqName, node) })
+ is ContentResolvedLink -> copy(children.map { it.dfs(fqName, node) })
+ is ContentEmbeddedResource -> copy(children.map { it.dfs(fqName, node) })
+ is ContentTable -> copy(children = children.map { it.dfs(fqName, node) as ContentGroup })
+ is ContentList -> copy(children.map { it.dfs(fqName, node) })
+ is ContentGroup -> copy(children.map { it.dfs(fqName, node) })
+ is PlatformHintedContent -> copy(inner.dfs(fqName, node))
+ is ContentText -> if (text == fqName) node else this
+ is ContentBreakLine -> this
+ else -> this.also { context.logger.error("Could not recognize $this ContentNode in SamplesTransformer") }
+ }
+ }
+
+ private fun contentCode(
+ sourceSets: Set,
+ dri: Set,
+ content: String,
+ language: String,
+ styles: Set