From 9ec0e8738d86661d66e19c15b3df2a83a7ec89f1 Mon Sep 17 00:00:00 2001 From: glemaitre Date: Mon, 27 Nov 2023 09:51:46 +0000 Subject: [PATCH] [ci skip] Fix typo (#754) Co-authored-by: ArturoAmorQ 7b5aa266489bd6eb0e00aafc315e46452e5f62df --- _sources/python_scripts/metrics_sol_02.py | 4 +-- _static/scripts/pydata-sphinx-theme.js | 2 +- _static/scripts/pydata-sphinx-theme.js.map | 2 +- _static/styles/pydata-sphinx-theme.css | 2 +- _static/styles/pydata-sphinx-theme.css.map | 2 +- _static/webpack-macros.html | 18 +++++------ appendix/acknowledgement.html | 26 +++++++++------- appendix/datasets_intro.html | 26 +++++++++------- appendix/glossary.html | 26 +++++++++------- appendix/notebook_timings.html | 26 +++++++++------- appendix/toc_redirect.html | 26 +++++++++------- concluding_remarks.html | 26 +++++++++------- concluding_remarks_video.html | 26 +++++++++------- ensemble/bagging_slides.html | 26 +++++++++------- ensemble/boosting_slides.html | 26 +++++++++------- ensemble/ensemble_boosting_index.html | 26 +++++++++------- ensemble/ensemble_bootstrap_index.html | 26 +++++++++------- ensemble/ensemble_hyperparameters_index.html | 26 +++++++++------- ensemble/ensemble_module_intro.html | 26 +++++++++------- ensemble/ensemble_module_take_away.html | 26 +++++++++------- ensemble/ensemble_quiz_m6_01.html | 26 +++++++++------- ensemble/ensemble_quiz_m6_02.html | 26 +++++++++------- ensemble/ensemble_quiz_m6_03.html | 26 +++++++++------- ensemble/ensemble_wrap_up_quiz.html | 26 +++++++++------- .../cross_validation_baseline_index.html | 26 +++++++++------- .../cross_validation_choices_index.html | 26 +++++++++------- evaluation/cross_validation_nested_index.html | 26 +++++++++------- evaluation/evaluation_module_intro.html | 26 +++++++++------- evaluation/evaluation_module_take_away.html | 26 +++++++++------- evaluation/evaluation_quiz_m7_01.html | 26 +++++++++------- evaluation/evaluation_quiz_m7_02.html | 26 +++++++++------- evaluation/evaluation_quiz_m7_03.html | 26 +++++++++------- evaluation/evaluation_quiz_m7_04.html | 26 +++++++++------- evaluation/evaluation_quiz_m7_05.html | 26 +++++++++------- evaluation/evaluation_wrap_up_quiz.html | 26 +++++++++------- evaluation/metrics_classification_index.html | 26 +++++++++------- evaluation/metrics_regression_index.html | 26 +++++++++------- .../feature_selection_limitation_index.html | 26 +++++++++------- .../feature_selection_module_intro.html | 26 +++++++++------- .../feature_selection_module_take_away.html | 26 +++++++++------- feature_selection/feature_selection_quiz.html | 26 +++++++++------- genindex.html | 26 +++++++++------- index.html | 26 +++++++++------- interpretation/interpretation_quiz.html | 26 +++++++++------- .../linear_models_intuitions_index.html | 26 +++++++++------- linear_models/linear_models_module_intro.html | 26 +++++++++------- .../linear_models_module_take_away.html | 26 +++++++++------- .../linear_models_non_linear_index.html | 26 +++++++++------- linear_models/linear_models_quiz_m4_01.html | 26 +++++++++------- linear_models/linear_models_quiz_m4_02.html | 26 +++++++++------- linear_models/linear_models_quiz_m4_03.html | 26 +++++++++------- .../linear_models_regularization_index.html | 26 +++++++++------- linear_models/linear_models_slides.html | 26 +++++++++------- linear_models/linear_models_wrap_up_quiz.html | 26 +++++++++------- .../regularized_linear_models_slides.html | 26 +++++++++------- ml_concepts/quiz_intro_01.html | 26 +++++++++------- ml_concepts/slides.html | 26 +++++++++------- overfit/bias_vs_variance_quiz_m2_03.html | 26 +++++++++------- overfit/bias_vs_variance_slides.html | 26 +++++++++------- ...learning_validation_curves_quiz_m2_02.html | 26 +++++++++------- .../learning_validation_curves_slides.html | 26 +++++++++------- overfit/overfit_bias_variance_index.html | 26 +++++++++------- overfit/overfit_module_intro.html | 26 +++++++++------- ...verfit_overfitting_underfitting_index.html | 26 +++++++++------- overfit/overfit_take_away.html | 26 +++++++++------- ...rfit_validation_learning_curves_index.html | 26 +++++++++------- overfit/overfit_wrap_up_quiz.html | 26 +++++++++------- ...erfitting_vs_under_fitting_quiz_m2_01.html | 26 +++++++++------- .../overfitting_vs_under_fitting_slides.html | 26 +++++++++------- .../01_tabular_data_exploration_index.html | 26 +++++++++------- ...1_tabular_data_exploration_quiz_m1_01.html | 26 +++++++++------- .../02_numerical_pipeline_index.html | 26 +++++++++------- .../02_numerical_pipeline_quiz_m1_02.html | 26 +++++++++------- ...rical_pipeline_video_cross_validation.html | 26 +++++++++------- .../03_categorical_pipeline_index.html | 26 +++++++++------- .../03_categorical_pipeline_quiz_m1_03.html | 26 +++++++++------- ...egorical_pipeline_visualization_video.html | 26 +++++++++------- .../predictive_modeling_module_intro.html | 26 +++++++++------- .../predictive_modeling_module_take_away.html | 26 +++++++++------- .../wrap_up_quiz.html | 26 +++++++++------- .../01_tabular_data_exploration.html | 26 +++++++++------- .../01_tabular_data_exploration_ex_01.html | 26 +++++++++------- .../01_tabular_data_exploration_sol_01.html | 26 +++++++++------- ...2_numerical_pipeline_cross_validation.html | 26 +++++++++------- .../02_numerical_pipeline_ex_00.html | 26 +++++++++------- .../02_numerical_pipeline_ex_01.html | 26 +++++++++------- .../02_numerical_pipeline_hands_on.html | 26 +++++++++------- .../02_numerical_pipeline_introduction.html | 26 +++++++++------- .../02_numerical_pipeline_scaling.html | 26 +++++++++------- .../02_numerical_pipeline_sol_00.html | 26 +++++++++------- .../02_numerical_pipeline_sol_01.html | 26 +++++++++------- python_scripts/03_categorical_pipeline.html | 26 +++++++++------- ...tegorical_pipeline_column_transformer.html | 26 +++++++++------- .../03_categorical_pipeline_ex_01.html | 26 +++++++++------- .../03_categorical_pipeline_ex_02.html | 26 +++++++++------- .../03_categorical_pipeline_sol_01.html | 26 +++++++++------- .../03_categorical_pipeline_sol_02.html | 26 +++++++++------- ...03_categorical_pipeline_visualization.html | 26 +++++++++------- python_scripts/cross_validation_baseline.html | 26 +++++++++------- python_scripts/cross_validation_ex_01.html | 26 +++++++++------- python_scripts/cross_validation_ex_02.html | 26 +++++++++------- python_scripts/cross_validation_grouping.html | 26 +++++++++------- .../cross_validation_learning_curve.html | 26 +++++++++------- python_scripts/cross_validation_nested.html | 26 +++++++++------- python_scripts/cross_validation_sol_01.html | 26 +++++++++------- python_scripts/cross_validation_sol_02.html | 26 +++++++++------- .../cross_validation_stratification.html | 26 +++++++++------- python_scripts/cross_validation_time.html | 26 +++++++++------- .../cross_validation_train_test.html | 26 +++++++++------- .../cross_validation_validation_curve.html | 26 +++++++++------- python_scripts/datasets_adult_census.html | 26 +++++++++------- python_scripts/datasets_ames_housing.html | 26 +++++++++------- python_scripts/datasets_bike_rides.html | 26 +++++++++------- .../datasets_blood_transfusion.html | 26 +++++++++------- .../datasets_california_housing.html | 26 +++++++++------- python_scripts/dev_features_importance.html | 26 +++++++++------- python_scripts/ensemble_adaboost.html | 26 +++++++++------- python_scripts/ensemble_bagging.html | 26 +++++++++------- python_scripts/ensemble_ex_01.html | 26 +++++++++------- python_scripts/ensemble_ex_02.html | 26 +++++++++------- python_scripts/ensemble_ex_03.html | 26 +++++++++------- python_scripts/ensemble_ex_04.html | 26 +++++++++------- .../ensemble_gradient_boosting.html | 26 +++++++++------- .../ensemble_hist_gradient_boosting.html | 26 +++++++++------- python_scripts/ensemble_hyperparameters.html | 26 +++++++++------- python_scripts/ensemble_introduction.html | 26 +++++++++------- python_scripts/ensemble_random_forest.html | 26 +++++++++------- python_scripts/ensemble_sol_01.html | 26 +++++++++------- python_scripts/ensemble_sol_02.html | 26 +++++++++------- python_scripts/ensemble_sol_03.html | 26 +++++++++------- python_scripts/ensemble_sol_04.html | 26 +++++++++------- python_scripts/feature_selection_ex_01.html | 26 +++++++++------- .../feature_selection_introduction.html | 26 +++++++++------- .../feature_selection_limitation_model.html | 26 +++++++++------- python_scripts/feature_selection_sol_01.html | 26 +++++++++------- python_scripts/linear_models_ex_01.html | 26 +++++++++------- python_scripts/linear_models_ex_02.html | 26 +++++++++------- python_scripts/linear_models_ex_03.html | 26 +++++++++------- python_scripts/linear_models_ex_04.html | 26 +++++++++------- ...ls_feature_engineering_classification.html | 26 +++++++++------- .../linear_models_regularization.html | 26 +++++++++------- python_scripts/linear_models_sol_01.html | 26 +++++++++------- python_scripts/linear_models_sol_02.html | 26 +++++++++------- python_scripts/linear_models_sol_03.html | 26 +++++++++------- python_scripts/linear_models_sol_04.html | 26 +++++++++------- .../linear_regression_in_sklearn.html | 26 +++++++++------- .../linear_regression_non_linear_link.html | 26 +++++++++------- .../linear_regression_without_sklearn.html | 26 +++++++++------- python_scripts/logistic_regression.html | 26 +++++++++------- python_scripts/metrics_classification.html | 26 +++++++++------- python_scripts/metrics_ex_01.html | 26 +++++++++------- python_scripts/metrics_ex_02.html | 26 +++++++++------- python_scripts/metrics_regression.html | 26 +++++++++------- python_scripts/metrics_sol_01.html | 26 +++++++++------- python_scripts/metrics_sol_02.html | 30 +++++++++++-------- python_scripts/parameter_tuning_ex_02.html | 26 +++++++++------- python_scripts/parameter_tuning_ex_03.html | 26 +++++++++------- .../parameter_tuning_grid_search.html | 26 +++++++++------- python_scripts/parameter_tuning_manual.html | 26 +++++++++------- python_scripts/parameter_tuning_nested.html | 26 +++++++++------- .../parameter_tuning_parallel_plot.html | 26 +++++++++------- .../parameter_tuning_randomized_search.html | 26 +++++++++------- python_scripts/parameter_tuning_sol_02.html | 26 +++++++++------- python_scripts/parameter_tuning_sol_03.html | 26 +++++++++------- python_scripts/trees_classification.html | 26 +++++++++------- python_scripts/trees_dataset.html | 26 +++++++++------- python_scripts/trees_ex_01.html | 26 +++++++++------- python_scripts/trees_ex_02.html | 26 +++++++++------- python_scripts/trees_hyperparameters.html | 26 +++++++++------- python_scripts/trees_regression.html | 26 +++++++++------- python_scripts/trees_sol_01.html | 26 +++++++++------- python_scripts/trees_sol_02.html | 26 +++++++++------- search.html | 26 +++++++++------- toc.html | 26 +++++++++------- trees/slides.html | 26 +++++++++------- trees/trees_classification_index.html | 26 +++++++++------- trees/trees_hyperparameters_index.html | 26 +++++++++------- trees/trees_intuitions_index.html | 26 +++++++++------- trees/trees_module_intro.html | 26 +++++++++------- trees/trees_module_take_away.html | 26 +++++++++------- trees/trees_quiz_m5_01.html | 26 +++++++++------- trees/trees_quiz_m5_02.html | 26 +++++++++------- trees/trees_quiz_m5_03.html | 26 +++++++++------- trees/trees_quiz_m5_04.html | 26 +++++++++------- trees/trees_regression_index.html | 26 +++++++++------- trees/trees_wrap_up_quiz.html | 26 +++++++++------- tuning/parameter_tuning_automated_index.html | 26 +++++++++------- ...parameter_tuning_automated_quiz_m3_02.html | 26 +++++++++------- tuning/parameter_tuning_manual_index.html | 26 +++++++++------- .../parameter_tuning_manual_quiz_m3_01.html | 26 +++++++++------- tuning/parameter_tuning_module_intro.html | 26 +++++++++------- tuning/parameter_tuning_module_take_away.html | 26 +++++++++------- .../parameter_tuning_parallel_plot_video.html | 26 +++++++++------- tuning/parameter_tuning_wrap_up_quiz.html | 26 +++++++++------- 194 files changed, 2837 insertions(+), 2085 deletions(-) diff --git a/_sources/python_scripts/metrics_sol_02.py b/_sources/python_scripts/metrics_sol_02.py index bbd5118ee..f6695e74c 100644 --- a/_sources/python_scripts/metrics_sol_02.py +++ b/_sources/python_scripts/metrics_sol_02.py @@ -124,8 +124,8 @@ # %% [markdown] tags=["solution"] # Even if the score distributions overlap due to the presence of outliers in the -# dataset, it is true that the average MSE is lower when `loss="squared_error`, -# whereas the average MAE is lower when `loss="absolute_error` as expected. +# dataset, it is true that the average MSE is lower when `loss="squared_error"`, +# whereas the average MAE is lower when `loss="absolute_error"` as expected. # Indeed, the choice of a loss function is made depending on the evaluation # metric that we want to optimize for a given use case. # diff --git a/_static/scripts/pydata-sphinx-theme.js b/_static/scripts/pydata-sphinx-theme.js index 85ae6bad9..3eda41b6c 100644 --- a/_static/scripts/pydata-sphinx-theme.js +++ b/_static/scripts/pydata-sphinx-theme.js @@ -1,2 +1,2 @@ -(()=>{"use strict";var e,t,n,r,o={803:(e,t,n)=>{n.d(t,{Gu:()=>r,qu:()=>o});const r=e=>"string"==typeof e&&/^[v\d]/.test(e)&&a.test(e),o=(e,t,n)=>{h(n);const r=((e,t)=>{const n=c(e),r=c(t),o=n.pop(),a=r.pop(),d=l(n,r);return 0!==d?d:o&&a?l(o.split("."),a.split(".")):o||a?o?-1:1:0})(e,t);return u[n].includes(r)},a=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,c=e=>{if("string"!=typeof e)throw new TypeError("Invalid argument expected string");const t=e.match(a);if(!t)throw new Error(`Invalid argument not valid semver ('${e}' received)`);return t.shift(),t},d=e=>"*"===e||"x"===e||"X"===e,i=e=>{const t=parseInt(e,10);return isNaN(t)?e:t},s=(e,t)=>{if(d(e)||d(t))return 0;const[n,r]=((e,t)=>typeof e!=typeof t?[String(e),String(t)]:[e,t])(i(e),i(t));return n>r?1:n{for(let n=0;n":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1]},m=Object.keys(u),h=e=>{if("string"!=typeof e)throw new TypeError("Invalid operator type, expected string but got "+typeof e);if(-1===m.indexOf(e))throw new Error(`Invalid operator, expected one of ${m.join("|")}`)}},375:(e,t,n)=>{function r(e){"loading"!=document.readyState?e():document.addEventListener("DOMContentLoaded",e)}n.d(t,{A:()=>r})},937:(e,t,n)=>{n.a(e,(async(e,t)=>{try{var r=n(375),o=n(803),a=window.matchMedia("(prefers-color-scheme: dark)");function l(e){document.documentElement.dataset.theme=a.matches?"dark":"light"}function u(e){"light"!==e&&"dark"!==e&&"auto"!==e&&(console.error(`Got invalid theme mode: ${e}. Resetting to auto.`),e="auto");var t=a.matches?"dark":"light";document.documentElement.dataset.mode=e;var n="auto"==e?t:e;document.documentElement.dataset.theme=n,document.querySelectorAll(".dropdown-menu").forEach((e=>{"dark"===n?e.classList.add("dropdown-menu-dark"):e.classList.remove("dropdown-menu-dark")})),localStorage.setItem("mode",e),localStorage.setItem("theme",n),console.log(`[PST]: Changed to ${e} mode using the ${n} theme.`),a.onchange="auto"==e?l:""}function m(){const e=document.documentElement.dataset.defaultMode||"auto",t=localStorage.getItem("mode")||e;var n,r;u(((r=(n=a.matches?["auto","light","dark"]:["auto","dark","light"]).indexOf(t)+1)===n.length&&(r=0),n[r]))}function h(){u(document.documentElement.dataset.mode),document.querySelectorAll(".theme-switch-button").forEach((e=>{e.addEventListener("click",m)}))}function p(){window.addEventListener("activate.bs.scrollspy",(function(){document.querySelectorAll(".bd-toc-nav a").forEach((e=>{e.parentElement.classList.remove("active")})),document.querySelectorAll(".bd-toc-nav a.active").forEach((e=>{e.parentElement.classList.add("active")}))}))}function f(){if(!document.querySelector(".bd-docs-nav"))return;var e=document.querySelector("div.bd-sidebar");let t=parseInt(sessionStorage.getItem("sidebar-scroll-top"),10);if(isNaN(t)){var n=document.querySelector(".bd-docs-nav").querySelectorAll(".active");if(n.length>0){var r=n[n.length-1],o=r.getBoundingClientRect().y-e.getBoundingClientRect().y;if(r.getBoundingClientRect().y>.5*window.innerHeight){let t=.25;e.scrollTop=o-e.clientHeight*t,console.log("[PST]: Scrolled sidebar using last active link...")}}}else e.scrollTop=t,console.log("[PST]: Scrolled sidebar using stored browser position...");window.addEventListener("beforeunload",(()=>{sessionStorage.setItem("sidebar-scroll-top",e.scrollTop)}))}var c=()=>{let e=document.querySelectorAll("form.bd-search");return e.length?(1==e.length?e[0]:document.querySelector("div:not(.search-button__search-container) > form.bd-search")).querySelector("input"):void 0},d=()=>{let e=c(),t=document.querySelector(".search-button__wrapper");e===t.querySelector("input")&&t.classList.toggle("show"),document.activeElement===e?e.blur():(e.focus(),e.select(),e.scrollIntoView({block:"center"}))},i=e=>{var t="";return void 0!==e.userAgentData&&null!=e.userAgentData?t=e.userAgentData.platform:void 0!==e.platform&&(t=e.platform),/mac.?os/.test(t.toLowerCase())};async function v(e){e.preventDefault();let t=`${DOCUMENTATION_OPTIONS.pagename}.html`,n=e.currentTarget.getAttribute("href"),r=n.replace(t,"");try{(await fetch(n,{method:"HEAD"})).ok?location.href=n:location.href=r}catch(e){location.href=r}}async function g(e){try{var t=new URL(e)}catch(n){if(!(n instanceof TypeError))throw n;{const n=await fetch(window.location.origin,{method:"HEAD"});t=new URL(e,n.url)}}const n=await fetch(t);return await n.json()}function y(e,t){const n=`${DOCUMENTATION_OPTIONS.pagename}.html`;t.forEach((e=>{e.dataset.activeVersionName="",e.dataset.activeVersion=""}));const r=(e=e.map((e=>(e.match=e.version==DOCUMENTATION_OPTIONS.theme_switcher_version_match,e.preferred=e.preferred||!1,"name"in e||(e.name=e.version),e)))).map((e=>e.preferred&&e.match)).some(Boolean);var o=!1;e.forEach((e=>{const a=document.createElement("a");a.setAttribute("class","dropdown-item list-group-item list-group-item-action py-1"),a.setAttribute("href",`${e.url}${n}`),a.setAttribute("role","option");const c=document.createElement("span");c.textContent=`${e.name}`,a.appendChild(c),a.dataset.versionName=e.name,a.dataset.version=e.version;let d=r&&e.preferred,i=!r&&!o&&e.match;(d||i)&&(a.classList.add("active"),t.forEach((t=>{t.innerText=e.name,t.dataset.activeVersionName=e.name,t.dataset.activeVersion=e.version})),o=!0),document.querySelectorAll(".version-switcher__menu").forEach((e=>{let t=a.cloneNode(!0);t.onclick=v,e.append(t)}))}))}function w(e){var t=DOCUMENTATION_OPTIONS.VERSION,n=e.filter((e=>e.preferred));if(1!==n.length){const e=0==n.length?"No":"Multiple";return void console.log(`[PST] ${e} versions marked "preferred" found in versions JSON, ignoring.`)}const r=n[0].version,a=n[0].url,c=(0,o.Gu)(t)&&(0,o.Gu)(r);if(c&&(0,o.qu)(t,r,"="))return;var d=document.createElement("div");const i=document.createElement("div"),s=document.createElement("div"),l=document.createElement("strong"),u=document.createElement("a");d.classList="bd-header-version-warning container-fluid",i.classList="bd-header-announcement__content",s.classList="sidebar-message",u.classList="sd-btn sd-btn-danger sd-shadow-sm sd-text-wrap font-weight-bold ms-3 my-1 align-baseline",u.href=`${a}${DOCUMENTATION_OPTIONS.pagename}.html`,u.innerText="Switch to stable version",u.onclick=v,s.innerText="This is documentation for ";const m=t.includes("dev")||t.includes("rc")||t.includes("pre"),h=c&&(0,o.qu)(t,r,">");m||h?l.innerText="an unstable development version":c&&(0,o.qu)(t,r,"<")?l.innerText=`an old version (${t})`:l.innerText=t?`version ${t}`:"an unknown version",d.appendChild(i),i.appendChild(s),s.appendChild(l),s.appendChild(document.createTextNode(".")),s.appendChild(u),document.body.prepend(d)}function b(){new MutationObserver(((e,t)=>{e.forEach((e=>{0!==e.addedNodes.length&&void 0!==e.addedNodes[0].data&&-1!=e.addedNodes[0].data.search("Inserted RTD Footer")&&e.addedNodes.forEach((e=>{document.getElementById("rtd-footer-container").append(e)}))}))})).observe(document.body,{childList:!0})}var s=document.querySelectorAll(".version-switcher__button");const E=s.length>0,_=DOCUMENTATION_OPTIONS.hasOwnProperty("theme_switcher_json_url"),S=DOCUMENTATION_OPTIONS.show_version_warning_banner;if(_&&(E||S)){const T=await g(DOCUMENTATION_OPTIONS.theme_switcher_json_url);y(T,s),S&&w(T)}(0,r.A)(h),(0,r.A)(f),(0,r.A)(p),(0,r.A)((()=>{(()=>{let e=document.querySelectorAll(".search-button__kbd-shortcut");i(window.navigator)&&e.forEach((e=>e.querySelector("kbd.kbd-shortcut__modifier").innerText="⌘"))})(),window.addEventListener("keydown",(e=>{let t=c();e.shiftKey||e.altKey||(i?!e.metaKey||e.ctrlKey:e.metaKey||!e.ctrlKey)||!/k/i.test(e.key)?document.activeElement===t&&/Escape/i.test(e.key)&&d():(e.preventDefault(),d())}),!0),document.querySelectorAll(".search-button__button").forEach((e=>{e.onclick=d}));let e=document.querySelector(".search-button__overlay");e&&(e.onclick=d)})),(0,r.A)(b),t()}catch(O){t(O)}}),1)}},a={};function c(e){var t=a[e];if(void 0!==t)return t.exports;var n=a[e]={exports:{}};return o[e](n,n.exports,c),n.exports}e="function"==typeof Symbol?Symbol("webpack queues"):"__webpack_queues__",t="function"==typeof Symbol?Symbol("webpack exports"):"__webpack_exports__",n="function"==typeof Symbol?Symbol("webpack error"):"__webpack_error__",r=e=>{e&&e.d<1&&(e.d=1,e.forEach((e=>e.r--)),e.forEach((e=>e.r--?e.r++:e())))},c.a=(o,a,c)=>{var d;c&&((d=[]).d=-1);var i,s,l,u=new Set,m=o.exports,h=new Promise(((e,t)=>{l=t,s=e}));h[t]=m,h[e]=e=>(d&&e(d),u.forEach(e),h.catch((e=>{}))),o.exports=h,a((o=>{var a;i=(o=>o.map((o=>{if(null!==o&&"object"==typeof o){if(o[e])return o;if(o.then){var a=[];a.d=0,o.then((e=>{c[t]=e,r(a)}),(e=>{c[n]=e,r(a)}));var c={};return c[e]=e=>e(a),c}}var d={};return d[e]=e=>{},d[t]=o,d})))(o);var c=()=>i.map((e=>{if(e[n])throw e[n];return e[t]})),s=new Promise((t=>{(a=()=>t(c)).r=0;var n=e=>e!==d&&!u.has(e)&&(u.add(e),e&&!e.d&&(a.r++,e.push(a)));i.map((t=>t[e](n)))}));return a.r?s:c()}),(e=>(e?l(h[n]=e):s(m),r(d)))),d&&d.d<0&&(d.d=0)},c.d=(e,t)=>{for(var n in t)c.o(t,n)&&!c.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c(937)})(); +(()=>{"use strict";var e,t,n,o,r={803:(e,t,n)=>{n.d(t,{Gu:()=>o,qu:()=>r});const o=e=>"string"==typeof e&&/^[v\d]/.test(e)&&a.test(e),r=(e,t,n)=>{h(n);const o=((e,t)=>{const n=c(e),o=c(t),r=n.pop(),a=o.pop(),i=l(n,o);return 0!==i?i:r&&a?l(r.split("."),a.split(".")):r||a?r?-1:1:0})(e,t);return u[n].includes(o)},a=/^[v^~<>=]*?(\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+)(?:\.([x*]|\d+))?(?:-([\da-z\-]+(?:\.[\da-z\-]+)*))?(?:\+[\da-z\-]+(?:\.[\da-z\-]+)*)?)?)?$/i,c=e=>{if("string"!=typeof e)throw new TypeError("Invalid argument expected string");const t=e.match(a);if(!t)throw new Error(`Invalid argument not valid semver ('${e}' received)`);return t.shift(),t},i=e=>"*"===e||"x"===e||"X"===e,d=e=>{const t=parseInt(e,10);return isNaN(t)?e:t},s=(e,t)=>{if(i(e)||i(t))return 0;const[n,o]=((e,t)=>typeof e!=typeof t?[String(e),String(t)]:[e,t])(d(e),d(t));return n>o?1:n{for(let n=0;n":[1],">=":[0,1],"=":[0],"<=":[-1,0],"<":[-1]},m=Object.keys(u),h=e=>{if("string"!=typeof e)throw new TypeError("Invalid operator type, expected string but got "+typeof e);if(-1===m.indexOf(e))throw new Error(`Invalid operator, expected one of ${m.join("|")}`)}},375:(e,t,n)=>{function o(e){"loading"!=document.readyState?e():document.addEventListener("DOMContentLoaded",e)}n.d(t,{A:()=>o})},937:(e,t,n)=>{n.a(e,(async(e,t)=>{try{var o=n(375),r=n(803),a=window.matchMedia("(prefers-color-scheme: dark)");function l(e){document.documentElement.dataset.theme=a.matches?"dark":"light"}function u(e){"light"!==e&&"dark"!==e&&"auto"!==e&&(console.error(`Got invalid theme mode: ${e}. Resetting to auto.`),e="auto");var t=a.matches?"dark":"light";document.documentElement.dataset.mode=e;var n="auto"==e?t:e;document.documentElement.dataset.theme=n,document.querySelectorAll(".dropdown-menu").forEach((e=>{"dark"===n?e.classList.add("dropdown-menu-dark"):e.classList.remove("dropdown-menu-dark")})),localStorage.setItem("mode",e),localStorage.setItem("theme",n),console.log(`[PST]: Changed to ${e} mode using the ${n} theme.`),a.onchange="auto"==e?l:""}function m(){const e=document.documentElement.dataset.defaultMode||"auto",t=localStorage.getItem("mode")||e;var n,o;u(((o=(n=a.matches?["auto","light","dark"]:["auto","dark","light"]).indexOf(t)+1)===n.length&&(o=0),n[o]))}function h(){u(document.documentElement.dataset.mode),document.querySelectorAll(".theme-switch-button").forEach((e=>{e.addEventListener("click",m)}))}function p(){window.addEventListener("activate.bs.scrollspy",(function(){document.querySelectorAll(".bd-toc-nav a").forEach((e=>{e.parentElement.classList.remove("active")})),document.querySelectorAll(".bd-toc-nav a.active").forEach((e=>{e.parentElement.classList.add("active")}))}))}function f(){if(!document.querySelector(".bd-docs-nav"))return;var e=document.querySelector("div.bd-sidebar");let t=parseInt(sessionStorage.getItem("sidebar-scroll-top"),10);if(isNaN(t)){var n=document.querySelector(".bd-docs-nav").querySelectorAll(".active");if(n.length>0){var o=n[n.length-1],r=o.getBoundingClientRect().y-e.getBoundingClientRect().y;if(o.getBoundingClientRect().y>.5*window.innerHeight){let t=.25;e.scrollTop=r-e.clientHeight*t,console.log("[PST]: Scrolled sidebar using last active link...")}}}else e.scrollTop=t,console.log("[PST]: Scrolled sidebar using stored browser position...");window.addEventListener("beforeunload",(()=>{sessionStorage.setItem("sidebar-scroll-top",e.scrollTop)}))}var c=()=>{let e=document.querySelectorAll("form.bd-search");return e.length?(1==e.length?e[0]:document.querySelector("div:not(.search-button__search-container) > form.bd-search")).querySelector("input"):void 0},i=()=>{let e=c(),t=document.querySelector(".search-button__wrapper");e===t.querySelector("input")&&t.classList.toggle("show"),document.activeElement===e?e.blur():(e.focus(),e.select(),e.scrollIntoView({block:"center"}))},d=0===navigator.platform.indexOf("Mac")||"iPhone"===navigator.platform;async function v(e){e.preventDefault();let t=`${DOCUMENTATION_OPTIONS.pagename}.html`,n=e.currentTarget.getAttribute("href"),o=n.replace(t,"");try{(await fetch(n,{method:"HEAD"})).ok?location.href=n:location.href=o}catch(e){location.href=o}}async function g(e){try{var t=new URL(e)}catch(n){if(!(n instanceof TypeError))throw n;{const n=await fetch(window.location.origin,{method:"HEAD"});t=new URL(e,n.url)}}const n=await fetch(t);return await n.json()}function y(e,t){const n=`${DOCUMENTATION_OPTIONS.pagename}.html`;t.forEach((e=>{e.dataset.activeVersionName="",e.dataset.activeVersion=""}));const o=(e=e.map((e=>(e.match=e.version==DOCUMENTATION_OPTIONS.theme_switcher_version_match,e.preferred=e.preferred||!1,"name"in e||(e.name=e.version),e)))).map((e=>e.preferred&&e.match)).some(Boolean);var r=!1;e.forEach((e=>{const a=document.createElement("a");a.setAttribute("class","dropdown-item list-group-item list-group-item-action py-1"),a.setAttribute("href",`${e.url}${n}`),a.setAttribute("role","option");const c=document.createElement("span");c.textContent=`${e.name}`,a.appendChild(c),a.dataset.versionName=e.name,a.dataset.version=e.version;let i=o&&e.preferred,d=!o&&!r&&e.match;(i||d)&&(a.classList.add("active"),t.forEach((t=>{t.innerText=e.name,t.dataset.activeVersionName=e.name,t.dataset.activeVersion=e.version})),r=!0),document.querySelectorAll(".version-switcher__menu").forEach((e=>{let t=a.cloneNode(!0);t.onclick=v,e.append(t)}))}))}function b(e){var t=DOCUMENTATION_OPTIONS.VERSION,n=e.filter((e=>e.preferred));if(1!==n.length){const e=0==n.length?"No":"Multiple";return void console.log(`[PST] ${e} versions marked "preferred" found in versions JSON, ignoring.`)}const o=n[0].version,a=n[0].url,c=(0,r.Gu)(t)&&(0,r.Gu)(o);if(c&&(0,r.qu)(t,o,"="))return;var i=document.createElement("div");const d=document.createElement("div"),s=document.createElement("div"),l=document.createElement("strong"),u=document.createElement("a");i.classList="bd-header-version-warning container-fluid",d.classList="bd-header-announcement__content",s.classList="sidebar-message",u.classList="sd-btn sd-btn-danger sd-shadow-sm sd-text-wrap font-weight-bold ms-3 my-1 align-baseline",u.href=`${a}${DOCUMENTATION_OPTIONS.pagename}.html`,u.innerText="Switch to stable version",u.onclick=v,s.innerText="This is documentation for ";const m=t.includes("dev")||t.includes("rc")||t.includes("pre"),h=c&&(0,r.qu)(t,o,">");m||h?l.innerText="an unstable development version":c&&(0,r.qu)(t,o,"<")?l.innerText=`an old version (${t})`:l.innerText=t?`version ${t}`:"an unknown version",i.appendChild(d),d.appendChild(s),s.appendChild(l),s.appendChild(document.createTextNode(".")),s.appendChild(u),document.body.prepend(i)}function w(){new MutationObserver(((e,t)=>{e.forEach((e=>{0!==e.addedNodes.length&&void 0!==e.addedNodes[0].data&&-1!=e.addedNodes[0].data.search("Inserted RTD Footer")&&e.addedNodes.forEach((e=>{document.getElementById("rtd-footer-container").append(e)}))}))})).observe(document.body,{childList:!0})}var s=document.querySelectorAll(".version-switcher__button");const E=s.length>0,_=DOCUMENTATION_OPTIONS.hasOwnProperty("theme_switcher_json_url"),S=DOCUMENTATION_OPTIONS.show_version_warning_banner;if(_&&(E||S)){const T=await g(DOCUMENTATION_OPTIONS.theme_switcher_json_url);y(T,s),S&&b(T)}(0,o.A)(h),(0,o.A)(f),(0,o.A)(p),(0,o.A)((()=>{(()=>{let e=document.querySelectorAll(".search-button__kbd-shortcut");d&&e.forEach((e=>e.querySelector("kbd.kbd-shortcut__modifier").innerText="⌘"))})(),window.addEventListener("keydown",(e=>{let t=c();e.shiftKey||e.altKey||(d?!e.metaKey||e.ctrlKey:e.metaKey||!e.ctrlKey)||!/k/i.test(e.key)?document.activeElement===t&&/Escape/i.test(e.key)&&i():(e.preventDefault(),i())}),!0),document.querySelectorAll(".search-button__button").forEach((e=>{e.onclick=i}));let e=document.querySelector(".search-button__overlay");e&&(e.onclick=i)})),(0,o.A)(w),t()}catch(O){t(O)}}),1)}},a={};function c(e){var t=a[e];if(void 0!==t)return t.exports;var n=a[e]={exports:{}};return r[e](n,n.exports,c),n.exports}e="function"==typeof Symbol?Symbol("webpack queues"):"__webpack_queues__",t="function"==typeof Symbol?Symbol("webpack exports"):"__webpack_exports__",n="function"==typeof Symbol?Symbol("webpack error"):"__webpack_error__",o=e=>{e&&e.d<1&&(e.d=1,e.forEach((e=>e.r--)),e.forEach((e=>e.r--?e.r++:e())))},c.a=(r,a,c)=>{var i;c&&((i=[]).d=-1);var d,s,l,u=new Set,m=r.exports,h=new Promise(((e,t)=>{l=t,s=e}));h[t]=m,h[e]=e=>(i&&e(i),u.forEach(e),h.catch((e=>{}))),r.exports=h,a((r=>{var a;d=(r=>r.map((r=>{if(null!==r&&"object"==typeof r){if(r[e])return r;if(r.then){var a=[];a.d=0,r.then((e=>{c[t]=e,o(a)}),(e=>{c[n]=e,o(a)}));var c={};return c[e]=e=>e(a),c}}var i={};return i[e]=e=>{},i[t]=r,i})))(r);var c=()=>d.map((e=>{if(e[n])throw e[n];return e[t]})),s=new Promise((t=>{(a=()=>t(c)).r=0;var n=e=>e!==i&&!u.has(e)&&(u.add(e),e&&!e.d&&(a.r++,e.push(a)));d.map((t=>t[e](n)))}));return a.r?s:c()}),(e=>(e?l(h[n]=e):s(m),o(i)))),i&&i.d<0&&(i.d=0)},c.d=(e,t)=>{for(var n in t)c.o(t,n)&&!c.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),c(937)})(); //# sourceMappingURL=pydata-sphinx-theme.js.map \ No newline at end of file diff --git a/_static/scripts/pydata-sphinx-theme.js.map b/_static/scripts/pydata-sphinx-theme.js.map index 51965aa2d..dee8da201 100644 --- a/_static/scripts/pydata-sphinx-theme.js.map +++ b/_static/scripts/pydata-sphinx-theme.js.map @@ -1 +1 @@ -{"version":3,"file":"scripts/pydata-sphinx-theme.js","mappings":"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","sources":["webpack://pydata_sphinx_theme/webpack/runtime/async module","webpack://pydata_sphinx_theme/./node_modules/compare-versions/lib/esm/index.js","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/scripts/mixin.js","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js","webpack://pydata_sphinx_theme/webpack/bootstrap","webpack://pydata_sphinx_theme/webpack/runtime/define property getters","webpack://pydata_sphinx_theme/webpack/runtime/hasOwnProperty shorthand","webpack://pydata_sphinx_theme/webpack/startup"],"sourcesContent":["var webpackQueues = typeof Symbol === \"function\" ? Symbol(\"webpack queues\") : \"__webpack_queues__\";\nvar webpackExports = typeof Symbol === \"function\" ? Symbol(\"webpack exports\") : \"__webpack_exports__\";\nvar webpackError = typeof Symbol === \"function\" ? Symbol(\"webpack error\") : \"__webpack_error__\";\nvar resolveQueue = (queue) => {\n\tif(queue && queue.d < 1) {\n\t\tqueue.d = 1;\n\t\tqueue.forEach((fn) => (fn.r--));\n\t\tqueue.forEach((fn) => (fn.r-- ? fn.r++ : fn()));\n\t}\n}\nvar wrapDeps = (deps) => (deps.map((dep) => {\n\tif(dep !== null && typeof dep === \"object\") {\n\t\tif(dep[webpackQueues]) return dep;\n\t\tif(dep.then) {\n\t\t\tvar queue = [];\n\t\t\tqueue.d = 0;\n\t\t\tdep.then((r) => {\n\t\t\t\tobj[webpackExports] = r;\n\t\t\t\tresolveQueue(queue);\n\t\t\t}, (e) => {\n\t\t\t\tobj[webpackError] = e;\n\t\t\t\tresolveQueue(queue);\n\t\t\t});\n\t\t\tvar obj = {};\n\t\t\tobj[webpackQueues] = (fn) => (fn(queue));\n\t\t\treturn obj;\n\t\t}\n\t}\n\tvar ret = {};\n\tret[webpackQueues] = x => {};\n\tret[webpackExports] = dep;\n\treturn ret;\n}));\n__webpack_require__.a = (module, body, hasAwait) => {\n\tvar queue;\n\thasAwait && ((queue = []).d = -1);\n\tvar depQueues = new Set();\n\tvar exports = module.exports;\n\tvar currentDeps;\n\tvar outerResolve;\n\tvar reject;\n\tvar promise = new Promise((resolve, rej) => {\n\t\treject = rej;\n\t\touterResolve = resolve;\n\t});\n\tpromise[webpackExports] = exports;\n\tpromise[webpackQueues] = (fn) => (queue && fn(queue), depQueues.forEach(fn), promise[\"catch\"](x => {}));\n\tmodule.exports = promise;\n\tbody((deps) => {\n\t\tcurrentDeps = wrapDeps(deps);\n\t\tvar fn;\n\t\tvar getResult = () => (currentDeps.map((d) => {\n\t\t\tif(d[webpackError]) throw d[webpackError];\n\t\t\treturn d[webpackExports];\n\t\t}))\n\t\tvar promise = new Promise((resolve) => {\n\t\t\tfn = () => (resolve(getResult));\n\t\t\tfn.r = 0;\n\t\t\tvar fnQueue = (q) => (q !== queue && !depQueues.has(q) && (depQueues.add(q), q && !q.d && (fn.r++, q.push(fn))));\n\t\t\tcurrentDeps.map((dep) => (dep[webpackQueues](fnQueue)));\n\t\t});\n\t\treturn fn.r ? promise : getResult();\n\t}, (err) => ((err ? reject(promise[webpackError] = err) : outerResolve(exports)), resolveQueue(queue)));\n\tqueue && queue.d < 0 && (queue.d = 0);\n};","/**\n * Compare [semver](https://semver.org/) version strings to find greater, equal or lesser.\n * This library supports the full semver specification, including comparing versions with different number of digits like `1.0.0`, `1.0`, `1`, and pre-release versions like `1.0.0-alpha`.\n * @param v1 - First version to compare\n * @param v2 - Second version to compare\n * @returns Numeric value compatible with the [Array.sort(fn) interface](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#Parameters).\n */\nexport const compareVersions = (v1, v2) => {\n // validate input and split into segments\n const n1 = validateAndParse(v1);\n const n2 = validateAndParse(v2);\n // pop off the patch\n const p1 = n1.pop();\n const p2 = n2.pop();\n // validate numbers\n const r = compareSegments(n1, n2);\n if (r !== 0)\n return r;\n // validate pre-release\n if (p1 && p2) {\n return compareSegments(p1.split('.'), p2.split('.'));\n }\n else if (p1 || p2) {\n return p1 ? -1 : 1;\n }\n return 0;\n};\n/**\n * Validate [semver](https://semver.org/) version strings.\n *\n * @param version Version number to validate\n * @returns `true` if the version number is a valid semver version number, `false` otherwise.\n *\n * @example\n * ```\n * validate('1.0.0-rc.1'); // return true\n * validate('1.0-rc.1'); // return false\n * validate('foo'); // return false\n * ```\n */\nexport const validate = (version) => typeof version === 'string' && /^[v\\d]/.test(version) && semver.test(version);\n/**\n * Compare [semver](https://semver.org/) version strings using the specified operator.\n *\n * @param v1 First version to compare\n * @param v2 Second version to compare\n * @param operator Allowed arithmetic operator to use\n * @returns `true` if the comparison between the firstVersion and the secondVersion satisfies the operator, `false` otherwise.\n *\n * @example\n * ```\n * compare('10.1.8', '10.0.4', '>'); // return true\n * compare('10.0.1', '10.0.1', '='); // return true\n * compare('10.1.1', '10.2.2', '<'); // return true\n * compare('10.1.1', '10.2.2', '<='); // return true\n * compare('10.1.1', '10.2.2', '>='); // return false\n * ```\n */\nexport const compare = (v1, v2, operator) => {\n // validate input operator\n assertValidOperator(operator);\n // since result of compareVersions can only be -1 or 0 or 1\n // a simple map can be used to replace switch\n const res = compareVersions(v1, v2);\n return operatorResMap[operator].includes(res);\n};\n/**\n * Match [npm semver](https://docs.npmjs.com/cli/v6/using-npm/semver) version range.\n *\n * @param version Version number to match\n * @param range Range pattern for version\n * @returns `true` if the version number is within the range, `false` otherwise.\n *\n * @example\n * ```\n * satisfies('1.1.0', '^1.0.0'); // return true\n * satisfies('1.1.0', '~1.0.0'); // return false\n * ```\n */\nexport const satisfies = (version, range) => {\n // if no range operator then \"=\"\n const m = range.match(/^([<>=~^]+)/);\n const op = m ? m[1] : '=';\n // if gt/lt/eq then operator compare\n if (op !== '^' && op !== '~')\n return compare(version, range, op);\n // else range of either \"~\" or \"^\" is assumed\n const [v1, v2, v3, , vp] = validateAndParse(version);\n const [r1, r2, r3, , rp] = validateAndParse(range);\n const v = [v1, v2, v3];\n const r = [r1, r2 !== null && r2 !== void 0 ? r2 : 'x', r3 !== null && r3 !== void 0 ? r3 : 'x'];\n // validate pre-release\n if (rp) {\n if (!vp)\n return false;\n if (compareSegments(v, r) !== 0)\n return false;\n if (compareSegments(vp.split('.'), rp.split('.')) === -1)\n return false;\n }\n // first non-zero number\n const nonZero = r.findIndex((v) => v !== '0') + 1;\n // pointer to where segments can be >=\n const i = op === '~' ? 2 : nonZero > 1 ? nonZero : 1;\n // before pointer must be equal\n if (compareSegments(v.slice(0, i), r.slice(0, i)) !== 0)\n return false;\n // after pointer must be >=\n if (compareSegments(v.slice(i), r.slice(i)) === -1)\n return false;\n return true;\n};\nconst semver = /^[v^~<>=]*?(\\d+)(?:\\.([x*]|\\d+)(?:\\.([x*]|\\d+)(?:\\.([x*]|\\d+))?(?:-([\\da-z\\-]+(?:\\.[\\da-z\\-]+)*))?(?:\\+[\\da-z\\-]+(?:\\.[\\da-z\\-]+)*)?)?)?$/i;\nconst validateAndParse = (version) => {\n if (typeof version !== 'string') {\n throw new TypeError('Invalid argument expected string');\n }\n const match = version.match(semver);\n if (!match) {\n throw new Error(`Invalid argument not valid semver ('${version}' received)`);\n }\n match.shift();\n return match;\n};\nconst isWildcard = (s) => s === '*' || s === 'x' || s === 'X';\nconst tryParse = (v) => {\n const n = parseInt(v, 10);\n return isNaN(n) ? v : n;\n};\nconst forceType = (a, b) => typeof a !== typeof b ? [String(a), String(b)] : [a, b];\nconst compareStrings = (a, b) => {\n if (isWildcard(a) || isWildcard(b))\n return 0;\n const [ap, bp] = forceType(tryParse(a), tryParse(b));\n if (ap > bp)\n return 1;\n if (ap < bp)\n return -1;\n return 0;\n};\nconst compareSegments = (a, b) => {\n for (let i = 0; i < Math.max(a.length, b.length); i++) {\n const r = compareStrings(a[i] || '0', b[i] || '0');\n if (r !== 0)\n return r;\n }\n return 0;\n};\nconst operatorResMap = {\n '>': [1],\n '>=': [0, 1],\n '=': [0],\n '<=': [-1, 0],\n '<': [-1],\n};\nconst allowedOperators = Object.keys(operatorResMap);\nconst assertValidOperator = (op) => {\n if (typeof op !== 'string') {\n throw new TypeError(`Invalid operator type, expected string but got ${typeof op}`);\n }\n if (allowedOperators.indexOf(op) === -1) {\n throw new Error(`Invalid operator, expected one of ${allowedOperators.join('|')}`);\n }\n};\n//# sourceMappingURL=index.js.map","/* define several functions to replace jQuery methods\n * inspired by https://tobiasahlin.com/blog/move-from-jquery-to-vanilla-javascript/\n */\n\n/**\n * Execute a method if DOM has finished loading\n *\n * @param {function} callback the method to execute\n */\nexport function documentReady(callback) {\n if (document.readyState != \"loading\") callback();\n else document.addEventListener(\"DOMContentLoaded\", callback);\n}\n","// Define the custom behavior of the page\nimport { documentReady } from \"./mixin\";\nimport { compare, validate } from \"compare-versions\";\n\nimport \"../styles/pydata-sphinx-theme.scss\";\n\n/*******************************************************************************\n * Theme interaction\n */\n\nvar prefersDark = window.matchMedia(\"(prefers-color-scheme: dark)\");\n\n/**\n * set the the body theme to the one specified by the user browser\n *\n * @param {event} e\n */\nfunction autoTheme(e) {\n document.documentElement.dataset.theme = prefersDark.matches\n ? \"dark\"\n : \"light\";\n}\n\n/**\n * Set the theme using the specified mode.\n * It can be one of [\"auto\", \"dark\", \"light\"]\n *\n * @param {str} mode\n */\nfunction setTheme(mode) {\n if (mode !== \"light\" && mode !== \"dark\" && mode !== \"auto\") {\n console.error(`Got invalid theme mode: ${mode}. Resetting to auto.`);\n mode = \"auto\";\n }\n\n // get the theme\n var colorScheme = prefersDark.matches ? \"dark\" : \"light\";\n document.documentElement.dataset.mode = mode;\n var theme = mode == \"auto\" ? colorScheme : mode;\n document.documentElement.dataset.theme = theme;\n // TODO: remove this line after Bootstrap upgrade\n // v5.3 has a colors mode: https://getbootstrap.com/docs/5.3/customize/color-modes/\n document.querySelectorAll(\".dropdown-menu\").forEach((el) => {\n if (theme === \"dark\") {\n el.classList.add(\"dropdown-menu-dark\");\n } else {\n el.classList.remove(\"dropdown-menu-dark\");\n }\n });\n\n // save mode and theme\n localStorage.setItem(\"mode\", mode);\n localStorage.setItem(\"theme\", theme);\n console.log(`[PST]: Changed to ${mode} mode using the ${theme} theme.`);\n\n // add a listener if set on auto\n prefersDark.onchange = mode == \"auto\" ? autoTheme : \"\";\n}\n\n/**\n * Change the theme option order so that clicking on the btn is always a change\n * from \"auto\"\n */\nfunction cycleMode() {\n const defaultMode = document.documentElement.dataset.defaultMode || \"auto\";\n const currentMode = localStorage.getItem(\"mode\") || defaultMode;\n\n var loopArray = (arr, current) => {\n var nextPosition = arr.indexOf(current) + 1;\n if (nextPosition === arr.length) {\n nextPosition = 0;\n }\n return arr[nextPosition];\n };\n\n // make sure the next theme after auto is always a change\n var modeList = prefersDark.matches\n ? [\"auto\", \"light\", \"dark\"]\n : [\"auto\", \"dark\", \"light\"];\n var newMode = loopArray(modeList, currentMode);\n setTheme(newMode);\n}\n\n/**\n * add the theme listener on the btns of the navbar\n */\nfunction addModeListener() {\n // the theme was set a first time using the initial mini-script\n // running setMode will ensure the use of the dark mode if auto is selected\n setTheme(document.documentElement.dataset.mode);\n\n // Attach event handlers for toggling themes colors\n document.querySelectorAll(\".theme-switch-button\").forEach((el) => {\n el.addEventListener(\"click\", cycleMode);\n });\n}\n\n/*******************************************************************************\n * TOC interactivity\n */\n\n/**\n * TOC sidebar - add \"active\" class to parent list\n *\n * Bootstrap's scrollspy adds the active class to the link,\n * but for the automatic collapsing we need this on the parent list item.\n *\n * The event is triggered on \"window\" (and not the nav item as documented),\n * see https://github.com/twbs/bootstrap/issues/20086\n */\nfunction addTOCInteractivity() {\n window.addEventListener(\"activate.bs.scrollspy\", function () {\n const navLinks = document.querySelectorAll(\".bd-toc-nav a\");\n\n navLinks.forEach((navLink) => {\n navLink.parentElement.classList.remove(\"active\");\n });\n\n const activeNavLinks = document.querySelectorAll(\".bd-toc-nav a.active\");\n activeNavLinks.forEach((navLink) => {\n navLink.parentElement.classList.add(\"active\");\n });\n });\n}\n\n/*******************************************************************************\n * Scroll\n */\n\n/**\n * Navigation sidebar scrolling to active page\n */\nfunction scrollToActive() {\n // If the docs nav doesn't exist, do nothing (e.g., on search page)\n if (!document.querySelector(\".bd-docs-nav\")) {\n return;\n }\n\n var sidebar = document.querySelector(\"div.bd-sidebar\");\n\n // Remember the sidebar scroll position between page loads\n // Inspired on source of revealjs.com\n let storedScrollTop = parseInt(\n sessionStorage.getItem(\"sidebar-scroll-top\"),\n 10\n );\n\n if (!isNaN(storedScrollTop)) {\n // If we've got a saved scroll position, just use that\n sidebar.scrollTop = storedScrollTop;\n console.log(\"[PST]: Scrolled sidebar using stored browser position...\");\n } else {\n // Otherwise, calculate a position to scroll to based on the lowest `active` link\n var sidebarNav = document.querySelector(\".bd-docs-nav\");\n var active_pages = sidebarNav.querySelectorAll(\".active\");\n if (active_pages.length > 0) {\n // Use the last active page as the offset since it's the page we're on\n var latest_active = active_pages[active_pages.length - 1];\n var offset =\n latest_active.getBoundingClientRect().y -\n sidebar.getBoundingClientRect().y;\n // Only scroll the navbar if the active link is lower than 50% of the page\n if (latest_active.getBoundingClientRect().y > window.innerHeight * 0.5) {\n let buffer = 0.25; // Buffer so we have some space above the scrolled item\n sidebar.scrollTop = offset - sidebar.clientHeight * buffer;\n console.log(\"[PST]: Scrolled sidebar using last active link...\");\n }\n }\n }\n\n // Store the sidebar scroll position\n window.addEventListener(\"beforeunload\", () => {\n sessionStorage.setItem(\"sidebar-scroll-top\", sidebar.scrollTop);\n });\n}\n\n/*******************************************************************************\n * Search\n */\n\n/**\n * Find any search forms on the page and return their input element\n */\nvar findSearchInput = () => {\n let forms = document.querySelectorAll(\"form.bd-search\");\n if (!forms.length) {\n // no search form found\n return;\n } else {\n var form;\n if (forms.length == 1) {\n // there is exactly one search form (persistent or hidden)\n form = forms[0];\n } else {\n // must be at least one persistent form, use the first persistent one\n form = document.querySelector(\n \"div:not(.search-button__search-container) > form.bd-search\"\n );\n }\n return form.querySelector(\"input\");\n }\n};\n\n/**\n * Activate the search field on the page.\n * - If there is a search field already visible it will be activated.\n * - If not, then a search field will pop up.\n */\nvar toggleSearchField = () => {\n // Find the search input to highlight\n let input = findSearchInput();\n\n // if the input field is the hidden one (the one associated with the\n // search button) then toggle the button state (to show/hide the field)\n let searchPopupWrapper = document.querySelector(\".search-button__wrapper\");\n let hiddenInput = searchPopupWrapper.querySelector(\"input\");\n if (input === hiddenInput) {\n searchPopupWrapper.classList.toggle(\"show\");\n }\n // when toggling off the search field, remove its focus\n if (document.activeElement === input) {\n input.blur();\n } else {\n input.focus();\n input.select();\n input.scrollIntoView({ block: \"center\" });\n }\n};\n\n/**\n * Add an event listener for toggleSearchField() for Ctrl/Cmd + K\n */\nvar addEventListenerForSearchKeyboard = () => {\n window.addEventListener(\n \"keydown\",\n (event) => {\n let input = findSearchInput();\n // toggle on Ctrl+k or ⌘+k\n if (\n // Ignore if shift or alt are pressed\n !event.shiftKey &&\n !event.altKey &&\n // On Mac use ⌘, all other OS use Ctrl\n (isMac\n ? event.metaKey && !event.ctrlKey\n : !event.metaKey && event.ctrlKey) &&\n // Case-insensitive so the shortcut still works with caps lock\n /k/i.test(event.key)\n ) {\n event.preventDefault();\n toggleSearchField();\n }\n // also allow Escape key to hide (but not show) the dynamic search field\n else if (document.activeElement === input && /Escape/i.test(event.key)) {\n toggleSearchField();\n }\n },\n true\n );\n};\n\n/**\n * Find out if we're on a Mac\n */\nvar isMac = (navigator) => {\n var platform = \"\";\n if (\n typeof navigator.userAgentData !== \"undefined\" &&\n navigator.userAgentData != null\n ) {\n platform = navigator.userAgentData.platform;\n } else if (typeof navigator.platform !== \"undefined\") {\n platform = navigator.platform;\n }\n return /mac.?os/.test(platform.toLowerCase());\n};\n\n/**\n * Change the search hint to `meta key` if we are a Mac\n */\n\nvar changeSearchShortcutKey = () => {\n let shortcuts = document.querySelectorAll(\".search-button__kbd-shortcut\");\n if (isMac(window.navigator)) {\n shortcuts.forEach(\n (f) => (f.querySelector(\"kbd.kbd-shortcut__modifier\").innerText = \"⌘\")\n );\n }\n};\n\n/**\n * Activate callbacks for search button popup\n */\nvar setupSearchButtons = () => {\n changeSearchShortcutKey();\n addEventListenerForSearchKeyboard();\n\n // Add the search button trigger event callback\n document.querySelectorAll(\".search-button__button\").forEach((btn) => {\n btn.onclick = toggleSearchField;\n });\n\n // Add the search button overlay event callback\n let overlay = document.querySelector(\".search-button__overlay\");\n if (overlay) {\n overlay.onclick = toggleSearchField;\n }\n};\n\n/*******************************************************************************\n * Version Switcher\n * Note that this depends on two variables existing that are defined in\n * and `html-page-context` hook:\n *\n * - DOCUMENTATION_OPTIONS.pagename\n * - DOCUMENTATION_OPTIONS.theme_switcher_url\n */\n\n/**\n * Check if corresponding page path exists in other version of docs\n * and, if so, go there instead of the homepage of the other docs version\n *\n * @param {event} event the event that trigger the check\n */\nasync function checkPageExistsAndRedirect(event) {\n // ensure we don't follow the initial link\n event.preventDefault();\n let currentFilePath = `${DOCUMENTATION_OPTIONS.pagename}.html`;\n let tryUrl = event.currentTarget.getAttribute(\"href\");\n let otherDocsHomepage = tryUrl.replace(currentFilePath, \"\");\n try {\n let head = await fetch(tryUrl, { method: \"HEAD\" });\n if (head.ok) {\n location.href = tryUrl; // the page exists, go there\n } else {\n location.href = otherDocsHomepage;\n }\n } catch (err) {\n // something went wrong, probably CORS restriction, fallback to other docs homepage\n location.href = otherDocsHomepage;\n }\n}\n\n/**\n * Load and parse the version switcher JSON file from an absolute or relative URL.\n *\n * @param {string} url The URL to load version switcher entries from.\n */\nasync function fetchVersionSwitcherJSON(url) {\n // first check if it's a valid URL\n try {\n var result = new URL(url);\n } catch (err) {\n if (err instanceof TypeError) {\n // assume we got a relative path, and fix accordingly. But first, we need to\n // use `fetch()` to follow redirects so we get the correct final base URL\n const origin = await fetch(window.location.origin, { method: \"HEAD\" });\n result = new URL(url, origin.url);\n } else {\n // something unexpected happened\n throw err;\n }\n }\n // load and return the JSON\n const response = await fetch(result);\n const data = await response.json();\n return data;\n}\n\n// Populate the version switcher from the JSON data\nfunction populateVersionSwitcher(data, versionSwitcherBtns) {\n const currentFilePath = `${DOCUMENTATION_OPTIONS.pagename}.html`;\n versionSwitcherBtns.forEach((btn) => {\n // Set empty strings by default so that these attributes exist and can be used in CSS selectors\n btn.dataset[\"activeVersionName\"] = \"\";\n btn.dataset[\"activeVersion\"] = \"\";\n });\n // in case there are multiple entries with the same version string, this helps us\n // decide which entry's `name` to put on the button itself. Without this, it would\n // always be the *last* version-matching entry; now it will be either the\n // version-matching entry that is also marked as `\"preferred\": true`, or if that\n // doesn't exist: the *first* version-matching entry.\n data = data.map((entry) => {\n // does this entry match the version that we're currently building/viewing?\n entry.match =\n entry.version == DOCUMENTATION_OPTIONS.theme_switcher_version_match;\n entry.preferred = entry.preferred || false;\n // if no custom name specified (e.g., \"latest\"), use version string\n if (!(\"name\" in entry)) {\n entry.name = entry.version;\n }\n return entry;\n });\n const hasMatchingPreferredEntry = data\n .map((entry) => entry.preferred && entry.match)\n .some(Boolean);\n var foundMatch = false;\n // create links to the corresponding page in the other docs versions\n data.forEach((entry) => {\n // create the node\n const anchor = document.createElement(\"a\");\n anchor.setAttribute(\n \"class\",\n \"dropdown-item list-group-item list-group-item-action py-1\"\n );\n anchor.setAttribute(\"href\", `${entry.url}${currentFilePath}`);\n anchor.setAttribute(\"role\", \"option\");\n const span = document.createElement(\"span\");\n span.textContent = `${entry.name}`;\n anchor.appendChild(span);\n // Add dataset values for the version and name in case people want\n // to apply CSS styling based on this information.\n anchor.dataset[\"versionName\"] = entry.name;\n anchor.dataset[\"version\"] = entry.version;\n // replace dropdown button text with the preferred display name of the\n // currently-viewed version, rather than using sphinx's {{ version }} variable.\n // also highlight the dropdown entry for the currently-viewed version's entry\n let matchesAndIsPreferred = hasMatchingPreferredEntry && entry.preferred;\n let matchesAndIsFirst =\n !hasMatchingPreferredEntry && !foundMatch && entry.match;\n if (matchesAndIsPreferred || matchesAndIsFirst) {\n anchor.classList.add(\"active\");\n versionSwitcherBtns.forEach((btn) => {\n btn.innerText = entry.name;\n btn.dataset[\"activeVersionName\"] = entry.name;\n btn.dataset[\"activeVersion\"] = entry.version;\n });\n foundMatch = true;\n }\n // There may be multiple version-switcher elements, e.g. one\n // in a slide-over panel displayed on smaller screens.\n document.querySelectorAll(\".version-switcher__menu\").forEach((menu) => {\n // we need to clone the node for each menu, but onclick attributes are not\n // preserved by `.cloneNode()` so we add onclick here after cloning.\n let node = anchor.cloneNode(true);\n node.onclick = checkPageExistsAndRedirect;\n // on click, AJAX calls will check if the linked page exists before\n // trying to redirect, and if not, will redirect to the homepage\n // for that version of the docs.\n menu.append(node);\n });\n });\n}\n\n/*******************************************************************************\n * Warning banner when viewing non-stable version of the docs.\n */\n\n/**\n * Show a warning banner when viewing a non-stable version of the docs.\n *\n * adapted 2023-06 from https://mne.tools/versionwarning.js, which was\n * originally adapted 2020-05 from https://scikit-learn.org/versionwarning.js\n *\n * @param {Array} data The version data used to populate the switcher menu.\n */\nfunction showVersionWarningBanner(data) {\n var version = DOCUMENTATION_OPTIONS.VERSION;\n // figure out what latest stable version is\n var preferredEntries = data.filter((entry) => entry.preferred);\n if (preferredEntries.length !== 1) {\n const howMany = preferredEntries.length == 0 ? \"No\" : \"Multiple\";\n console.log(\n `[PST] ${howMany} versions marked \"preferred\" found in versions JSON, ignoring.`\n );\n return;\n }\n const preferredVersion = preferredEntries[0].version;\n const preferredURL = preferredEntries[0].url;\n // if already on preferred version, nothing to do\n const versionsAreComparable = validate(version) && validate(preferredVersion);\n if (versionsAreComparable && compare(version, preferredVersion, \"=\")) {\n return;\n }\n // now construct the warning banner\n var outer = document.createElement(\"div\");\n const middle = document.createElement(\"div\");\n const inner = document.createElement(\"div\");\n const bold = document.createElement(\"strong\");\n const button = document.createElement(\"a\");\n // these classes exist since pydata-sphinx-theme v0.10.0\n outer.classList = \"bd-header-version-warning container-fluid\";\n middle.classList = \"bd-header-announcement__content\";\n inner.classList = \"sidebar-message\";\n button.classList =\n \"sd-btn sd-btn-danger sd-shadow-sm sd-text-wrap font-weight-bold ms-3 my-1 align-baseline\";\n button.href = `${preferredURL}${DOCUMENTATION_OPTIONS.pagename}.html`;\n button.innerText = \"Switch to stable version\";\n button.onclick = checkPageExistsAndRedirect;\n // add the version-dependent text\n inner.innerText = \"This is documentation for \";\n const isDev =\n version.includes(\"dev\") ||\n version.includes(\"rc\") ||\n version.includes(\"pre\");\n const newerThanPreferred =\n versionsAreComparable && compare(version, preferredVersion, \">\");\n if (isDev || newerThanPreferred) {\n bold.innerText = \"an unstable development version\";\n } else if (versionsAreComparable && compare(version, preferredVersion, \"<\")) {\n bold.innerText = `an old version (${version})`;\n } else if (!version) {\n bold.innerText = \"an unknown version\"; // e.g., an empty string\n } else {\n bold.innerText = `version ${version}`;\n }\n outer.appendChild(middle);\n middle.appendChild(inner);\n inner.appendChild(bold);\n inner.appendChild(document.createTextNode(\".\"));\n inner.appendChild(button);\n document.body.prepend(outer);\n}\n\n/*******************************************************************************\n * MutationObserver to move the ReadTheDocs button\n */\n\n/**\n * intercept the RTD flyout and place it in the rtd-footer-container if existing\n * if not it stays where on top of the page\n */\nfunction initRTDObserver() {\n const mutatedCallback = (mutationList, observer) => {\n mutationList.forEach((mutation) => {\n // Check whether the mutation is for RTD, which will have a specific structure\n if (mutation.addedNodes.length === 0) {\n return;\n }\n if (mutation.addedNodes[0].data === undefined) {\n return;\n }\n if (mutation.addedNodes[0].data.search(\"Inserted RTD Footer\") != -1) {\n mutation.addedNodes.forEach((node) => {\n document.getElementById(\"rtd-footer-container\").append(node);\n });\n }\n });\n };\n\n const observer = new MutationObserver(mutatedCallback);\n const config = { childList: true };\n observer.observe(document.body, config);\n}\n\n// fetch the JSON version data (only once), then use it to populate the version\n// switcher and maybe show the version warning bar\nvar versionSwitcherBtns = document.querySelectorAll(\n \".version-switcher__button\"\n);\nconst hasSwitcherMenu = versionSwitcherBtns.length > 0;\nconst hasVersionsJSON = DOCUMENTATION_OPTIONS.hasOwnProperty(\n \"theme_switcher_json_url\"\n);\nconst wantsWarningBanner = DOCUMENTATION_OPTIONS.show_version_warning_banner;\n\nif (hasVersionsJSON && (hasSwitcherMenu || wantsWarningBanner)) {\n const data = await fetchVersionSwitcherJSON(\n DOCUMENTATION_OPTIONS.theme_switcher_json_url\n );\n populateVersionSwitcher(data, versionSwitcherBtns);\n if (wantsWarningBanner) {\n showVersionWarningBanner(data);\n }\n}\n\n/*******************************************************************************\n * Call functions after document loading.\n */\n\ndocumentReady(addModeListener);\ndocumentReady(scrollToActive);\ndocumentReady(addTOCInteractivity);\ndocumentReady(setupSearchButtons);\ndocumentReady(initRTDObserver);\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// startup\n// Load entry module and return exports\n// This entry module used 'module' so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(937);\n"],"names":["webpackQueues","webpackExports","webpackError","resolveQueue","validate","version","test","semver","compare","v1","v2","operator","assertValidOperator","res","n1","validateAndParse","n2","p1","pop","p2","r","compareSegments","split","compareVersions","operatorResMap","includes","TypeError","match","Error","shift","isWildcard","s","tryParse","v","n","parseInt","isNaN","compareStrings","a","b","ap","bp","String","forceType","i","Math","max","length","allowedOperators","Object","keys","op","indexOf","join","documentReady","callback","document","readyState","addEventListener","prefersDark","window","matchMedia","autoTheme","e","documentElement","dataset","theme","matches","setTheme","mode","console","error","colorScheme","querySelectorAll","forEach","el","classList","add","remove","localStorage","setItem","log","onchange","cycleMode","defaultMode","currentMode","getItem","arr","nextPosition","addModeListener","addTOCInteractivity","navLink","parentElement","scrollToActive","querySelector","sidebar","storedScrollTop","sessionStorage","active_pages","latest_active","offset","getBoundingClientRect","y","innerHeight","buffer","scrollTop","clientHeight","findSearchInput","forms","toggleSearchField","input","searchPopupWrapper","toggle","activeElement","blur","focus","select","scrollIntoView","block","isMac","navigator","platform","userAgentData","toLowerCase","async","checkPageExistsAndRedirect","event","preventDefault","currentFilePath","DOCUMENTATION_OPTIONS","pagename","tryUrl","currentTarget","getAttribute","otherDocsHomepage","replace","fetch","method","ok","location","href","err","fetchVersionSwitcherJSON","url","result","URL","origin","response","json","populateVersionSwitcher","data","versionSwitcherBtns","btn","hasMatchingPreferredEntry","map","entry","theme_switcher_version_match","preferred","name","some","Boolean","foundMatch","anchor","createElement","setAttribute","span","textContent","appendChild","matchesAndIsPreferred","matchesAndIsFirst","innerText","menu","node","cloneNode","onclick","append","showVersionWarningBanner","VERSION","preferredEntries","filter","howMany","preferredVersion","preferredURL","versionsAreComparable","outer","middle","inner","bold","button","isDev","newerThanPreferred","createTextNode","body","prepend","initRTDObserver","MutationObserver","mutationList","observer","mutation","addedNodes","undefined","search","getElementById","observe","childList","hasSwitcherMenu","hasVersionsJSON","hasOwnProperty","wantsWarningBanner","show_version_warning_banner","theme_switcher_json_url","shortcuts","f","changeSearchShortcutKey","shiftKey","altKey","metaKey","ctrlKey","key","overlay","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","Symbol","queue","d","fn","hasAwait","currentDeps","outerResolve","reject","depQueues","Set","promise","Promise","resolve","rej","x","deps","dep","then","obj","ret","wrapDeps","getResult","fnQueue","q","has","push","definition","o","defineProperty","enumerable","get","prop","prototype","call"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"scripts/pydata-sphinx-theme.js","mappings":"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","sources":["webpack://pydata_sphinx_theme/webpack/runtime/async module","webpack://pydata_sphinx_theme/./node_modules/compare-versions/lib/esm/index.js","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/scripts/mixin.js","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js","webpack://pydata_sphinx_theme/webpack/bootstrap","webpack://pydata_sphinx_theme/webpack/runtime/define property getters","webpack://pydata_sphinx_theme/webpack/runtime/hasOwnProperty shorthand","webpack://pydata_sphinx_theme/webpack/startup"],"sourcesContent":["var webpackQueues = typeof Symbol === \"function\" ? Symbol(\"webpack queues\") : \"__webpack_queues__\";\nvar webpackExports = typeof Symbol === \"function\" ? Symbol(\"webpack exports\") : \"__webpack_exports__\";\nvar webpackError = typeof Symbol === \"function\" ? Symbol(\"webpack error\") : \"__webpack_error__\";\nvar resolveQueue = (queue) => {\n\tif(queue && queue.d < 1) {\n\t\tqueue.d = 1;\n\t\tqueue.forEach((fn) => (fn.r--));\n\t\tqueue.forEach((fn) => (fn.r-- ? fn.r++ : fn()));\n\t}\n}\nvar wrapDeps = (deps) => (deps.map((dep) => {\n\tif(dep !== null && typeof dep === \"object\") {\n\t\tif(dep[webpackQueues]) return dep;\n\t\tif(dep.then) {\n\t\t\tvar queue = [];\n\t\t\tqueue.d = 0;\n\t\t\tdep.then((r) => {\n\t\t\t\tobj[webpackExports] = r;\n\t\t\t\tresolveQueue(queue);\n\t\t\t}, (e) => {\n\t\t\t\tobj[webpackError] = e;\n\t\t\t\tresolveQueue(queue);\n\t\t\t});\n\t\t\tvar obj = {};\n\t\t\tobj[webpackQueues] = (fn) => (fn(queue));\n\t\t\treturn obj;\n\t\t}\n\t}\n\tvar ret = {};\n\tret[webpackQueues] = x => {};\n\tret[webpackExports] = dep;\n\treturn ret;\n}));\n__webpack_require__.a = (module, body, hasAwait) => {\n\tvar queue;\n\thasAwait && ((queue = []).d = -1);\n\tvar depQueues = new Set();\n\tvar exports = module.exports;\n\tvar currentDeps;\n\tvar outerResolve;\n\tvar reject;\n\tvar promise = new Promise((resolve, rej) => {\n\t\treject = rej;\n\t\touterResolve = resolve;\n\t});\n\tpromise[webpackExports] = exports;\n\tpromise[webpackQueues] = (fn) => (queue && fn(queue), depQueues.forEach(fn), promise[\"catch\"](x => {}));\n\tmodule.exports = promise;\n\tbody((deps) => {\n\t\tcurrentDeps = wrapDeps(deps);\n\t\tvar fn;\n\t\tvar getResult = () => (currentDeps.map((d) => {\n\t\t\tif(d[webpackError]) throw d[webpackError];\n\t\t\treturn d[webpackExports];\n\t\t}))\n\t\tvar promise = new Promise((resolve) => {\n\t\t\tfn = () => (resolve(getResult));\n\t\t\tfn.r = 0;\n\t\t\tvar fnQueue = (q) => (q !== queue && !depQueues.has(q) && (depQueues.add(q), q && !q.d && (fn.r++, q.push(fn))));\n\t\t\tcurrentDeps.map((dep) => (dep[webpackQueues](fnQueue)));\n\t\t});\n\t\treturn fn.r ? promise : getResult();\n\t}, (err) => ((err ? reject(promise[webpackError] = err) : outerResolve(exports)), resolveQueue(queue)));\n\tqueue && queue.d < 0 && (queue.d = 0);\n};","/**\n * Compare [semver](https://semver.org/) version strings to find greater, equal or lesser.\n * This library supports the full semver specification, including comparing versions with different number of digits like `1.0.0`, `1.0`, `1`, and pre-release versions like `1.0.0-alpha`.\n * @param v1 - First version to compare\n * @param v2 - Second version to compare\n * @returns Numeric value compatible with the [Array.sort(fn) interface](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#Parameters).\n */\nexport const compareVersions = (v1, v2) => {\n // validate input and split into segments\n const n1 = validateAndParse(v1);\n const n2 = validateAndParse(v2);\n // pop off the patch\n const p1 = n1.pop();\n const p2 = n2.pop();\n // validate numbers\n const r = compareSegments(n1, n2);\n if (r !== 0)\n return r;\n // validate pre-release\n if (p1 && p2) {\n return compareSegments(p1.split('.'), p2.split('.'));\n }\n else if (p1 || p2) {\n return p1 ? -1 : 1;\n }\n return 0;\n};\n/**\n * Validate [semver](https://semver.org/) version strings.\n *\n * @param version Version number to validate\n * @returns `true` if the version number is a valid semver version number, `false` otherwise.\n *\n * @example\n * ```\n * validate('1.0.0-rc.1'); // return true\n * validate('1.0-rc.1'); // return false\n * validate('foo'); // return false\n * ```\n */\nexport const validate = (version) => typeof version === 'string' && /^[v\\d]/.test(version) && semver.test(version);\n/**\n * Compare [semver](https://semver.org/) version strings using the specified operator.\n *\n * @param v1 First version to compare\n * @param v2 Second version to compare\n * @param operator Allowed arithmetic operator to use\n * @returns `true` if the comparison between the firstVersion and the secondVersion satisfies the operator, `false` otherwise.\n *\n * @example\n * ```\n * compare('10.1.8', '10.0.4', '>'); // return true\n * compare('10.0.1', '10.0.1', '='); // return true\n * compare('10.1.1', '10.2.2', '<'); // return true\n * compare('10.1.1', '10.2.2', '<='); // return true\n * compare('10.1.1', '10.2.2', '>='); // return false\n * ```\n */\nexport const compare = (v1, v2, operator) => {\n // validate input operator\n assertValidOperator(operator);\n // since result of compareVersions can only be -1 or 0 or 1\n // a simple map can be used to replace switch\n const res = compareVersions(v1, v2);\n return operatorResMap[operator].includes(res);\n};\n/**\n * Match [npm semver](https://docs.npmjs.com/cli/v6/using-npm/semver) version range.\n *\n * @param version Version number to match\n * @param range Range pattern for version\n * @returns `true` if the version number is within the range, `false` otherwise.\n *\n * @example\n * ```\n * satisfies('1.1.0', '^1.0.0'); // return true\n * satisfies('1.1.0', '~1.0.0'); // return false\n * ```\n */\nexport const satisfies = (version, range) => {\n // if no range operator then \"=\"\n const m = range.match(/^([<>=~^]+)/);\n const op = m ? m[1] : '=';\n // if gt/lt/eq then operator compare\n if (op !== '^' && op !== '~')\n return compare(version, range, op);\n // else range of either \"~\" or \"^\" is assumed\n const [v1, v2, v3, , vp] = validateAndParse(version);\n const [r1, r2, r3, , rp] = validateAndParse(range);\n const v = [v1, v2, v3];\n const r = [r1, r2 !== null && r2 !== void 0 ? r2 : 'x', r3 !== null && r3 !== void 0 ? r3 : 'x'];\n // validate pre-release\n if (rp) {\n if (!vp)\n return false;\n if (compareSegments(v, r) !== 0)\n return false;\n if (compareSegments(vp.split('.'), rp.split('.')) === -1)\n return false;\n }\n // first non-zero number\n const nonZero = r.findIndex((v) => v !== '0') + 1;\n // pointer to where segments can be >=\n const i = op === '~' ? 2 : nonZero > 1 ? nonZero : 1;\n // before pointer must be equal\n if (compareSegments(v.slice(0, i), r.slice(0, i)) !== 0)\n return false;\n // after pointer must be >=\n if (compareSegments(v.slice(i), r.slice(i)) === -1)\n return false;\n return true;\n};\nconst semver = /^[v^~<>=]*?(\\d+)(?:\\.([x*]|\\d+)(?:\\.([x*]|\\d+)(?:\\.([x*]|\\d+))?(?:-([\\da-z\\-]+(?:\\.[\\da-z\\-]+)*))?(?:\\+[\\da-z\\-]+(?:\\.[\\da-z\\-]+)*)?)?)?$/i;\nconst validateAndParse = (version) => {\n if (typeof version !== 'string') {\n throw new TypeError('Invalid argument expected string');\n }\n const match = version.match(semver);\n if (!match) {\n throw new Error(`Invalid argument not valid semver ('${version}' received)`);\n }\n match.shift();\n return match;\n};\nconst isWildcard = (s) => s === '*' || s === 'x' || s === 'X';\nconst tryParse = (v) => {\n const n = parseInt(v, 10);\n return isNaN(n) ? v : n;\n};\nconst forceType = (a, b) => typeof a !== typeof b ? [String(a), String(b)] : [a, b];\nconst compareStrings = (a, b) => {\n if (isWildcard(a) || isWildcard(b))\n return 0;\n const [ap, bp] = forceType(tryParse(a), tryParse(b));\n if (ap > bp)\n return 1;\n if (ap < bp)\n return -1;\n return 0;\n};\nconst compareSegments = (a, b) => {\n for (let i = 0; i < Math.max(a.length, b.length); i++) {\n const r = compareStrings(a[i] || '0', b[i] || '0');\n if (r !== 0)\n return r;\n }\n return 0;\n};\nconst operatorResMap = {\n '>': [1],\n '>=': [0, 1],\n '=': [0],\n '<=': [-1, 0],\n '<': [-1],\n};\nconst allowedOperators = Object.keys(operatorResMap);\nconst assertValidOperator = (op) => {\n if (typeof op !== 'string') {\n throw new TypeError(`Invalid operator type, expected string but got ${typeof op}`);\n }\n if (allowedOperators.indexOf(op) === -1) {\n throw new Error(`Invalid operator, expected one of ${allowedOperators.join('|')}`);\n }\n};\n//# sourceMappingURL=index.js.map","/* define several functions to replace jQuery methods\n * inspired by https://tobiasahlin.com/blog/move-from-jquery-to-vanilla-javascript/\n */\n\n/**\n * Execute a method if DOM has finished loading\n *\n * @param {function} callback the method to execute\n */\nexport function documentReady(callback) {\n if (document.readyState != \"loading\") callback();\n else document.addEventListener(\"DOMContentLoaded\", callback);\n}\n","// Define the custom behavior of the page\nimport { documentReady } from \"./mixin\";\nimport { compare, validate } from \"compare-versions\";\n\nimport \"../styles/pydata-sphinx-theme.scss\";\n\n/*******************************************************************************\n * Theme interaction\n */\n\nvar prefersDark = window.matchMedia(\"(prefers-color-scheme: dark)\");\n\n/**\n * set the the body theme to the one specified by the user browser\n *\n * @param {event} e\n */\nfunction autoTheme(e) {\n document.documentElement.dataset.theme = prefersDark.matches\n ? \"dark\"\n : \"light\";\n}\n\n/**\n * Set the theme using the specified mode.\n * It can be one of [\"auto\", \"dark\", \"light\"]\n *\n * @param {str} mode\n */\nfunction setTheme(mode) {\n if (mode !== \"light\" && mode !== \"dark\" && mode !== \"auto\") {\n console.error(`Got invalid theme mode: ${mode}. Resetting to auto.`);\n mode = \"auto\";\n }\n\n // get the theme\n var colorScheme = prefersDark.matches ? \"dark\" : \"light\";\n document.documentElement.dataset.mode = mode;\n var theme = mode == \"auto\" ? colorScheme : mode;\n document.documentElement.dataset.theme = theme;\n // TODO: remove this line after Bootstrap upgrade\n // v5.3 has a colors mode: https://getbootstrap.com/docs/5.3/customize/color-modes/\n document.querySelectorAll(\".dropdown-menu\").forEach((el) => {\n if (theme === \"dark\") {\n el.classList.add(\"dropdown-menu-dark\");\n } else {\n el.classList.remove(\"dropdown-menu-dark\");\n }\n });\n\n // save mode and theme\n localStorage.setItem(\"mode\", mode);\n localStorage.setItem(\"theme\", theme);\n console.log(`[PST]: Changed to ${mode} mode using the ${theme} theme.`);\n\n // add a listener if set on auto\n prefersDark.onchange = mode == \"auto\" ? autoTheme : \"\";\n}\n\n/**\n * Change the theme option order so that clicking on the btn is always a change\n * from \"auto\"\n */\nfunction cycleMode() {\n const defaultMode = document.documentElement.dataset.defaultMode || \"auto\";\n const currentMode = localStorage.getItem(\"mode\") || defaultMode;\n\n var loopArray = (arr, current) => {\n var nextPosition = arr.indexOf(current) + 1;\n if (nextPosition === arr.length) {\n nextPosition = 0;\n }\n return arr[nextPosition];\n };\n\n // make sure the next theme after auto is always a change\n var modeList = prefersDark.matches\n ? [\"auto\", \"light\", \"dark\"]\n : [\"auto\", \"dark\", \"light\"];\n var newMode = loopArray(modeList, currentMode);\n setTheme(newMode);\n}\n\n/**\n * add the theme listener on the btns of the navbar\n */\nfunction addModeListener() {\n // the theme was set a first time using the initial mini-script\n // running setMode will ensure the use of the dark mode if auto is selected\n setTheme(document.documentElement.dataset.mode);\n\n // Attach event handlers for toggling themes colors\n document.querySelectorAll(\".theme-switch-button\").forEach((el) => {\n el.addEventListener(\"click\", cycleMode);\n });\n}\n\n/*******************************************************************************\n * TOC interactivity\n */\n\n/**\n * TOC sidebar - add \"active\" class to parent list\n *\n * Bootstrap's scrollspy adds the active class to the link,\n * but for the automatic collapsing we need this on the parent list item.\n *\n * The event is triggered on \"window\" (and not the nav item as documented),\n * see https://github.com/twbs/bootstrap/issues/20086\n */\nfunction addTOCInteractivity() {\n window.addEventListener(\"activate.bs.scrollspy\", function () {\n const navLinks = document.querySelectorAll(\".bd-toc-nav a\");\n\n navLinks.forEach((navLink) => {\n navLink.parentElement.classList.remove(\"active\");\n });\n\n const activeNavLinks = document.querySelectorAll(\".bd-toc-nav a.active\");\n activeNavLinks.forEach((navLink) => {\n navLink.parentElement.classList.add(\"active\");\n });\n });\n}\n\n/*******************************************************************************\n * Scroll\n */\n\n/**\n * Navigation sidebar scrolling to active page\n */\nfunction scrollToActive() {\n // If the docs nav doesn't exist, do nothing (e.g., on search page)\n if (!document.querySelector(\".bd-docs-nav\")) {\n return;\n }\n\n var sidebar = document.querySelector(\"div.bd-sidebar\");\n\n // Remember the sidebar scroll position between page loads\n // Inspired on source of revealjs.com\n let storedScrollTop = parseInt(\n sessionStorage.getItem(\"sidebar-scroll-top\"),\n 10\n );\n\n if (!isNaN(storedScrollTop)) {\n // If we've got a saved scroll position, just use that\n sidebar.scrollTop = storedScrollTop;\n console.log(\"[PST]: Scrolled sidebar using stored browser position...\");\n } else {\n // Otherwise, calculate a position to scroll to based on the lowest `active` link\n var sidebarNav = document.querySelector(\".bd-docs-nav\");\n var active_pages = sidebarNav.querySelectorAll(\".active\");\n if (active_pages.length > 0) {\n // Use the last active page as the offset since it's the page we're on\n var latest_active = active_pages[active_pages.length - 1];\n var offset =\n latest_active.getBoundingClientRect().y -\n sidebar.getBoundingClientRect().y;\n // Only scroll the navbar if the active link is lower than 50% of the page\n if (latest_active.getBoundingClientRect().y > window.innerHeight * 0.5) {\n let buffer = 0.25; // Buffer so we have some space above the scrolled item\n sidebar.scrollTop = offset - sidebar.clientHeight * buffer;\n console.log(\"[PST]: Scrolled sidebar using last active link...\");\n }\n }\n }\n\n // Store the sidebar scroll position\n window.addEventListener(\"beforeunload\", () => {\n sessionStorage.setItem(\"sidebar-scroll-top\", sidebar.scrollTop);\n });\n}\n\n/*******************************************************************************\n * Search\n */\n\n/**\n * Find any search forms on the page and return their input element\n */\nvar findSearchInput = () => {\n let forms = document.querySelectorAll(\"form.bd-search\");\n if (!forms.length) {\n // no search form found\n return;\n } else {\n var form;\n if (forms.length == 1) {\n // there is exactly one search form (persistent or hidden)\n form = forms[0];\n } else {\n // must be at least one persistent form, use the first persistent one\n form = document.querySelector(\n \"div:not(.search-button__search-container) > form.bd-search\"\n );\n }\n return form.querySelector(\"input\");\n }\n};\n\n/**\n * Activate the search field on the page.\n * - If there is a search field already visible it will be activated.\n * - If not, then a search field will pop up.\n */\nvar toggleSearchField = () => {\n // Find the search input to highlight\n let input = findSearchInput();\n\n // if the input field is the hidden one (the one associated with the\n // search button) then toggle the button state (to show/hide the field)\n let searchPopupWrapper = document.querySelector(\".search-button__wrapper\");\n let hiddenInput = searchPopupWrapper.querySelector(\"input\");\n if (input === hiddenInput) {\n searchPopupWrapper.classList.toggle(\"show\");\n }\n // when toggling off the search field, remove its focus\n if (document.activeElement === input) {\n input.blur();\n } else {\n input.focus();\n input.select();\n input.scrollIntoView({ block: \"center\" });\n }\n};\n\n/**\n * Add an event listener for toggleSearchField() for Ctrl/Cmd + K\n */\nvar addEventListenerForSearchKeyboard = () => {\n window.addEventListener(\n \"keydown\",\n (event) => {\n let input = findSearchInput();\n // toggle on Ctrl+k or ⌘+k\n if (\n // Ignore if shift or alt are pressed\n !event.shiftKey &&\n !event.altKey &&\n // On Mac use ⌘, all other OS use Ctrl\n (useCommandKey\n ? event.metaKey && !event.ctrlKey\n : !event.metaKey && event.ctrlKey) &&\n // Case-insensitive so the shortcut still works with caps lock\n /k/i.test(event.key)\n ) {\n event.preventDefault();\n toggleSearchField();\n }\n // also allow Escape key to hide (but not show) the dynamic search field\n else if (document.activeElement === input && /Escape/i.test(event.key)) {\n toggleSearchField();\n }\n },\n true\n );\n};\n\n/**\n * If the user is on a Mac, use command (⌘) instead of control (ctrl) key\n *\n * Note: `navigator.platform` is deprecated; however MDN still recommends using\n * it for the one specific use case of detecting whether a keyboard shortcut\n * should use control or command:\n * https://developer.mozilla.org/en-US/docs/Web/API/Navigator/platform#examples\n */\nvar useCommandKey =\n navigator.platform.indexOf(\"Mac\") === 0 || navigator.platform === \"iPhone\";\n\n/**\n * Change the search hint to `meta key` if we are a Mac\n */\n\nvar changeSearchShortcutKey = () => {\n let shortcuts = document.querySelectorAll(\".search-button__kbd-shortcut\");\n if (useCommandKey) {\n shortcuts.forEach(\n (f) => (f.querySelector(\"kbd.kbd-shortcut__modifier\").innerText = \"⌘\")\n );\n }\n};\n\n/**\n * Activate callbacks for search button popup\n */\nvar setupSearchButtons = () => {\n changeSearchShortcutKey();\n addEventListenerForSearchKeyboard();\n\n // Add the search button trigger event callback\n document.querySelectorAll(\".search-button__button\").forEach((btn) => {\n btn.onclick = toggleSearchField;\n });\n\n // Add the search button overlay event callback\n let overlay = document.querySelector(\".search-button__overlay\");\n if (overlay) {\n overlay.onclick = toggleSearchField;\n }\n};\n\n/*******************************************************************************\n * Version Switcher\n * Note that this depends on two variables existing that are defined in\n * and `html-page-context` hook:\n *\n * - DOCUMENTATION_OPTIONS.pagename\n * - DOCUMENTATION_OPTIONS.theme_switcher_url\n */\n\n/**\n * Check if corresponding page path exists in other version of docs\n * and, if so, go there instead of the homepage of the other docs version\n *\n * @param {event} event the event that trigger the check\n */\nasync function checkPageExistsAndRedirect(event) {\n // ensure we don't follow the initial link\n event.preventDefault();\n let currentFilePath = `${DOCUMENTATION_OPTIONS.pagename}.html`;\n let tryUrl = event.currentTarget.getAttribute(\"href\");\n let otherDocsHomepage = tryUrl.replace(currentFilePath, \"\");\n try {\n let head = await fetch(tryUrl, { method: \"HEAD\" });\n if (head.ok) {\n location.href = tryUrl; // the page exists, go there\n } else {\n location.href = otherDocsHomepage;\n }\n } catch (err) {\n // something went wrong, probably CORS restriction, fallback to other docs homepage\n location.href = otherDocsHomepage;\n }\n}\n\n/**\n * Load and parse the version switcher JSON file from an absolute or relative URL.\n *\n * @param {string} url The URL to load version switcher entries from.\n */\nasync function fetchVersionSwitcherJSON(url) {\n // first check if it's a valid URL\n try {\n var result = new URL(url);\n } catch (err) {\n if (err instanceof TypeError) {\n // assume we got a relative path, and fix accordingly. But first, we need to\n // use `fetch()` to follow redirects so we get the correct final base URL\n const origin = await fetch(window.location.origin, { method: \"HEAD\" });\n result = new URL(url, origin.url);\n } else {\n // something unexpected happened\n throw err;\n }\n }\n // load and return the JSON\n const response = await fetch(result);\n const data = await response.json();\n return data;\n}\n\n// Populate the version switcher from the JSON data\nfunction populateVersionSwitcher(data, versionSwitcherBtns) {\n const currentFilePath = `${DOCUMENTATION_OPTIONS.pagename}.html`;\n versionSwitcherBtns.forEach((btn) => {\n // Set empty strings by default so that these attributes exist and can be used in CSS selectors\n btn.dataset[\"activeVersionName\"] = \"\";\n btn.dataset[\"activeVersion\"] = \"\";\n });\n // in case there are multiple entries with the same version string, this helps us\n // decide which entry's `name` to put on the button itself. Without this, it would\n // always be the *last* version-matching entry; now it will be either the\n // version-matching entry that is also marked as `\"preferred\": true`, or if that\n // doesn't exist: the *first* version-matching entry.\n data = data.map((entry) => {\n // does this entry match the version that we're currently building/viewing?\n entry.match =\n entry.version == DOCUMENTATION_OPTIONS.theme_switcher_version_match;\n entry.preferred = entry.preferred || false;\n // if no custom name specified (e.g., \"latest\"), use version string\n if (!(\"name\" in entry)) {\n entry.name = entry.version;\n }\n return entry;\n });\n const hasMatchingPreferredEntry = data\n .map((entry) => entry.preferred && entry.match)\n .some(Boolean);\n var foundMatch = false;\n // create links to the corresponding page in the other docs versions\n data.forEach((entry) => {\n // create the node\n const anchor = document.createElement(\"a\");\n anchor.setAttribute(\n \"class\",\n \"dropdown-item list-group-item list-group-item-action py-1\"\n );\n anchor.setAttribute(\"href\", `${entry.url}${currentFilePath}`);\n anchor.setAttribute(\"role\", \"option\");\n const span = document.createElement(\"span\");\n span.textContent = `${entry.name}`;\n anchor.appendChild(span);\n // Add dataset values for the version and name in case people want\n // to apply CSS styling based on this information.\n anchor.dataset[\"versionName\"] = entry.name;\n anchor.dataset[\"version\"] = entry.version;\n // replace dropdown button text with the preferred display name of the\n // currently-viewed version, rather than using sphinx's {{ version }} variable.\n // also highlight the dropdown entry for the currently-viewed version's entry\n let matchesAndIsPreferred = hasMatchingPreferredEntry && entry.preferred;\n let matchesAndIsFirst =\n !hasMatchingPreferredEntry && !foundMatch && entry.match;\n if (matchesAndIsPreferred || matchesAndIsFirst) {\n anchor.classList.add(\"active\");\n versionSwitcherBtns.forEach((btn) => {\n btn.innerText = entry.name;\n btn.dataset[\"activeVersionName\"] = entry.name;\n btn.dataset[\"activeVersion\"] = entry.version;\n });\n foundMatch = true;\n }\n // There may be multiple version-switcher elements, e.g. one\n // in a slide-over panel displayed on smaller screens.\n document.querySelectorAll(\".version-switcher__menu\").forEach((menu) => {\n // we need to clone the node for each menu, but onclick attributes are not\n // preserved by `.cloneNode()` so we add onclick here after cloning.\n let node = anchor.cloneNode(true);\n node.onclick = checkPageExistsAndRedirect;\n // on click, AJAX calls will check if the linked page exists before\n // trying to redirect, and if not, will redirect to the homepage\n // for that version of the docs.\n menu.append(node);\n });\n });\n}\n\n/*******************************************************************************\n * Warning banner when viewing non-stable version of the docs.\n */\n\n/**\n * Show a warning banner when viewing a non-stable version of the docs.\n *\n * adapted 2023-06 from https://mne.tools/versionwarning.js, which was\n * originally adapted 2020-05 from https://scikit-learn.org/versionwarning.js\n *\n * @param {Array} data The version data used to populate the switcher menu.\n */\nfunction showVersionWarningBanner(data) {\n var version = DOCUMENTATION_OPTIONS.VERSION;\n // figure out what latest stable version is\n var preferredEntries = data.filter((entry) => entry.preferred);\n if (preferredEntries.length !== 1) {\n const howMany = preferredEntries.length == 0 ? \"No\" : \"Multiple\";\n console.log(\n `[PST] ${howMany} versions marked \"preferred\" found in versions JSON, ignoring.`\n );\n return;\n }\n const preferredVersion = preferredEntries[0].version;\n const preferredURL = preferredEntries[0].url;\n // if already on preferred version, nothing to do\n const versionsAreComparable = validate(version) && validate(preferredVersion);\n if (versionsAreComparable && compare(version, preferredVersion, \"=\")) {\n return;\n }\n // now construct the warning banner\n var outer = document.createElement(\"div\");\n const middle = document.createElement(\"div\");\n const inner = document.createElement(\"div\");\n const bold = document.createElement(\"strong\");\n const button = document.createElement(\"a\");\n // these classes exist since pydata-sphinx-theme v0.10.0\n outer.classList = \"bd-header-version-warning container-fluid\";\n middle.classList = \"bd-header-announcement__content\";\n inner.classList = \"sidebar-message\";\n button.classList =\n \"sd-btn sd-btn-danger sd-shadow-sm sd-text-wrap font-weight-bold ms-3 my-1 align-baseline\";\n button.href = `${preferredURL}${DOCUMENTATION_OPTIONS.pagename}.html`;\n button.innerText = \"Switch to stable version\";\n button.onclick = checkPageExistsAndRedirect;\n // add the version-dependent text\n inner.innerText = \"This is documentation for \";\n const isDev =\n version.includes(\"dev\") ||\n version.includes(\"rc\") ||\n version.includes(\"pre\");\n const newerThanPreferred =\n versionsAreComparable && compare(version, preferredVersion, \">\");\n if (isDev || newerThanPreferred) {\n bold.innerText = \"an unstable development version\";\n } else if (versionsAreComparable && compare(version, preferredVersion, \"<\")) {\n bold.innerText = `an old version (${version})`;\n } else if (!version) {\n bold.innerText = \"an unknown version\"; // e.g., an empty string\n } else {\n bold.innerText = `version ${version}`;\n }\n outer.appendChild(middle);\n middle.appendChild(inner);\n inner.appendChild(bold);\n inner.appendChild(document.createTextNode(\".\"));\n inner.appendChild(button);\n document.body.prepend(outer);\n}\n\n/*******************************************************************************\n * MutationObserver to move the ReadTheDocs button\n */\n\n/**\n * intercept the RTD flyout and place it in the rtd-footer-container if existing\n * if not it stays where on top of the page\n */\nfunction initRTDObserver() {\n const mutatedCallback = (mutationList, observer) => {\n mutationList.forEach((mutation) => {\n // Check whether the mutation is for RTD, which will have a specific structure\n if (mutation.addedNodes.length === 0) {\n return;\n }\n if (mutation.addedNodes[0].data === undefined) {\n return;\n }\n if (mutation.addedNodes[0].data.search(\"Inserted RTD Footer\") != -1) {\n mutation.addedNodes.forEach((node) => {\n document.getElementById(\"rtd-footer-container\").append(node);\n });\n }\n });\n };\n\n const observer = new MutationObserver(mutatedCallback);\n const config = { childList: true };\n observer.observe(document.body, config);\n}\n\n// fetch the JSON version data (only once), then use it to populate the version\n// switcher and maybe show the version warning bar\nvar versionSwitcherBtns = document.querySelectorAll(\n \".version-switcher__button\"\n);\nconst hasSwitcherMenu = versionSwitcherBtns.length > 0;\nconst hasVersionsJSON = DOCUMENTATION_OPTIONS.hasOwnProperty(\n \"theme_switcher_json_url\"\n);\nconst wantsWarningBanner = DOCUMENTATION_OPTIONS.show_version_warning_banner;\n\nif (hasVersionsJSON && (hasSwitcherMenu || wantsWarningBanner)) {\n const data = await fetchVersionSwitcherJSON(\n DOCUMENTATION_OPTIONS.theme_switcher_json_url\n );\n populateVersionSwitcher(data, versionSwitcherBtns);\n if (wantsWarningBanner) {\n showVersionWarningBanner(data);\n }\n}\n\n/*******************************************************************************\n * Call functions after document loading.\n */\n\ndocumentReady(addModeListener);\ndocumentReady(scrollToActive);\ndocumentReady(addTOCInteractivity);\ndocumentReady(setupSearchButtons);\ndocumentReady(initRTDObserver);\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// startup\n// Load entry module and return exports\n// This entry module used 'module' so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(937);\n"],"names":["webpackQueues","webpackExports","webpackError","resolveQueue","validate","version","test","semver","compare","v1","v2","operator","assertValidOperator","res","n1","validateAndParse","n2","p1","pop","p2","r","compareSegments","split","compareVersions","operatorResMap","includes","TypeError","match","Error","shift","isWildcard","s","tryParse","v","n","parseInt","isNaN","compareStrings","a","b","ap","bp","String","forceType","i","Math","max","length","allowedOperators","Object","keys","op","indexOf","join","documentReady","callback","document","readyState","addEventListener","prefersDark","window","matchMedia","autoTheme","e","documentElement","dataset","theme","matches","setTheme","mode","console","error","colorScheme","querySelectorAll","forEach","el","classList","add","remove","localStorage","setItem","log","onchange","cycleMode","defaultMode","currentMode","getItem","arr","nextPosition","addModeListener","addTOCInteractivity","navLink","parentElement","scrollToActive","querySelector","sidebar","storedScrollTop","sessionStorage","active_pages","latest_active","offset","getBoundingClientRect","y","innerHeight","buffer","scrollTop","clientHeight","findSearchInput","forms","toggleSearchField","input","searchPopupWrapper","toggle","activeElement","blur","focus","select","scrollIntoView","block","useCommandKey","navigator","platform","async","checkPageExistsAndRedirect","event","preventDefault","currentFilePath","DOCUMENTATION_OPTIONS","pagename","tryUrl","currentTarget","getAttribute","otherDocsHomepage","replace","fetch","method","ok","location","href","err","fetchVersionSwitcherJSON","url","result","URL","origin","response","json","populateVersionSwitcher","data","versionSwitcherBtns","btn","hasMatchingPreferredEntry","map","entry","theme_switcher_version_match","preferred","name","some","Boolean","foundMatch","anchor","createElement","setAttribute","span","textContent","appendChild","matchesAndIsPreferred","matchesAndIsFirst","innerText","menu","node","cloneNode","onclick","append","showVersionWarningBanner","VERSION","preferredEntries","filter","howMany","preferredVersion","preferredURL","versionsAreComparable","outer","middle","inner","bold","button","isDev","newerThanPreferred","createTextNode","body","prepend","initRTDObserver","MutationObserver","mutationList","observer","mutation","addedNodes","undefined","search","getElementById","observe","childList","hasSwitcherMenu","hasVersionsJSON","hasOwnProperty","wantsWarningBanner","show_version_warning_banner","theme_switcher_json_url","shortcuts","f","changeSearchShortcutKey","shiftKey","altKey","metaKey","ctrlKey","key","overlay","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","Symbol","queue","d","fn","hasAwait","currentDeps","outerResolve","reject","depQueues","Set","promise","Promise","resolve","rej","x","deps","dep","then","obj","ret","wrapDeps","getResult","fnQueue","q","has","push","definition","o","defineProperty","enumerable","get","prop","prototype","call"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/styles/pydata-sphinx-theme.css b/_static/styles/pydata-sphinx-theme.css index db7635b18..7167797aa 100644 --- a/_static/styles/pydata-sphinx-theme.css +++ b/_static/styles/pydata-sphinx-theme.css @@ -1,2 +1,2 @@ -html{--pst-header-height:4rem;--pst-header-article-height:calc(var(--pst-header-height)*2/3);--pst-sidebar-secondary:17rem;--pst-font-size-base:1rem;--pst-font-size-h1:2.5rem;--pst-font-size-h2:2rem;--pst-font-size-h3:1.75rem;--pst-font-size-h4:1.5rem;--pst-font-size-h5:1.25rem;--pst-font-size-h6:1.1rem;--pst-font-size-milli:0.9rem;--pst-sidebar-font-size:0.9rem;--pst-sidebar-font-size-mobile:1.1rem;--pst-sidebar-header-font-size:1.2rem;--pst-sidebar-header-font-weight:600;--pst-admonition-font-weight-heading:600;--pst-font-weight-caption:300;--pst-font-weight-heading:400;--pst-font-family-base-system:-apple-system,BlinkMacSystemFont,Segoe UI,"Helvetica Neue",Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;--pst-font-family-monospace-system:"SFMono-Regular",Menlo,Consolas,Monaco,Liberation Mono,Lucida Console,monospace;--pst-font-family-base:var(--pst-font-family-base-system);--pst-font-family-heading:var(--pst-font-family-base-system);--pst-font-family-monospace:var(--pst-font-family-monospace-system);--pst-font-size-icon:1.5rem;--pst-icon-check-circle:"";--pst-icon-info-circle:"";--pst-icon-exclamation-triangle:"";--pst-icon-exclamation-circle:"";--pst-icon-times-circle:"";--pst-icon-lightbulb:"";--pst-icon-download:"";--pst-icon-angle-left:"";--pst-icon-angle-right:"";--pst-icon-external-link:"";--pst-icon-search-minus:"";--pst-icon-github:"";--pst-icon-gitlab:"";--pst-icon-share:"";--pst-icon-bell:"";--pst-icon-pencil:"";--pst-breadcrumb-divider:"";--pst-icon-admonition-default:var(--pst-icon-bell);--pst-icon-admonition-note:var(--pst-icon-info-circle);--pst-icon-admonition-attention:var(--pst-icon-exclamation-circle);--pst-icon-admonition-caution:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-warning:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-danger:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-error:var(--pst-icon-times-circle);--pst-icon-admonition-hint:var(--pst-icon-lightbulb);--pst-icon-admonition-tip:var(--pst-icon-lightbulb);--pst-icon-admonition-important:var(--pst-icon-exclamation-circle);--pst-icon-admonition-seealso:var(--pst-icon-share);--pst-icon-admonition-todo:var(--pst-icon-pencil);--pst-icon-versionmodified-default:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-added:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-changed:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-deprecated:var(--pst-icon-exclamation-circle);font-size:var(--pst-font-size-base);scroll-padding-top:calc(var(--pst-header-height) + 1rem)}body{background-color:var(--pst-color-background);color:var(--pst-color-text-base);display:flex;flex-direction:column;font-family:var(--pst-font-family-base);font-weight:400;line-height:1.65;min-height:100vh}body::-webkit-scrollbar-track{background:var(--pst-color-background)}p{color:var(--pst-color-text-base);font-size:1em;margin-bottom:1.15rem}p.rubric{border-bottom:1px solid var(--pst-color-border)}p.centered{text-align:center}a{word-wrap:break-word;color:var(--pst-color-link);text-decoration:underline;text-decoration-thickness:max(1px,.0625rem);text-underline-offset:.1578em}a:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration-skip-ink:none;text-decoration-thickness:max(3px,.1875rem,.12em)}a:active,a:visited{color:var(--pst-color-link)}a:visited:hover{color:var(--pst-color-link-hover)}a:focus-visible{outline:2px solid var(--pst-color-accent)}a.headerlink{color:var(--pst-color-secondary);font-size:.8em;margin-left:.2em;opacity:.7;padding:0 4px;text-decoration:none;transition:all .2s ease-out;user-select:none}a.headerlink:hover{opacity:1}a.github:before,a.gitlab:before{color:var(--pst-color-text-muted);font:var(--fa-font-brands);margin-right:.25rem}a.github:before{content:var(--pst-icon-github)}a.gitlab:before{content:var(--pst-icon-gitlab)}.heading-style,h1,h2,h3,h4,h5,h6{font-family:var(--pst-font-family-heading);font-weight:var(--pst-font-weight-heading);line-height:1.15;margin:2.75rem 0 1.05rem}h1{font-size:var(--pst-font-size-h1);margin-top:0}h1,h2{color:var(--pst-heading-color)}h2{font-size:var(--pst-font-size-h2)}h3{font-size:var(--pst-font-size-h3)}h3,h4{color:var(--pst-heading-color)}h4{font-size:var(--pst-font-size-h4)}h5{font-size:var(--pst-font-size-h5)}h5,h6{color:var(--pst-color-text-base)}h6{font-size:var(--pst-font-size-h6)}.text_small,small{font-size:var(--pst-font-size-milli)}hr{border:0;border-top:1px solid var(--pst-color-border)}code,kbd,pre,samp{font-family:var(--pst-font-family-monospace)}kbd{background-color:var(--pst-color-on-background);color:var(--pst-color-text-muted)}kbd:not(.compound){border:1px solid var(--pst-color-border);box-shadow:1px 1px 1px var(--pst-color-shadow);margin:0 .1rem;padding:.1rem .4rem}code{color:var(--pst-color-inline-code)}pre{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem;color:var(--pst-color-text-base);line-height:1.2em;margin:1.5em 0;padding:1rem}pre .linenos{opacity:.8;padding-right:10px}#pst-back-to-top{background-color:var(--pst-color-secondary);border:none;color:var(--pst-color-secondary-text);display:none;left:50vw;position:fixed;top:80vh;transform:translate(-50%);z-index:1080}.skip-link{background-color:var(--pst-color-warning);border-bottom:1px solid var(--pst-color-border);color:var(--pst-color-warning-text)!important;left:0;padding:.5rem;position:fixed;right:0;text-align:center;top:0;transform:translateY(-100%);transition:transform .15s ease-in-out;z-index:1055}.skip-link:focus{outline:3px solid #14181e;transform:translateY(0)}.bd-container{display:flex;flex-grow:1;justify-content:center}.bd-container .bd-container__inner{display:flex}.bd-page-width{width:100%}@media(min-width:960px){.bd-page-width{max-width:88rem}}.bd-header-announcement,.bd-header-version-warning{align-items:center;display:flex;justify-content:center;min-height:3rem;padding:.5rem 12.5%;position:relative;text-align:center;width:100%}@media(max-width:959.98px){.bd-header-announcement,.bd-header-version-warning{padding:.5rem 2%}}.bd-header-announcement p,.bd-header-version-warning p{font-weight:700;margin:0}.bd-header-announcement:after,.bd-header-version-warning:after{content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.bd-header-announcement:empty,.bd-header-version-warning:empty{display:none}.bd-header-announcement a,.bd-header-version-warning a{color:var(--pst-color-inline-code-links)}.bd-header-announcement:after{background-color:var(--pst-color-secondary-bg)}.bd-header-version-warning:after{background-color:var(--pst-color-danger-bg)}.bd-main{display:flex;flex-direction:column;flex-grow:1;min-width:0}.bd-main .bd-content{display:flex;height:100%;justify-content:center}.bd-main .bd-content .bd-article-container{display:flex;flex-direction:column;justify-content:start;max-width:60em;overflow-x:auto;padding:1rem;width:100%}@media(min-width:1200px){.bd-main .bd-content .bd-article-container .bd-article{padding-left:2rem;padding-top:1.5rem}}.bd-footer{border-top:1px solid var(--pst-color-border);width:100%}.bd-footer .bd-footer__inner{display:flex;flex-grow:1;margin:auto;padding:1rem}.bd-footer .footer-items__center,.bd-footer .footer-items__end,.bd-footer .footer-items__start{display:flex;flex-direction:column;flex-grow:1;gap:.5rem;justify-content:center}.bd-footer .footer-items__center{text-align:center}.bd-footer .footer-items__end{text-align:end}.bd-footer .footer-item p{margin-bottom:0}.bd-footer-article{margin-top:auto}.bd-footer-article .footer-article-items{display:flex;flex-direction:column}.bd-footer-content .footer-content-items{display:flex;flex-direction:column;margin-top:auto}.bd-header{background:var(--pst-color-on-background)!important;box-shadow:0 .125rem .25rem 0 var(--pst-color-shadow);justify-content:center;max-width:100vw;padding:0;position:sticky;top:0;width:100%;z-index:1030}.bd-header .bd-header__inner{align-items:center;display:flex;height:fit-content;padding-left:1rem;padding-right:1rem}.bd-header .navbar-item{align-items:center;display:flex;height:var(--pst-header-height);max-height:var(--pst-header-height)}.bd-header .navbar-header-items{flex-shrink:1}@media(min-width:960px){.bd-header .navbar-header-items{display:flex;flex-grow:1;padding:0 0 0 .5rem}}.bd-header .navbar-header-items__center,.bd-header .navbar-header-items__end,.bd-header .navbar-header-items__start{align-items:center;display:flex;flex-flow:wrap;row-gap:0}.bd-header .navbar-header-items__center,.bd-header .navbar-header-items__end{column-gap:1rem}.bd-header .navbar-header-items__start{flex-shrink:0;gap:.5rem;margin-right:auto}.bd-header .navbar-header-items__end{justify-content:end}.bd-header .navbar-nav{display:flex}@media(min-width:960px){.bd-header .navbar-nav{align-items:center}}.bd-header .navbar-nav li a.nav-link{color:var(--pst-color-text-muted);text-decoration:none}.bd-header .navbar-nav li a.nav-link:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.bd-header .navbar-nav li a.nav-link:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-nav>.current>.nav-link{border-bottom:max(3px,.1875rem,.12em) solid var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600}.bd-header .navbar-nav .dropdown button{border:none;color:var(--pst-color-text-muted);display:unset}.bd-header .navbar-nav .dropdown button:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.bd-header .navbar-nav .dropdown button:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-nav .dropdown .dropdown-menu{background-color:var(--pst-color-on-background);border:1px solid var(--pst-color-border);box-shadow:0 0 .3rem .1rem var(--pst-color-shadow);margin:.5rem 0;min-width:20rem;padding:.5rem 0;z-index:1070}.bd-header .navbar-nav .dropdown .dropdown-menu .dropdown-item{padding:.25rem 1.5rem}.bd-header .navbar-nav .dropdown .dropdown-menu .dropdown-item:focus:not(:hover):not(:active){background-color:inherit}.bd-header .navbar-nav .dropdown .dropdown-menu:not(.show){display:none}@media(min-width:960px){.navbar-center-items .navbar-item{display:inline-block}}.nav-link{transition:none}.nav-link:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.nav-link.nav-external:after{content:var(--pst-icon-external-link);font:var(--fa-font-solid);font-size:.75em;margin-left:.3em}.bd-navbar-elements li.nav-item i{font-size:.7rem;padding-left:2px;vertical-align:middle}.bd-header label.sidebar-toggle{align-items:center;color:var(--pst-color-muted);cursor:pointer;display:flex;font-size:var(--pst-font-size-icon);margin-bottom:0;padding-bottom:.25rem}.bd-header label.primary-toggle{margin-right:1rem}@media(min-width:960px){.bd-header label.primary-toggle{display:none}}.bd-header label.secondary-toggle{margin-left:1rem}@media(min-width:1200px){.bd-header label.secondary-toggle{display:none}}.bd-header label:hover{box-shadow:0 max(3px,.1875rem,.12em) 0 var(--pst-color-link-hover);color:var(--pst-color-link-hover)}.bd-header label:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-header-items{display:none}@media(min-width:960px){.bd-header .navbar-header-items{display:inherit}}.navbar-persistent--mobile{margin-left:auto}@media(min-width:960px){.navbar-persistent--mobile{display:none}}.navbar-persistent--container{display:none}@media(min-width:960px){.navbar-persistent--container{display:flex}}.header-article__inner{display:flex;padding:0 .5rem}.header-article__inner .header-article-item{height:var(--pst-header-article-height);min-height:var(--pst-header-article-height)}.header-article__inner .header-article-items__end,.header-article__inner .header-article-items__start{align-items:start;display:flex;gap:.5rem}.header-article__inner .header-article-items__end{margin-left:auto}.bd-sidebar-primary{background-color:var(--pst-color-background);border-right:1px solid var(--pst-color-border);display:flex;flex:0 0 auto;flex-direction:column;font-size:var(--pst-sidebar-font-size-mobile);gap:1rem;max-height:calc(100vh - var(--pst-header-height));overflow-y:auto;padding:2rem 1rem 1rem;position:sticky;top:var(--pst-header-height);width:25%}@media(min-width:960px){.bd-sidebar-primary{font-size:var(--pst-sidebar-font-size)}}.bd-sidebar-primary .nav-link{font-size:var(--pst-sidebar-font-size-mobile)}.bd-sidebar-primary.no-sidebar{border-right:0}@media(min-width:960px){.bd-sidebar-primary.hide-on-wide{display:none}}.bd-sidebar-primary h1,.bd-sidebar-primary h2,.bd-sidebar-primary h3,.bd-sidebar-primary h4{color:var(--pst-color-text-base)}.bd-sidebar-primary .sidebar-primary-items__end .sidebar-primary-item,.bd-sidebar-primary .sidebar-primary-items__start .sidebar-primary-item{padding:.5rem 0}.bd-sidebar-primary .sidebar-header-items{display:flex;flex-direction:column}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__title{color:var(--pst-color-text-base);font-size:var(--pst-sidebar-header-font-size);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.bd-sidebar-primary .sidebar-header-items .nav-item.dropdown button{display:none}.bd-sidebar-primary .sidebar-header-items .nav-item.dropdown .dropdown-menu{background-color:inherit;border:none;display:flex;flex-direction:column;font-size:inherit;margin:0;padding:0}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__center{display:flex;flex-direction:column}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__end{align-items:center;display:flex;gap:.5rem}@media(min-width:960px){.bd-sidebar-primary .sidebar-header-items{display:none}}.bd-sidebar-primary .sidebar-primary-items__start{border-top:1px solid var(--pst-color-border)}@media(min-width:960px){.bd-sidebar-primary .sidebar-primary-items__start{border-top:none}}.bd-sidebar-primary .sidebar-primary-items__end{margin-bottom:1em;margin-top:auto}.bd-sidebar-primary .list-caption{list-style:none;padding-left:0}.bd-sidebar-primary li{position:relative}.bd-sidebar-primary li.has-children>.reference{padding-right:30px}.bd-sidebar-primary label.toctree-toggle{align-items:center;cursor:pointer;display:flex;height:30px;justify-content:center;position:absolute;right:0;top:0;width:30px}.bd-sidebar-primary label.toctree-toggle:hover{background:var(--pst-color-surface)}.bd-sidebar-primary label.toctree-toggle i{display:inline-block;font-size:.75rem;text-align:center}.bd-sidebar-primary label.toctree-toggle i:hover{color:var(--pst-color-primary)}.bd-sidebar-primary .label-parts{height:100%;width:100%}.bd-sidebar-primary .label-parts:hover{background:none}.bd-sidebar-primary .label-parts i{position:absolute;right:0;top:.3em;width:30px}nav.bd-links{margin-right:-1rem}@media(min-width:960px){nav.bd-links{display:block}}nav.bd-links ul{list-style:none}nav.bd-links ul ul{padding:0 0 0 1rem}nav.bd-links li>a{box-shadow:none;color:var(--pst-color-text-muted);display:block;padding:.25rem .65rem;text-decoration:none}nav.bd-links li>a:hover{text-decoration-skip:none;background-color:transparent;text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(3px,.1875rem,.12em)}nav.bd-links li>a:active,nav.bd-links li>a:hover{color:var(--pst-color-link-hover)}nav.bd-links li>a.reference.external:after{content:var(--pst-icon-external-link);font:var(--fa-font-solid);font-size:.75em;margin-left:.3em}nav.bd-links .current>a{background-color:transparent;box-shadow:inset max(3px,.1875rem,.12em) 0 0 var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600}nav.bd-links p.bd-links__title{font-size:var(--pst-sidebar-header-font-size)}nav.bd-links p.bd-links__title,nav.bd-links p.caption{font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}nav.bd-links p.caption{color:var(--pst-color-text-base);font-size:var(--pst-sidebar-font-size-mobile);margin-top:1.25rem;position:relative}nav.bd-links p.caption:first-child{margin-top:0}@media(min-width:960px){nav.bd-links p.caption{font-size:var(--pst-sidebar-font-size)}}.bd-sidebar-secondary{background-color:var(--pst-color-background);display:flex;flex-direction:column;flex-shrink:0;font-size:var(--pst-sidebar-font-size-mobile);max-height:calc(100vh - var(--pst-header-height));order:2;overflow-y:auto;padding:2rem 1rem 1rem;position:sticky;top:var(--pst-header-height);width:var(--pst-sidebar-secondary)}@media(min-width:1200px){.bd-sidebar-secondary{font-size:var(--pst-sidebar-font-size)}}.sidebar-secondary-item{padding:.5rem}@media(min-width:1200px){.sidebar-secondary-item{border-left:1px solid var(--pst-color-border);padding-left:1rem}}.sidebar-secondary-item i{padding-right:.5rem}input.sidebar-toggle{display:none}label.overlay{background-color:#000;height:0;left:0;opacity:.5;position:fixed;top:0;transition:opacity .2s ease-out;width:0;z-index:1050}input#__primary:checked+label.overlay.overlay-primary,input#__secondary:checked+label.overlay.overlay-secondary{height:100vh;width:100vw}input#__primary:checked~.bd-container .bd-sidebar-primary{margin-left:0;visibility:visible}input#__secondary:checked~.bd-container .bd-sidebar-secondary{margin-right:0;visibility:visible}@media(min-width:960px){label.sidebar-toggle.primary-toggle{display:none}input#__primary:checked+label.overlay.overlay-primary{height:0;width:0}.bd-sidebar-primary{margin-left:0;visibility:visible}}@media(max-width:959.98px){.bd-sidebar-primary{flex-grow:.75;height:100vh;left:0;margin-left:-75%;max-height:100vh;max-width:350px;position:fixed;top:0;transition:visibility .2s ease-out,margin .2s ease-out;visibility:hidden;width:75%;z-index:1055}}@media(max-width:1199.98px){.bd-sidebar-secondary{flex-grow:.75;height:100vh;margin-right:-75%;max-height:100vh;max-width:350px;position:fixed;right:0;top:0;transition:visibility .2s ease-out,margin .2s ease-out;visibility:hidden;width:75%;z-index:1055}}ul.bd-breadcrumbs{display:flex;flex-wrap:wrap;font-size:.8rem;list-style:none;padding-left:0}ul.bd-breadcrumbs li.breadcrumb-item{align-items:baseline;display:flex;font-weight:700}ul.bd-breadcrumbs li.breadcrumb-item a{color:var(--pst-color-text-muted);text-decoration:none}ul.bd-breadcrumbs li.breadcrumb-item a:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}ul.bd-breadcrumbs li.breadcrumb-item a:focus-visible{outline:2px solid var(--pst-color-accent)}ul.bd-breadcrumbs li.breadcrumb-item:not(.breadcrumb-home):before{color:var(--pst-color-text-muted);content:var(--pst-breadcrumb-divider);font:var(--fa-font-solid);font-size:.8rem;padding:0 .5rem}.navbar-icon-links{column-gap:1rem;display:flex;flex-direction:row;flex-wrap:wrap}.navbar-icon-links li.nav-item a.nav-link{padding-left:0;padding-right:0}.navbar-icon-links li.nav-item a.nav-link:hover{box-shadow:0 max(3px,.1875rem,.12em) 0 var(--pst-color-link-hover);color:var(--pst-color-link-hover)}.navbar-icon-links a span{align-items:center;display:flex}.navbar-icon-links i.fa-brands,.navbar-icon-links i.fa-regular,.navbar-icon-links i.fa-solid{font-size:var(--pst-font-size-icon);font-style:normal;vertical-align:middle}.navbar-icon-links i.fa-square-twitter:before{color:#55acee}.navbar-icon-links i.fa-square-gitlab:before{color:#548}.navbar-icon-links i.fa-bitbucket:before{color:#0052cc}.navbar-icon-links img.icon-link-image{border-radius:.2rem;height:1.5em}.navbar-brand{align-items:center;display:flex;flex-shrink:0;gap:.5rem;height:var(--pst-header-height);margin:0;max-height:var(--pst-header-height);padding:.5rem 0;position:relative;width:auto}.navbar-brand p{margin-bottom:0}.navbar-brand img{height:100%;max-width:100%;width:auto}.navbar-brand a{text-decoration:none}.navbar-brand:hover:hover,.navbar-brand:visited:hover:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.navbar-nav ul{display:block;list-style:none}.navbar-nav ul ul{padding:0 0 0 1rem}.navbar-nav li{display:flex;flex-direction:column}.navbar-nav li a{align-items:center;color:var(--pst-color-text-muted);display:flex;height:100%;padding-bottom:.25rem;padding-top:.25rem;text-decoration:none}.navbar-nav li a:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.navbar-nav li a:focus-visible{outline:2px solid var(--pst-color-accent)}.navbar-nav .toctree-checkbox{display:none;position:absolute}.navbar-nav .toctree-checkbox~ul{display:none}.navbar-nav .toctree-checkbox~label i{transform:rotate(0deg)}.navbar-nav .toctree-checkbox:checked~ul{display:block}.navbar-nav .toctree-checkbox:checked~label i{transform:rotate(180deg)}.bd-header .navbar-nav>p.sidebar-header-items__title{display:none}.page-toc .section-nav{border-bottom:none;padding-left:0}.page-toc .section-nav ul{padding-left:1rem}.page-toc .nav-link{font-size:var(--pst-sidebar-font-size-mobile)}@media(min-width:1200px){.page-toc .nav-link{font-size:var(--pst-sidebar-font-size)}}.page-toc .onthispage{color:var(--pst-color-text-base);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.prev-next-area{width:100%}.prev-next-area p{line-height:1.3em;margin:0 .3em}.prev-next-area i{font-size:1.2em}.prev-next-area a{align-items:center;border:none;color:var(--pst-color-text-muted);display:flex;max-width:45%;overflow-x:hidden;padding:10px;text-decoration:none}.prev-next-area a p.prev-next-title{word-wrap:break-word;color:var(--pst-color-link);font-size:1.1em;font-weight:var(--pst-admonition-font-weight-heading);text-decoration:underline;text-decoration-thickness:max(1px,.0625rem);text-underline-offset:.1578em}.prev-next-area a p.prev-next-title:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration-skip-ink:none;text-decoration-thickness:max(3px,.1875rem,.12em)}.prev-next-area a p.prev-next-title:active,.prev-next-area a p.prev-next-title:visited{color:var(--pst-color-link)}.prev-next-area a p.prev-next-title:visited:hover{color:var(--pst-color-link-hover)}.prev-next-area a p.prev-next-title:focus-visible{outline:2px solid var(--pst-color-accent)}.prev-next-area a:hover p.prev-next-title:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.prev-next-area a:visited p.prev-next-title{color:var(--pst-color-link)}.prev-next-area a:visited p.prev-next-title:hover{color:var(--pst-color-link-hover)}.prev-next-area a .prev-next-info{flex-direction:column;margin:0 .5em}.prev-next-area a .prev-next-info .prev-next-subtitle{text-transform:capitalize}.prev-next-area a.left-prev{float:left}.prev-next-area a.right-next{float:right}.prev-next-area a.right-next div.prev-next-info{text-align:right}.bd-search{border:1px solid var(--pst-color-border);border-radius:.25rem;color:var(--pst-color-text-base);gap:.5rem;padding-left:.5rem;position:relative}.bd-search,.bd-search:active{background-color:var(--pst-color-background)}.bd-search:active{color:var(--pst-color-text-muted)}.bd-search .icon{color:var(--pst-color-border);left:25px;position:absolute}.bd-search .fa-solid.fa-magnifying-glass{color:var(--pst-color-text-muted);left:calc(1.25rem - .35em);position:absolute}.bd-search input::placeholder{color:var(--pst-color-text-muted)}.bd-search input::-webkit-search-cancel-button,.bd-search input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.bd-search .search-button__kbd-shortcut{color:var(--pst-color-border);display:flex;position:absolute;right:.5rem}.form-control{background-color:var(--pst-color-background);color:var(--pst-color-text-base)}.form-control:focus,.form-control:focus-visible{background-color:var(--pst-color-background);border:none;box-shadow:none;color:var(--pst-color-text-muted);outline:3px solid var(--pst-color-accent)}.search-button{align-content:center;align-items:center;border-radius:0;color:var(--pst-color-text-muted);display:flex;padding:0 0 .25rem}.search-button:hover{box-shadow:0 max(3px,.1875rem,.12em) 0 var(--pst-color-link-hover);color:var(--pst-color-link-hover)}.search-button:focus-visible{outline:2px solid var(--pst-color-accent)}.search-button i{font-size:1.3rem}.search-button__overlay,.search-button__search-container{display:none}.search-button__wrapper.show .search-button__search-container{display:flex;left:50%;margin-top:.5rem;max-width:800px;position:fixed;right:1rem;top:30%;transform:translate(-50%,-50%);width:90%;z-index:1055}.search-button__wrapper.show .search-button__overlay{background-color:#000;display:flex;height:100%;left:0;opacity:.5;position:fixed;top:0;width:100%;z-index:1050}.search-button__wrapper.show form.bd-search{flex-grow:1;padding-bottom:0;padding-top:0}.search-button__wrapper.show input,.search-button__wrapper.show svg{font-size:var(--pst-font-size-icon)}.search-button-field{align-items:center;background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:1.5em;color:var(--pst-color-text-muted);display:inline-flex;padding:.5em}.search-button-field:hover{border:2px solid var(--pst-color-link-hover)}.search-button-field:focus-visible{border:2px solid var(--pst-color-accent)}.search-button-field .search-button__default-text{font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);margin-left:.5em;margin-right:.5em}.search-button-field .kbd-shortcut__modifier{font-size:.75em}.search-button-field>*{align-items:center}.search-button-field>:not(svg){display:none}@media(min-width:960px){.search-button-field>:not(svg){display:flex}}div#searchbox p.highlight-link{box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;margin:1rem 0;width:fit-content}@media(min-width:1200px){div#searchbox p.highlight-link{margin-left:2rem}}div#searchbox p.highlight-link a{background-color:var(--pst-color-primary);border-radius:.25rem;color:var(--pst-color-primary-text);font-size:1.25rem;padding:.75rem;text-decoration:none;transition:box-shadow .25s ease-out}div#searchbox p.highlight-link a:hover{box-shadow:inset 0 0 50px 50px rgba(0,0,0,.25)}div#searchbox p.highlight-link a:before{color:unset;content:var(--pst-icon-search-minus);font:var(--fa-font-solid);margin-right:.5rem}.theme-switch-button{border-radius:0;color:var(--pst-color-text-muted);margin:0 -.5rem;padding:0}.theme-switch-button:focus-visible{outline:2px solid var(--pst-color-accent)}.theme-switch-button span{display:none;padding:.5em}.theme-switch-button span:hover{box-shadow:0 max(3px,.1875rem,.12em) 0 var(--pst-color-link-hover);color:var(--pst-color-link-hover)}.theme-switch-button span:active{color:var(--pst-color-link-hover);text-decoration:none}html[data-mode=auto] .theme-switch-button span[data-mode=auto],html[data-mode=dark] .theme-switch-button span[data-mode=dark],html[data-mode=light] .theme-switch-button span[data-mode=light]{display:flex}button.btn.version-switcher__button{border-color:var(--pst-color-border);color:var(--pst-color-text-base);margin-bottom:1em}@media(min-width:960px){button.btn.version-switcher__button{margin-bottom:unset}}button.btn.version-switcher__button:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}button.btn.version-switcher__button:focus-visible{outline:2px solid var(--pst-color-accent)}button.btn.version-switcher__button:active{border-color:var(--pst-color-border);color:var(--pst-color-text-base)}.version-switcher__menu{border-color:var(--pst-color-border);border-radius:var(--bs-dropdown-border-radius)}.version-switcher__menu a.list-group-item{background-color:var(--pst-color-on-background);color:var(--pst-color-text-base);padding:.75rem 1.25rem}.version-switcher__menu a.list-group-item:not(:last-child){border-bottom:1px solid var(--pst-color-border)}.version-switcher__menu a.list-group-item:hover{text-decoration-skip:none;background-color:var(--pst-color-surface);color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.version-switcher__menu a.list-group-item.active{box-shadow:inset max(3px,.1875rem,.12em) 0 0 var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600;position:relative;z-index:1}.version-switcher__menu a.list-group-item.active span:before{content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.version-switcher__menu,button.version-switcher__button{font-size:1.1em;z-index:1055}@media(min-width:960px){.version-switcher__menu,button.version-switcher__button{font-size:unset}}nav.page-toc{margin-bottom:1rem}.bd-toc .nav .nav,.list-caption .nav{display:none}.bd-toc .nav .nav.visible,.bd-toc .nav>.active>ul,.list-caption .nav.visible,.list-caption>.active>ul,.toc-entry{display:block}.toc-entry a.nav-link,.toc-entry a>code{color:var(--pst-color-text-muted)}.toc-entry a.nav-link{display:block;margin-left:-1rem;padding:.125rem 0 .125rem 1rem;text-decoration:none}.toc-entry a.nav-link:hover{text-decoration-skip:none;background-color:transparent;text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(3px,.1875rem,.12em)}.toc-entry a.nav-link:active,.toc-entry a.nav-link:hover{color:var(--pst-color-link-hover)}.toc-entry a.nav-link.active{background-color:transparent;box-shadow:inset max(3px,.1875rem,.12em) 0 0 var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600}.toc-entry a.nav-link.active:hover{color:var(--pst-color-link-hover)}div.deprecated,div.versionadded,div.versionchanged{background-color:var(--pst-color-on-background);border-left:.2rem solid;border-color:var(--pst-color-info);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;margin:1.5625em auto;overflow:hidden;padding:0 .6rem;page-break-inside:avoid;position:relative;vertical-align:middle}div.deprecated>p,div.versionadded>p,div.versionchanged>p{margin-bottom:.6rem;margin-top:.6rem}div.versionadded{background-color:var(--pst-color-success-bg);border-color:var(--pst-color-success)}div.versionchanged{background-color:var(--pst-color-warning-bg);border-color:var(--pst-color-warning)}div.deprecated{background-color:var(--pst-color-danger-bg);border-color:var(--pst-color-danger)}span.versionmodified{font-weight:600}span.versionmodified:before{color:var(--pst-color-info);content:var(--pst-icon-versionmodified-default);font:var(--fa-font-solid);margin-right:.6rem}span.versionmodified.added:before{color:var(--pst-color-success);content:var(--pst-icon-versionmodified-added)}span.versionmodified.changed:before{color:var(--pst-color-warning);content:var(--pst-icon-versionmodified-changed)}span.versionmodified.deprecated:before{color:var(--pst-color-danger);content:var(--pst-icon-versionmodified-deprecated)}.sidebar-indices-items{border-top:1px solid var(--pst-color-border);display:flex;flex-direction:column}@media(min-width:960px){.sidebar-indices-items{border-top:none}}.sidebar-indices-items .sidebar-indices-items__title{color:var(--pst-color-text-base);font-size:var(--pst-sidebar-header-font-size);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.sidebar-indices-items ul.indices-link{list-style:none;margin-right:-1rem;padding:0}.sidebar-indices-items ul.indices-link li>a{color:var(--pst-color-text-muted);display:block;padding:.25rem 0}.sidebar-indices-items ul.indices-link li>a:hover{background-color:transparent;color:var(--pst-color-primary);text-decoration:none}.bd-sidebar-primary div#rtd-footer-container{bottom:-1rem;margin:-1rem;position:sticky}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge{font-family:var(--pst-font-family-base);font-size:.9em;max-width:unset;position:unset}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .rst-current-version{align-items:center;background-color:var(--pst-color-background);border-top:1px solid var(--pst-color-border);color:var(--pst-color-success);display:flex;gap:.2rem;height:2.5rem;transition:background-color .2s ease-out}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-book{color:var(--pst-color-text-muted);margin-right:auto}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-book:after{color:var(--pst-color-text-base);content:"Read The Docs";font-family:var(--pst-font-family-base);font-weight:var(--pst-admonition-font-weight-heading)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-caret-down{color:var(--pst-color-text-muted)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge.shift-up .rst-current-version{border-bottom:1px solid var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions{background-color:var(--pst-color-surface);color:var(--pst-color-text-base)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions dl dd a{color:var(--pst-color-text-muted)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions hr{background-color:var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions small a{color:var(--pst-color-link)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions input{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);padding-left:.5rem}.admonition,div.admonition{background-color:var(--pst-color-on-background);border-left:.2rem solid;border-color:var(--pst-color-info);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;margin:1.5625em auto;overflow:hidden;padding:0 .6rem .8rem;page-break-inside:avoid}.admonition :last-child,div.admonition :last-child{margin-bottom:0}.admonition p.admonition-title~*,div.admonition p.admonition-title~*{margin-left:1.4rem;margin-right:1.4rem}.admonition>ol,.admonition>ul,div.admonition>ol,div.admonition>ul{margin-left:1em}.admonition>.admonition-title,div.admonition>.admonition-title{font-weight:var(--pst-admonition-font-weight-heading);margin:0 -.6rem;padding:.4rem .6rem .4rem 2rem;position:relative;z-index:1}.admonition>.admonition-title:before,div.admonition>.admonition-title:before{background-color:var(--pst-color-info-bg);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}.admonition>.admonition-title:after,div.admonition>.admonition-title:after{color:var(--pst-color-info);content:var(--pst-icon-admonition-default);font:var(--fa-font-solid);height:1rem;left:.5rem;line-height:inherit;opacity:1;position:absolute;width:1rem}.admonition>.admonition-title+*,div.admonition>.admonition-title+*{margin-top:.4em}.admonition.attention,div.admonition.attention{border-color:var(--pst-color-attention)}.admonition.attention>.admonition-title:before,div.admonition.attention>.admonition-title:before{background-color:var(--pst-color-attention-bg)}.admonition.attention>.admonition-title:after,div.admonition.attention>.admonition-title:after{color:var(--pst-color-attention);content:var(--pst-icon-admonition-attention)}.admonition.caution,div.admonition.caution{border-color:var(--pst-color-warning)}.admonition.caution>.admonition-title:before,div.admonition.caution>.admonition-title:before{background-color:var(--pst-color-warning-bg)}.admonition.caution>.admonition-title:after,div.admonition.caution>.admonition-title:after{color:var(--pst-color-warning);content:var(--pst-icon-admonition-caution)}.admonition.warning,div.admonition.warning{border-color:var(--pst-color-warning)}.admonition.warning>.admonition-title:before,div.admonition.warning>.admonition-title:before{background-color:var(--pst-color-warning-bg)}.admonition.warning>.admonition-title:after,div.admonition.warning>.admonition-title:after{color:var(--pst-color-warning);content:var(--pst-icon-admonition-warning)}.admonition.danger,div.admonition.danger{border-color:var(--pst-color-danger)}.admonition.danger>.admonition-title:before,div.admonition.danger>.admonition-title:before{background-color:var(--pst-color-danger-bg)}.admonition.danger>.admonition-title:after,div.admonition.danger>.admonition-title:after{color:var(--pst-color-danger);content:var(--pst-icon-admonition-danger)}.admonition.error,div.admonition.error{border-color:var(--pst-color-danger)}.admonition.error>.admonition-title:before,div.admonition.error>.admonition-title:before{background-color:var(--pst-color-danger-bg)}.admonition.error>.admonition-title:after,div.admonition.error>.admonition-title:after{color:var(--pst-color-danger);content:var(--pst-icon-admonition-error)}.admonition.hint,div.admonition.hint{border-color:var(--pst-color-success)}.admonition.hint>.admonition-title:before,div.admonition.hint>.admonition-title:before{background-color:var(--pst-color-success-bg)}.admonition.hint>.admonition-title:after,div.admonition.hint>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-hint)}.admonition.tip,div.admonition.tip{border-color:var(--pst-color-success)}.admonition.tip>.admonition-title:before,div.admonition.tip>.admonition-title:before{background-color:var(--pst-color-success-bg)}.admonition.tip>.admonition-title:after,div.admonition.tip>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-tip)}.admonition.important,div.admonition.important{border-color:var(--pst-color-attention)}.admonition.important>.admonition-title:before,div.admonition.important>.admonition-title:before{background-color:var(--pst-color-attention-bg)}.admonition.important>.admonition-title:after,div.admonition.important>.admonition-title:after{color:var(--pst-color-attention);content:var(--pst-icon-admonition-important)}.admonition.note,div.admonition.note{border-color:var(--pst-color-info)}.admonition.note>.admonition-title:before,div.admonition.note>.admonition-title:before{background-color:var(--pst-color-info-bg)}.admonition.note>.admonition-title:after,div.admonition.note>.admonition-title:after{color:var(--pst-color-info);content:var(--pst-icon-admonition-note)}.admonition.seealso,div.admonition.seealso{border-color:var(--pst-color-success)}.admonition.seealso>.admonition-title:before,div.admonition.seealso>.admonition-title:before{background-color:var(--pst-color-success-bg)}.admonition.seealso>.admonition-title:after,div.admonition.seealso>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-seealso)}.admonition.admonition-todo,div.admonition.admonition-todo{border-color:var(--pst-color-secondary)}.admonition.admonition-todo>.admonition-title:before,div.admonition.admonition-todo>.admonition-title:before{background-color:var(--pst-color-secondary-bg)}.admonition.admonition-todo>.admonition-title:after,div.admonition.admonition-todo>.admonition-title:after{color:var(--pst-color-secondary);content:var(--pst-icon-admonition-todo)}.admonition.sidebar,div.admonition.sidebar{border-width:0 0 0 .2rem;clear:both;float:right;margin-left:.5rem;margin-top:0;max-width:40%}.admonition.sidebar.attention,.admonition.sidebar.important,div.admonition.sidebar.attention,div.admonition.sidebar.important{border-color:var(--pst-color-attention)}.admonition.sidebar.caution,.admonition.sidebar.warning,div.admonition.sidebar.caution,div.admonition.sidebar.warning{border-color:var(--pst-color-warning)}.admonition.sidebar.danger,.admonition.sidebar.error,div.admonition.sidebar.danger,div.admonition.sidebar.error{border-color:var(--pst-color-danger)}.admonition.sidebar.hint,.admonition.sidebar.seealso,.admonition.sidebar.tip,div.admonition.sidebar.hint,div.admonition.sidebar.seealso,div.admonition.sidebar.tip{border-color:var(--pst-color-success)}.admonition.sidebar.note,.admonition.sidebar.todo,div.admonition.sidebar.note,div.admonition.sidebar.todo{border-color:var(--pst-color-info)}.admonition.sidebar p.admonition-title~*,div.admonition.sidebar p.admonition-title~*{margin-left:0;margin-right:0}aside.topic,div.topic,div.topic.contents,nav.contents{background-color:var(--pst-color-surface);border-color:var(--pst-color-border);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;display:flex;flex-direction:column;padding:1rem 1.25rem}aside.topic .topic-title,div.topic .topic-title,div.topic.contents .topic-title,nav.contents .topic-title{margin:0 0 .5rem}aside.topic p,div.topic p,div.topic.contents p,nav.contents p{color:var(--pst-color-on-surface)!important}aside.topic ul.simple,div.topic ul.simple,div.topic.contents ul.simple,nav.contents ul.simple{padding-left:1rem}aside.topic ul.simple ul,div.topic ul.simple ul,div.topic.contents ul.simple ul,nav.contents ul.simple ul{padding-left:2em}aside.sidebar{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem;margin-left:.5rem;padding:0}aside.sidebar>:last-child{padding-bottom:1rem}aside.sidebar p.sidebar-title{border-bottom:1px solid var(--pst-color-border);font-family:var(--pst-font-family-heading);font-weight:var(--pst-admonition-font-weight-heading);margin-bottom:0;padding-bottom:.5rem;padding-top:.5rem;position:relative}aside.sidebar>:not(.sidebar-title):first-child,aside.sidebar>p.sidebar-title+*{margin-top:1rem}aside.sidebar>*{padding-left:1rem;padding-right:1rem}p.rubric{display:flex;flex-direction:column}.seealso dd{margin-bottom:0;margin-top:0}table.field-list{border-collapse:separate;border-spacing:10px;margin-left:1px}table.field-list th.field-name{background-color:var(--pst-color-surface);padding:1px 8px 1px 5px;white-space:nowrap}table.field-list td.field-body p{font-style:italic}table.field-list td.field-body p>strong{font-style:normal}table.field-list td.field-body blockquote{border-left:none;margin:0 0 .3em;padding-left:30px}.table.autosummary td:first-child{white-space:nowrap}.sig{font-family:var(--pst-font-family-monospace)}.sig-inline.c-texpr,.sig-inline.cpp-texpr{font-family:unset}.sig.c .k,.sig.c .kt,.sig.c .m,.sig.c .s,.sig.c .sc,.sig.cpp .k,.sig.cpp .kt,.sig.cpp .m,.sig.cpp .s,.sig.cpp .sc{color:var(--pst-color-text-base)}.sig-name{color:var(--pst-color-inline-code)}.sig-param .default_value,.sig-param .o{color:var(--pst-color-text-muted);font-weight:400}dt:target,span.highlighted{background-color:var(--pst-color-target)}.viewcode-back{font-family:var(--pst-font-family-base)}.viewcode-block:target{background-color:var(--pst-color-target);border-bottom:1px solid var(--pst-color-border);border-top:1px solid var(--pst-color-border);position:relative}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd{margin-left:2rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd>dl.simple>dt{display:flex}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl.field-list{display:grid;grid-template-columns:unset}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt.field-even,dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt.field-odd{background-color:var(--pst-color-surface);margin-bottom:.1rem;margin-top:.2rem}div.highlight,div.literal-block-wrapper,div[class*=highlight-]{border-radius:.25rem;display:flex;flex-direction:column;width:unset}div.literal-block-wrapper{border:1px solid var(--pst-color-border);border-radius:.25rem}div.literal-block-wrapper div.code-block-caption{border-bottom:1px solid var(--pst-color-border);font-size:1rem;font-weight:var(--pst-font-weight-caption);margin:0;padding:.5rem}div.literal-block-wrapper div.code-block-caption a.headerlink{font-size:inherit}div.literal-block-wrapper div[class*=highlight-]{border-radius:0;margin:0}div.literal-block-wrapper div[class*=highlight-] pre{border:none;box-shadow:none}code.literal{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem;padding:.1rem .25rem}a>code{color:var(--pst-color-inline-code-links)}html[data-theme=light] .highlight .nf{color:#0078a1!important}span.linenos{opacity:.8!important}figure a.headerlink{font-size:inherit;position:absolute}figure:hover a.headerlink{visibility:visible}figure figcaption{color:var(--pst-color-text-muted);font-family:var(--pst-font-family-heading);font-weight:var(--pst-font-weight-caption);margin-left:auto;margin-right:auto}figure figcaption table.table{margin-left:auto;margin-right:auto;width:fit-content}dt.label>span.brackets:not(:only-child):before{content:"["}dt.label>span.brackets:not(:only-child):after{content:"]"}a.footnote-reference{font-size:small;vertical-align:super}aside.footnote{margin-bottom:.5rem}aside.footnote:last-child{margin-bottom:1rem}aside.footnote span.backrefs,aside.footnote span.label{font-weight:700}aside.footnote:target{background-color:var(--pst-color-target)}div.doctest>div.highlight span.gp,span.linenos,table.highlighttable td.linenos{user-select:none;-webkit-user-select:text;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}dd{margin-bottom:10px;margin-left:30px;margin-top:3px}ol,ul{padding-inline-start:2rem}ol li>p:first-child,ul li>p:first-child{margin-bottom:.25rem;margin-top:.25rem}blockquote{border-left:.25em solid var(--pst-color-border);border-radius:.25rem;color:var(--pst-color-text-muted);padding:1em;position:relative}blockquote p{color:var(--pst-color-text-base)}blockquote .line-block{margin:0}blockquote p:last-child{margin-bottom:0}blockquote:before{background-color:var(--pst-color-on-background);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}span.guilabel{border:1px solid var(--pst-color-info);border-radius:4px;color:var(--pst-color-info);font-size:80%;font-weight:700;margin:auto 2px;padding:2.4px 6px;position:relative}span.guilabel:before{background-color:var(--pst-color-info-bg);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}a.reference.download:before{color:var(--pst-color-text-muted);content:var(--pst-icon-download);font:var(--fa-font-solid);font-size:.8em;padding:0 .25em}table{display:table;margin-left:auto;margin-right:auto;overflow:auto}table.table-right{margin-right:0}table.table-left{margin-left:0}table caption{caption-side:top;color:var(--pst-color-text-muted);text-align:center}td.text-align\:left,th.text-align\:left{text-align:left}td.text-align\:right,th.text-align\:right{text-align:right}td.text-align\:center,th.text-align\:center{text-align:center}.table{--bs-table-bg:transparent}.toctree-wrapper p.caption{font-size:1.5em;margin-bottom:0}.toctree-wrapper>ul{padding-left:0}.toctree-wrapper li[class^=toctree-l]{list-style:none;margin-bottom:.2em}.toctree-wrapper li[class^=toctree-l]>a{font-size:1.1em;list-style:none}.toctree-wrapper li[class^=toctree-l]>ul{list-style:none;padding-inline-start:1.5em}.toctree-wrapper .toctree-l1>a{font-size:1.3em}div.topic.contents ul.simple,nav.contents ul.simple{list-style:none;padding-left:0}div.math,span.math{align-items:center;display:flex;max-width:100%;overflow:hidden}span.math{display:inline-flex}div.math{flex-direction:row-reverse;gap:.5em}div.math span.eqno a.headerlink{font-size:1em;position:relative}div.math mjx-container{flex-grow:1;overflow:auto;padding-bottom:.2rem}div.math mjx-container mjx-assistive-mml{height:0}.ablog-sidebar-item h2,.ablog-sidebar-item h3{font-size:var(--pst-sidebar-header-font-size);margin-top:.5rem}.ablog-sidebar-item h2 a,.ablog-sidebar-item h3 a{color:var(--pst-color-text-base)}.ablog-sidebar-item ul{display:flex;flex-direction:column;gap:.5em;list-style:none;margin-bottom:0;overflow-y:hidden;padding-left:0}.ablog-sidebar-item ul.ablog-cloud{flex-direction:row;flex-flow:wrap;gap:.5rem}.ablog-sidebar-item ul.ablog-cloud li{align-items:center;display:flex}.ablog__prev-next{display:flex;font-size:1.2em;padding:1rem 0}.ablog__prev-next>span{display:flex;max-width:45%}.ablog__prev-next>span a{align-items:center;display:flex;gap:1rem;line-height:1.5rem;margin-left:auto}.ablog__prev-next>span a i:before{color:var(--pst-color-text-base)}.ablog__prev-next span.ablog__prev i.fa-arrow-circle-left:before{content:var(--pst-icon-angle-left)}.ablog__prev-next span.ablog__spacer{display:none}.ablog__prev-next span.ablog__next{margin-left:auto;text-align:right}.ablog__prev-next span.ablog__next i.fa-arrow-circle-right:before{content:var(--pst-icon-angle-right)}.ablog__collection,.postlist{padding-left:0}.ablog__collection .ablog-post,.postlist .ablog-post{list-style:none}.ablog__collection .ablog-post .ablog-archive,.postlist .ablog-post .ablog-archive{display:flex;flex-direction:row;flex-wrap:wrap;font-size:.75rem;gap:1rem;list-style:none;padding-left:0}.ablog__collection .ablog-post .ablog-post-title,.postlist .ablog-post .ablog-post-title{font-size:1.25rem;margin-top:0}.ablog__collection .ablog-post .ablog-post-title a,.postlist .ablog-post .ablog-post-title a{font-weight:700}.ablog__collection .ablog-post .ablog-post-expand,.postlist .ablog-post .ablog-post-expand{margin-bottom:.5rem}.docutils.container{margin-left:unset;margin-right:unset;max-width:unset;padding-left:unset;padding-right:unset;width:unset}div.highlight button.copybtn{align-items:center;background-color:unset;background-color:var(--pst-color-surface);border:none;display:flex;justify-content:center}div.highlight button.copybtn:not(.success){color:var(--pst-color-muted)}div.highlight button.copybtn:hover:not(.success){background-color:var(--pst-color-shadow);color:var(--pst-color-text)}div.highlight button.copybtn.o-tooltip--left:after{background-color:var(--pst-color-surface);color:var(--pst-color-text)}#ethical-ad-placement .ethical-footer a,#ethical-ad-placement .ethical-footer a:active,#ethical-ad-placement .ethical-footer a:hover,#ethical-ad-placement .ethical-footer a:visited,#ethical-ad-placement .ethical-sidebar a,#ethical-ad-placement .ethical-sidebar a:active,#ethical-ad-placement .ethical-sidebar a:hover,#ethical-ad-placement .ethical-sidebar a:visited{color:var(--pst-color-text-base)}#ethical-ad-placement .ethical-footer,#ethical-ad-placement .ethical-sidebar{background-color:var(--pst-color-background);border:1px solid var(--pst-color-border);border-radius:5px;color:var(--pst-color-text-base);font-size:14px;line-height:20px}.bd-content div.jupyter_container{background-color:unset;border:none;box-shadow:none}.bd-content div.jupyter_container div.highlight,.bd-content div.jupyter_container div.output{border-radius:.25rem}.bd-content div.jupyter_container div.highlight{background-color:var(--pst-color-surface)}.bd-content div.jupyter_container .cell_input,.bd-content div.jupyter_container .cell_output{border-radius:.25rem}.bd-content div.jupyter_container .cell_input pre,.bd-content div.jupyter_container .cell_output pre{padding:1rem}.xr-wrap[hidden]{display:block!important}:root{--pst-teal-50:#f4fbfc;--pst-teal-100:#e9f6f8;--pst-teal-200:#d0ecf1;--pst-teal-300:#abdde6;--pst-teal-400:#3fb1c5;--pst-teal-500:#0a7d91;--pst-teal-600:#085d6c;--pst-teal-700:#064752;--pst-teal-800:#042c33;--pst-teal-900:#021b1f;--pst-violet-50:#f4eefb;--pst-violet-100:#e0c7ff;--pst-violet-200:#d5b4fd;--pst-violet-300:#b780ff;--pst-violet-400:#9c5ffd;--pst-violet-500:#8045e5;--pst-violet-600:#6432bd;--pst-violet-700:#4b258f;--pst-violet-800:#341a61;--pst-violet-900:#1e0e39;--pst-gray-50:#f9f9fa;--pst-gray-100:#f3f4f5;--pst-gray-200:#e5e7ea;--pst-gray-300:#d1d5da;--pst-gray-400:#9ca4af;--pst-gray-500:#677384;--pst-gray-600:#48566b;--pst-gray-700:#29313d;--pst-gray-800:#222832;--pst-gray-900:#14181e;--pst-pink-50:#fcf8fd;--pst-pink-100:#fcf0fa;--pst-pink-200:#f8dff5;--pst-pink-300:#f3c7ee;--pst-pink-400:#e47fd7;--pst-pink-500:#c132af;--pst-pink-600:#912583;--pst-pink-700:#6e1c64;--pst-pink-800:#46123f;--pst-pink-900:#2b0b27;--pst-foundation-white:#fff;--pst-foundation-black:#14181e}html:not([data-theme]){--pst-color-primary:#0a7d91;--pst-color-primary-bg:#d0ecf1;--pst-color-secondary:#8045e5;--pst-color-secondary-bg:#e0c7ff;--pst-color-accent:#c132af;--pst-color-accent-bg:#f8dff5;--pst-color-info:#276be9;--pst-color-info-bg:#dce7fc;--pst-color-warning:#f66a0a;--pst-color-warning-bg:#f8e3d0;--pst-color-success:#00843f;--pst-color-success-bg:#d6ece1;--pst-color-attention:var(--pst-color-warning);--pst-color-attention-bg:var(--pst-color-warning-bg);--pst-color-danger:#d72d47;--pst-color-danger-bg:#f9e1e4;--pst-color-text-base:#222832;--pst-color-text-muted:#48566b;--pst-color-heading-color:#fff;--pst-color-shadow:rgba(0,0,0,.1);--pst-color-border:#d1d5da;--pst-color-border-muted:rgba(23,23,26,.2);--pst-color-inline-code:#912583;--pst-color-inline-code-links:#085d6c;--pst-color-target:#f3cf95;--pst-color-background:#fff;--pst-color-on-background:#fff;--pst-color-surface:#f3f4f5;--pst-color-on-surface:#222832;--pst-color-link:var(--pst-color-primary);--pst-color-link-hover:var(--pst-color-secondary)}html:not([data-theme]) .only-dark,html:not([data-theme]) .only-dark~figcaption{display:none!important}html[data-theme=light]{--pst-color-primary-bg:#d0ecf1;--pst-color-secondary-bg:#e0c7ff;--pst-color-accent:#c132af;--pst-color-accent-bg:#f8dff5;--pst-color-info-bg:#dce7fc;--pst-color-warning-bg:#f8e3d0;--pst-color-success-bg:#d6ece1;--pst-color-attention:var(--pst-color-warning);--pst-color-attention-bg:var(--pst-color-warning-bg);--pst-color-danger-bg:#f9e1e4;--pst-color-text-base:#222832;--pst-color-text-muted:#48566b;--pst-color-heading-color:#fff;--pst-color-shadow:rgba(0,0,0,.1);--pst-color-border:#d1d5da;--pst-color-border-muted:rgba(23,23,26,.2);--pst-color-inline-code:#912583;--pst-color-inline-code-links:#085d6c;--pst-color-target:#f3cf95;--pst-color-background:#fff;--pst-color-on-background:#fff;--pst-color-surface:#f3f4f5;--pst-color-on-surface:#222832;--pst-color-link:var(--pst-color-primary);--pst-color-link-hover:var(--pst-color-secondary);color-scheme:light}html[data-theme=light] .only-dark,html[data-theme=light] .only-dark~figcaption{display:none!important}html[data-theme=dark]{--pst-color-primary-bg:#042c33;--pst-color-secondary-bg:#341a61;--pst-color-accent:#e47fd7;--pst-color-accent-bg:#46123f;--pst-color-info-bg:#06245d;--pst-color-warning-bg:#652a02;--pst-color-success-bg:#002f17;--pst-color-attention:var(--pst-color-warning);--pst-color-attention-bg:var(--pst-color-warning-bg);--pst-color-danger-bg:#4e111b;--pst-color-text-base:#ced6dd;--pst-color-text-muted:#9ca4af;--pst-color-heading-color:#14181e;--pst-color-shadow:rgba(0,0,0,.2);--pst-color-border:#48566b;--pst-color-border-muted:#29313d;--pst-color-inline-code:#f3c7ee;--pst-color-inline-code-links:#3fb1c5;--pst-color-target:#675c04;--pst-color-background:#14181e;--pst-color-on-background:#222832;--pst-color-surface:#29313d;--pst-color-on-surface:#f3f4f5;--pst-color-link:var(--pst-color-primary);--pst-color-link-hover:var(--pst-color-secondary);color-scheme:dark}html[data-theme=dark] .only-light,html[data-theme=dark] .only-light~figcaption{display:none!important}html[data-theme=dark] img:not(.only-dark):not(.dark-light){filter:brightness(.8) contrast(1.2)}html[data-theme=dark] .bd-content img:not(.only-dark):not(.dark-light){background:#fff;border-radius:.25rem}html[data-theme=dark] .MathJax_SVG *{fill:var(--pst-color-text-base)}.pst-color-primary{color:var(--pst-color-primary)}.pst-color-secondary{color:var(--pst-color-secondary)}.pst-color-accent{color:var(--pst-color-accent)}.pst-color-info{color:var(--pst-color-info)}.pst-color-warning{color:var(--pst-color-warning)}.pst-color-success{color:var(--pst-color-success)}.pst-color-attention{color:var(--pst-color-attention)}.pst-color-danger{color:var(--pst-color-danger)}.pst-color-text-base{color:var(--pst-color-text-base)}.pst-color-text-muted{color:var(--pst-color-text-muted)}.pst-color-heading-color{color:var(--pst-color-heading-color)}.pst-color-shadow{color:var(--pst-color-shadow)}.pst-color-border{color:var(--pst-color-border)}.pst-color-border-muted{color:var(--pst-color-border-muted)}.pst-color-inline-code{color:var(--pst-color-inline-code)}.pst-color-inline-code-links{color:var(--pst-color-inline-code-links)}.pst-color-target{color:var(--pst-color-target)}.pst-color-background{color:var(--pst-color-background)}.pst-color-on-background{color:var(--pst-color-on-background)}.pst-color-surface{color:var(--pst-color-surface)}.pst-color-on-surface{color:var(--pst-color-on-surface)}html[data-theme=light]{--pst-color-primary:#0a7d91;--pst-color-primary-text:#fff;--pst-color-primary-highlight:#053f49;--sd-color-primary:var(--pst-color-primary);--sd-color-primary-text:var(--pst-color-primary-text);--sd-color-primary-highlight:var(--pst-color-primary-highlight);--sd-color-primary-bg:#d0ecf1;--sd-color-primary-bg-text:#14181e;--pst-color-secondary:#8045e5;--pst-color-secondary-text:#fff;--pst-color-secondary-highlight:#591bc2;--sd-color-secondary:var(--pst-color-secondary);--sd-color-secondary-text:var(--pst-color-secondary-text);--sd-color-secondary-highlight:var(--pst-color-secondary-highlight);--sd-color-secondary-bg:#e0c7ff;--sd-color-secondary-bg-text:#14181e;--pst-color-success:#00843f;--pst-color-success-text:#fff;--pst-color-success-highlight:#00381a;--sd-color-success:var(--pst-color-success);--sd-color-success-text:var(--pst-color-success-text);--sd-color-success-highlight:var(--pst-color-success-highlight);--sd-color-success-bg:#d6ece1;--sd-color-success-bg-text:#14181e;--pst-color-info:#276be9;--pst-color-info-text:#fff;--pst-color-info-highlight:#124ab1;--sd-color-info:var(--pst-color-info);--sd-color-info-text:var(--pst-color-info-text);--sd-color-info-highlight:var(--pst-color-info-highlight);--sd-color-info-bg:#dce7fc;--sd-color-info-bg-text:#14181e;--pst-color-warning:#f66a0a;--pst-color-warning-text:#14181e;--pst-color-warning-highlight:#ad4a06;--sd-color-warning:var(--pst-color-warning);--sd-color-warning-text:var(--pst-color-warning-text);--sd-color-warning-highlight:var(--pst-color-warning-highlight);--sd-color-warning-bg:#f8e3d0;--sd-color-warning-bg-text:#14181e;--pst-color-danger:#d72d47;--pst-color-danger-text:#fff;--pst-color-danger-highlight:#9a1d30;--sd-color-danger:var(--pst-color-danger);--sd-color-danger-text:var(--pst-color-danger-text);--sd-color-danger-highlight:var(--pst-color-danger-highlight);--sd-color-danger-bg:#f9e1e4;--sd-color-danger-bg-text:#14181e;--pst-color-light:#f3f4f5;--pst-color-light-text:#14181e;--pst-color-light-highlight:#c9ced2;--sd-color-light:var(--pst-color-light);--sd-color-light-text:var(--pst-color-light-text);--sd-color-light-highlight:var(--pst-color-light-highlight);--sd-color-light-bg:#f7f7f8;--sd-color-light-bg-text:#14181e;--pst-color-muted:#29313d;--pst-color-muted-text:#fff;--pst-color-muted-highlight:#0a0c0f;--sd-color-muted:var(--pst-color-muted);--sd-color-muted-text:var(--pst-color-muted-text);--sd-color-muted-highlight:var(--pst-color-muted-highlight);--sd-color-muted-bg:#5a6c86;--sd-color-muted-bg-text:#fff;--pst-color-dark:#222832;--pst-color-dark-text:#fff;--pst-color-dark-highlight:#030404;--sd-color-dark:var(--pst-color-dark);--sd-color-dark-text:var(--pst-color-dark-text);--sd-color-dark-highlight:var(--pst-color-dark-highlight);--pst-color-black:#14181e;--pst-color-black-text:#fff;--pst-color-black-highlight:#000;--sd-color-black:var(--pst-color-black);--sd-color-black-text:var(--pst-color-black-text);--sd-color-black-highlight:var(--pst-color-black-highlight);--pst-color-white:#fff;--pst-color-white-text:#14181e;--pst-color-white-highlight:#d9d9d9;--sd-color-white:var(--pst-color-white);--sd-color-white-text:var(--pst-color-white-text);--sd-color-white-highlight:var(--pst-color-white-highlight)}html[data-theme=dark]{--pst-color-primary:#3fb1c5;--pst-color-primary-text:#14181e;--pst-color-primary-highlight:#2b7e8d;--sd-color-primary:var(--pst-color-primary);--sd-color-primary-text:var(--pst-color-primary-text);--sd-color-primary-highlight:var(--pst-color-primary-highlight);--sd-color-primary-bg:#042c33;--sd-color-primary-bg-text:#fff;--pst-color-secondary:#9c5ffd;--pst-color-secondary-text:#14181e;--pst-color-secondary-highlight:#6d13fc;--sd-color-secondary:var(--pst-color-secondary);--sd-color-secondary-text:var(--pst-color-secondary-text);--sd-color-secondary-highlight:var(--pst-color-secondary-highlight);--sd-color-secondary-bg:#341a61;--sd-color-secondary-bg-text:#fff;--pst-color-success:#5fb488;--pst-color-success-text:#14181e;--pst-color-success-highlight:#3f8762;--sd-color-success:var(--pst-color-success);--sd-color-success-text:var(--pst-color-success-text);--sd-color-success-highlight:var(--pst-color-success-highlight);--sd-color-success-bg:#002f17;--sd-color-success-bg-text:#fff;--pst-color-info:#79a3f2;--pst-color-info-text:#14181e;--pst-color-info-highlight:#3373eb;--sd-color-info:var(--pst-color-info);--sd-color-info-text:var(--pst-color-info-text);--sd-color-info-highlight:var(--pst-color-info-highlight);--sd-color-info-bg:#06245d;--sd-color-info-bg-text:#fff;--pst-color-warning:#ff9245;--pst-color-warning-text:#14181e;--pst-color-warning-highlight:#f86600;--sd-color-warning:var(--pst-color-warning);--sd-color-warning-text:var(--pst-color-warning-text);--sd-color-warning-highlight:var(--pst-color-warning-highlight);--sd-color-warning-bg:#652a02;--sd-color-warning-bg-text:#fff;--pst-color-danger:#e78894;--pst-color-danger-text:#14181e;--pst-color-danger-highlight:#da485b;--sd-color-danger:var(--pst-color-danger);--sd-color-danger-text:var(--pst-color-danger-text);--sd-color-danger-highlight:var(--pst-color-danger-highlight);--sd-color-danger-bg:#4e111b;--sd-color-danger-bg-text:#fff;--pst-color-light:#f3f4f5;--pst-color-light-text:#14181e;--pst-color-light-highlight:#c9ced2;--sd-color-light:var(--pst-color-light);--sd-color-light-text:var(--pst-color-light-text);--sd-color-light-highlight:var(--pst-color-light-highlight);--sd-color-light-bg:#a3abb2;--sd-color-light-bg-text:#14181e;--pst-color-muted:#f3f4f5;--pst-color-muted-text:#14181e;--pst-color-muted-highlight:#c9ced2;--sd-color-muted:var(--pst-color-muted);--sd-color-muted-text:var(--pst-color-muted-text);--sd-color-muted-highlight:var(--pst-color-muted-highlight);--sd-color-muted-bg:#1d222b;--sd-color-muted-bg-text:#fff;--pst-color-dark:#222832;--pst-color-dark-text:#fff;--pst-color-dark-highlight:#030404;--sd-color-dark:var(--pst-color-dark);--sd-color-dark-text:var(--pst-color-dark-text);--sd-color-dark-highlight:var(--pst-color-dark-highlight);--pst-color-black:#14181e;--pst-color-black-text:#fff;--pst-color-black-highlight:#000;--sd-color-black:var(--pst-color-black);--sd-color-black-text:var(--pst-color-black-text);--sd-color-black-highlight:var(--pst-color-black-highlight);--pst-color-white:#fff;--pst-color-white-text:#14181e;--pst-color-white-highlight:#d9d9d9;--sd-color-white:var(--pst-color-white);--sd-color-white-text:var(--pst-color-white-text);--sd-color-white-highlight:var(--pst-color-white-highlight)}html[data-theme=dark],html[data-theme=light]{--sd-color-card-border:var(--pst-color-border)}html[data-theme=light] .sd-shadow-lg,html[data-theme=light] .sd-shadow-md,html[data-theme=light] .sd-shadow-sm,html[data-theme=light] .sd-shadow-xs{box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important}.bd-content .sd-card{border:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-header{background-color:var(--pst-color-panel-background);border-bottom:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-footer{border-top:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-body,.bd-content .sd-card .sd-card-footer{background-color:var(--pst-color-panel-background)}.bd-content .sd-tab-set>input:checked+label{border-color:transparent transparent var(--pst-color-primary);color:var(--pst-color-primary)}.bd-content .sd-tab-set>input:not(:checked)+label:hover{border-color:var(--pst-color-secondary);color:var(--pst-color-secondary)}.bd-content .sd-tab-set>label{border-top:.125rem solid transparent;color:var(--pst-color-text-muted);padding-top:.5em}html .bd-content .sd-tab-set>label:hover{border-color:var(--pst-color-secondary);color:var(--pst-color-secondary)}details.sd-dropdown{border:0!important;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important}details.sd-dropdown summary.sd-card-header{border:0!important}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{border:0}details.sd-dropdown summary.sd-card-header{--pst-sd-dropdown-color:var(--pst-gray-500);--pst-sd-dropdown-bg-color:var(--pst-color-surface);align-items:center;background-color:unset!important;border-left:.2rem solid var(--pst-sd-dropdown-color)!important;display:flex;font-weight:600;padding-bottom:.5rem;padding-top:.5rem;position:relative}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-card-border)}details.sd-dropdown summary.sd-card-header.sd-bg-primary,details.sd-dropdown summary.sd-card-header.sd-bg-primary+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-primary);--pst-sd-dropdown-bg-color:var(--sd-color-primary-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-primary{color:var(--sd-color-primary-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-secondary,details.sd-dropdown summary.sd-card-header.sd-bg-secondary+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-secondary);--pst-sd-dropdown-bg-color:var(--sd-color-secondary-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-secondary{color:var(--sd-color-secondary-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-success,details.sd-dropdown summary.sd-card-header.sd-bg-success+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-success);--pst-sd-dropdown-bg-color:var(--sd-color-success-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-success{color:var(--sd-color-success-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-info,details.sd-dropdown summary.sd-card-header.sd-bg-info+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-info);--pst-sd-dropdown-bg-color:var(--sd-color-info-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-info{color:var(--sd-color-info-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-warning,details.sd-dropdown summary.sd-card-header.sd-bg-warning+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-warning);--pst-sd-dropdown-bg-color:var(--sd-color-warning-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-warning{color:var(--sd-color-warning-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-danger,details.sd-dropdown summary.sd-card-header.sd-bg-danger+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-danger);--pst-sd-dropdown-bg-color:var(--sd-color-danger-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-danger{color:var(--sd-color-danger-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-light,details.sd-dropdown summary.sd-card-header.sd-bg-light+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-light);--pst-sd-dropdown-bg-color:var(--sd-color-light-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-light{color:var(--sd-color-light-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-muted,details.sd-dropdown summary.sd-card-header.sd-bg-muted+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-muted);--pst-sd-dropdown-bg-color:var(--sd-color-muted-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-muted{color:var(--sd-color-muted-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-dark,details.sd-dropdown summary.sd-card-header.sd-bg-dark+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-dark);--pst-sd-dropdown-bg-color:var(--sd-color-dark-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-dark{color:var(--sd-color-dark-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-black,details.sd-dropdown summary.sd-card-header.sd-bg-black+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-black);--pst-sd-dropdown-bg-color:var(--sd-color-black-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-black{color:var(--sd-color-black-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-white,details.sd-dropdown summary.sd-card-header.sd-bg-white+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-white);--pst-sd-dropdown-bg-color:var(--sd-color-white-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-white{color:var(--sd-color-white-bg-text)!important}details.sd-dropdown summary.sd-card-header:before{background-color:var(--pst-sd-dropdown-bg-color);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{background-color:var(--pst-color-on-background);border-bottom-left-radius:calc(.25rem - 1px);border-left:.2rem solid var(--pst-sd-dropdown-color)!important}details.sd-dropdown summary.sd-card-header span.sd-summary-icon{align-items:center;color:var(--pst-sd-dropdown-color)!important;display:inline-flex}details.sd-dropdown summary.sd-card-header span.sd-summary-icon svg{opacity:1}details.sd-dropdown summary.sd-card-header .sd-summary-down,details.sd-dropdown summary.sd-card-header .sd-summary-up{top:.7rem}.bd-content .admonition button.toggle-button{color:inherit}.bd-content details.toggle-details summary{border-left:3px solid var(--pst-color-primary)}html div.rendered_html html .jp-RenderedHTMLCommon table{table-layout:auto}html[data-theme=dark] .bd-content .nboutput .output_area.rendered_html{background-color:var(--pst-color-text-base);border-radius:.25rem;color:var(--pst-color-on-background);padding:.5rem}html[data-theme=dark] .bd-content .nboutput .output_area.stderr{background:var(--pst-color-danger)}div.nblast.container{margin-bottom:1rem}div.cell_output .output{max-width:100%;overflow-x:auto}html[data-theme=dark] .bd-content div.cell_output .text_html,html[data-theme=dark] .bd-content div.cell_output img{background-color:var(--pst-color-text-base);border-radius:.25rem;color:var(--pst-color-on-background);padding:.5rem}.bd-content div.cell_input{display:flex;flex-direction:column;justify-content:stretch}.bd-content div.cell_input,.bd-content div.output{border-radius:.25rem}.bd-content div.output table{table-layout:auto}html[data-theme=dark] .bd-content img.leaflet-tile.leaflet-tile-loaded{border-radius:0;padding:0}.bd-search-container div#search-results>h2{font-size:var(--pst-font-size-icon);margin-top:0}.bd-search-container div#search-results p.search-summary{color:var(--pst-color-text-muted)}.bd-search-container ul.search{list-style:none;margin:0}.bd-search-container ul.search li{background-image:none;border-top:1px solid var(--pst-color-text-muted);margin:1rem 0;padding:1rem 0}.bd-search-container ul.search li>a{font-size:1.2em}.bd-search-container ul.search li div.context,.bd-search-container ul.search li p.context{color:var(--pst-color-text-base);margin:.5em 0 0}.bd-search-container ul.search li div.context a:before,.bd-search-container ul.search li p.context a:before{color:var(--pst-color-text-muted);content:"#";padding-right:.2em} +html{--pst-header-height:4rem;--pst-header-article-height:calc(var(--pst-header-height)*2/3);--pst-sidebar-secondary:17rem;--pst-font-size-base:1rem;--pst-font-size-h1:2.5rem;--pst-font-size-h2:2rem;--pst-font-size-h3:1.75rem;--pst-font-size-h4:1.5rem;--pst-font-size-h5:1.25rem;--pst-font-size-h6:1.1rem;--pst-font-size-milli:0.9rem;--pst-sidebar-font-size:0.9rem;--pst-sidebar-font-size-mobile:1.1rem;--pst-sidebar-header-font-size:1.2rem;--pst-sidebar-header-font-weight:600;--pst-admonition-font-weight-heading:600;--pst-font-weight-caption:300;--pst-font-weight-heading:400;--pst-font-family-base-system:-apple-system,BlinkMacSystemFont,Segoe UI,"Helvetica Neue",Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;--pst-font-family-monospace-system:"SFMono-Regular",Menlo,Consolas,Monaco,Liberation Mono,Lucida Console,monospace;--pst-font-family-base:var(--pst-font-family-base-system);--pst-font-family-heading:var(--pst-font-family-base-system);--pst-font-family-monospace:var(--pst-font-family-monospace-system);--pst-font-size-icon:1.5rem;--pst-icon-check-circle:"";--pst-icon-info-circle:"";--pst-icon-exclamation-triangle:"";--pst-icon-exclamation-circle:"";--pst-icon-times-circle:"";--pst-icon-lightbulb:"";--pst-icon-download:"";--pst-icon-angle-left:"";--pst-icon-angle-right:"";--pst-icon-external-link:"";--pst-icon-search-minus:"";--pst-icon-github:"";--pst-icon-gitlab:"";--pst-icon-share:"";--pst-icon-bell:"";--pst-icon-pencil:"";--pst-breadcrumb-divider:"";--pst-icon-admonition-default:var(--pst-icon-bell);--pst-icon-admonition-note:var(--pst-icon-info-circle);--pst-icon-admonition-attention:var(--pst-icon-exclamation-circle);--pst-icon-admonition-caution:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-warning:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-danger:var(--pst-icon-exclamation-triangle);--pst-icon-admonition-error:var(--pst-icon-times-circle);--pst-icon-admonition-hint:var(--pst-icon-lightbulb);--pst-icon-admonition-tip:var(--pst-icon-lightbulb);--pst-icon-admonition-important:var(--pst-icon-exclamation-circle);--pst-icon-admonition-seealso:var(--pst-icon-share);--pst-icon-admonition-todo:var(--pst-icon-pencil);--pst-icon-versionmodified-default:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-added:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-changed:var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-deprecated:var(--pst-icon-exclamation-circle);font-size:var(--pst-font-size-base);scroll-padding-top:calc(var(--pst-header-height) + 1rem)}body{background-color:var(--pst-color-background);color:var(--pst-color-text-base);display:flex;flex-direction:column;font-family:var(--pst-font-family-base);font-weight:400;line-height:1.65;min-height:100vh}body::-webkit-scrollbar-track{background:var(--pst-color-background)}p{color:var(--pst-color-text-base);font-size:1em;margin-bottom:1.15rem}p.rubric{border-bottom:1px solid var(--pst-color-border)}p.centered{text-align:center}a{word-wrap:break-word;color:var(--pst-color-link);text-decoration:underline;text-decoration-thickness:max(1px,.0625rem);text-underline-offset:.1578em}a:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration-skip-ink:none;text-decoration-thickness:max(3px,.1875rem,.12em)}a:active,a:visited{color:var(--pst-color-link)}a:visited:hover{color:var(--pst-color-link-hover)}a:focus-visible{outline:2px solid var(--pst-color-accent)}a.headerlink{color:var(--pst-color-secondary);font-size:.8em;margin-left:.2em;opacity:.7;padding:0 4px;text-decoration:none;transition:all .2s ease-out;user-select:none}a.headerlink:hover{opacity:1}a.github:before,a.gitlab:before{color:var(--pst-color-text-muted);font:var(--fa-font-brands);margin-right:.25rem}a.github:before{content:var(--pst-icon-github)}a.gitlab:before{content:var(--pst-icon-gitlab)}.heading-style,h1,h2,h3,h4,h5,h6{font-family:var(--pst-font-family-heading);font-weight:var(--pst-font-weight-heading);line-height:1.15;margin:2.75rem 0 1.05rem}h1{font-size:var(--pst-font-size-h1);margin-top:0}h1,h2{color:var(--pst-heading-color)}h2{font-size:var(--pst-font-size-h2)}h3{font-size:var(--pst-font-size-h3)}h3,h4{color:var(--pst-heading-color)}h4{font-size:var(--pst-font-size-h4)}h5{font-size:var(--pst-font-size-h5)}h5,h6{color:var(--pst-color-text-base)}h6{font-size:var(--pst-font-size-h6)}.text_small,small{font-size:var(--pst-font-size-milli)}hr{border:0;border-top:1px solid var(--pst-color-border)}code,kbd,pre,samp{font-family:var(--pst-font-family-monospace)}kbd{background-color:var(--pst-color-on-background);color:var(--pst-color-text-muted)}kbd:not(.compound){border:1px solid var(--pst-color-border);box-shadow:1px 1px 1px var(--pst-color-shadow);margin:0 .1rem;padding:.1rem .4rem}code{color:var(--pst-color-inline-code)}pre{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem;color:var(--pst-color-text-base);line-height:1.2em;margin:1.5em 0;padding:1rem}pre .linenos{opacity:.8;padding-right:10px}#pst-back-to-top{background-color:var(--pst-color-secondary);border:none;color:var(--pst-color-secondary-text);display:none;left:50vw;position:fixed;top:80vh;transform:translate(-50%);z-index:1080}.skip-link{background-color:var(--pst-color-warning);border-bottom:1px solid var(--pst-color-border);color:var(--pst-color-warning-text)!important;left:0;padding:.5rem;position:fixed;right:0;text-align:center;top:0;transform:translateY(-100%);transition:transform .15s ease-in-out;z-index:1055}.skip-link:focus{outline:3px solid #14181e;transform:translateY(0)}.bd-container{display:flex;flex-grow:1;justify-content:center}.bd-container .bd-container__inner{display:flex}.bd-page-width{width:100%}@media(min-width:960px){.bd-page-width{max-width:88rem}}.bd-header-announcement,.bd-header-version-warning{align-items:center;display:flex;justify-content:center;min-height:3rem;padding:.5rem 12.5%;position:relative;text-align:center;width:100%}@media(max-width:959.98px){.bd-header-announcement,.bd-header-version-warning{padding:.5rem 2%}}.bd-header-announcement p,.bd-header-version-warning p{font-weight:700;margin:0}.bd-header-announcement:after,.bd-header-version-warning:after{content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.bd-header-announcement:empty,.bd-header-version-warning:empty{display:none}.bd-header-announcement a,.bd-header-version-warning a{color:var(--pst-color-inline-code-links)}.bd-header-announcement:after{background-color:var(--pst-color-secondary-bg)}.bd-header-version-warning:after{background-color:var(--pst-color-danger-bg)}.bd-main{display:flex;flex-direction:column;flex-grow:1;min-width:0}.bd-main .bd-content{display:flex;height:100%;justify-content:center}.bd-main .bd-content .bd-article-container{display:flex;flex-direction:column;justify-content:start;max-width:60em;overflow-x:auto;padding:1rem;width:100%}@media(min-width:1200px){.bd-main .bd-content .bd-article-container .bd-article{padding-left:2rem;padding-top:1.5rem}}.bd-footer{border-top:1px solid var(--pst-color-border);width:100%}.bd-footer .bd-footer__inner{display:flex;flex-grow:1;margin:auto;padding:1rem}.bd-footer .footer-items__center,.bd-footer .footer-items__end,.bd-footer .footer-items__start{display:flex;flex-direction:column;flex-grow:1;gap:.5rem;justify-content:center}.bd-footer .footer-items__center{text-align:center}.bd-footer .footer-items__end{text-align:end}.bd-footer .footer-item p{margin-bottom:0}.bd-footer-article{margin-top:auto}.bd-footer-article .footer-article-items{display:flex;flex-direction:column}.bd-footer-content .footer-content-items{display:flex;flex-direction:column;margin-top:auto}.bd-header{background:var(--pst-color-on-background)!important;box-shadow:0 .125rem .25rem 0 var(--pst-color-shadow);justify-content:center;max-width:100vw;padding:0;position:sticky;top:0;width:100%;z-index:1030}.bd-header .bd-header__inner{align-items:center;display:flex;height:fit-content;padding-left:1rem;padding-right:1rem}.bd-header .navbar-item{align-items:center;display:flex;height:var(--pst-header-height);max-height:var(--pst-header-height)}.bd-header .navbar-header-items{flex-shrink:1}@media(min-width:960px){.bd-header .navbar-header-items{display:flex;flex-grow:1;padding:0 0 0 .5rem}}.bd-header .navbar-header-items__center,.bd-header .navbar-header-items__end,.bd-header .navbar-header-items__start{align-items:center;display:flex;flex-flow:wrap;row-gap:0}.bd-header .navbar-header-items__center,.bd-header .navbar-header-items__end{column-gap:1rem}.bd-header .navbar-header-items__start{flex-shrink:0;gap:.5rem;margin-right:auto}.bd-header .navbar-header-items__end{justify-content:end}.bd-header .navbar-nav{display:flex}@media(min-width:960px){.bd-header .navbar-nav{align-items:center}}.bd-header .navbar-nav li a.nav-link{color:var(--pst-color-text-muted);text-decoration:none}.bd-header .navbar-nav li a.nav-link:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.bd-header .navbar-nav li a.nav-link:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-nav>.current>.nav-link{border-bottom:max(3px,.1875rem,.12em) solid var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600}.bd-header .navbar-nav .dropdown button{border:none;color:var(--pst-color-text-muted);display:unset}.bd-header .navbar-nav .dropdown button:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.bd-header .navbar-nav .dropdown button:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-nav .dropdown .dropdown-menu{background-color:var(--pst-color-on-background);border:1px solid var(--pst-color-border);box-shadow:0 0 .3rem .1rem var(--pst-color-shadow);margin:.5rem 0;min-width:20rem;padding:.5rem 0;z-index:1070}.bd-header .navbar-nav .dropdown .dropdown-menu .dropdown-item{padding:.25rem 1.5rem}.bd-header .navbar-nav .dropdown .dropdown-menu .dropdown-item:focus:not(:hover):not(:active){background-color:inherit}.bd-header .navbar-nav .dropdown .dropdown-menu:not(.show){display:none}@media(min-width:960px){.navbar-center-items .navbar-item{display:inline-block}}.nav-link{transition:none}.nav-link:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.nav-link.nav-external:after{content:var(--pst-icon-external-link);font:var(--fa-font-solid);font-size:.75em;margin-left:.3em}.bd-navbar-elements li.nav-item i{font-size:.7rem;padding-left:2px;vertical-align:middle}.bd-header label.sidebar-toggle{align-items:center;color:var(--pst-color-muted);cursor:pointer;display:flex;font-size:var(--pst-font-size-icon);margin-bottom:0;padding-bottom:.25rem}.bd-header label.primary-toggle{margin-right:1rem}@media(min-width:960px){.bd-header label.primary-toggle{display:none}}.bd-header label.secondary-toggle{margin-left:1rem}@media(min-width:1200px){.bd-header label.secondary-toggle{display:none}}.bd-header label:hover{box-shadow:0 max(3px,.1875rem,.12em) 0 var(--pst-color-link-hover);color:var(--pst-color-link-hover)}.bd-header label:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-header-items{display:none}@media(min-width:960px){.bd-header .navbar-header-items{display:inherit}}.navbar-persistent--mobile{margin-left:auto}@media(min-width:960px){.navbar-persistent--mobile{display:none}}.navbar-persistent--container{display:none}@media(min-width:960px){.navbar-persistent--container{display:flex}}.header-article__inner{display:flex;padding:0 .5rem}.header-article__inner .header-article-item{height:var(--pst-header-article-height);min-height:var(--pst-header-article-height)}.header-article__inner .header-article-items__end,.header-article__inner .header-article-items__start{align-items:start;display:flex;gap:.5rem}.header-article__inner .header-article-items__end{margin-left:auto}.bd-sidebar-primary{background-color:var(--pst-color-background);border-right:1px solid var(--pst-color-border);display:flex;flex:0 0 auto;flex-direction:column;font-size:var(--pst-sidebar-font-size-mobile);gap:1rem;max-height:calc(100vh - var(--pst-header-height));overflow-y:auto;padding:2rem 1rem 1rem;position:sticky;top:var(--pst-header-height);width:25%}@media(min-width:960px){.bd-sidebar-primary{font-size:var(--pst-sidebar-font-size)}}.bd-sidebar-primary .nav-link{font-size:var(--pst-sidebar-font-size-mobile)}.bd-sidebar-primary.no-sidebar{border-right:0}@media(min-width:960px){.bd-sidebar-primary.hide-on-wide{display:none}}.bd-sidebar-primary h1,.bd-sidebar-primary h2,.bd-sidebar-primary h3,.bd-sidebar-primary h4{color:var(--pst-color-text-base)}.bd-sidebar-primary .sidebar-primary-items__end .sidebar-primary-item,.bd-sidebar-primary .sidebar-primary-items__start .sidebar-primary-item{padding:.5rem 0}.bd-sidebar-primary .sidebar-header-items{display:flex;flex-direction:column}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__title{color:var(--pst-color-text-base);font-size:var(--pst-sidebar-header-font-size);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.bd-sidebar-primary .sidebar-header-items .nav-item.dropdown button{display:none}.bd-sidebar-primary .sidebar-header-items .nav-item.dropdown .dropdown-menu{background-color:inherit;border:none;display:flex;flex-direction:column;font-size:inherit;margin:0;padding:0}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__center{display:flex;flex-direction:column}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__end{align-items:center;display:flex;gap:.5rem}@media(min-width:960px){.bd-sidebar-primary .sidebar-header-items{display:none}}.bd-sidebar-primary .sidebar-primary-items__start{border-top:1px solid var(--pst-color-border)}@media(min-width:960px){.bd-sidebar-primary .sidebar-primary-items__start{border-top:none}}.bd-sidebar-primary .sidebar-primary-items__end{margin-bottom:1em;margin-top:auto}.bd-sidebar-primary .list-caption{list-style:none;padding-left:0}.bd-sidebar-primary li{position:relative}.bd-sidebar-primary li.has-children>.reference{padding-right:30px}.bd-sidebar-primary label.toctree-toggle{align-items:center;cursor:pointer;display:flex;height:30px;justify-content:center;position:absolute;right:0;top:0;width:30px}.bd-sidebar-primary label.toctree-toggle:hover{background:var(--pst-color-surface)}.bd-sidebar-primary label.toctree-toggle i{display:inline-block;font-size:.75rem;text-align:center}.bd-sidebar-primary label.toctree-toggle i:hover{color:var(--pst-color-primary)}.bd-sidebar-primary .label-parts{height:100%;width:100%}.bd-sidebar-primary .label-parts:hover{background:none}.bd-sidebar-primary .label-parts i{position:absolute;right:0;top:.3em;width:30px}nav.bd-links{margin-right:-1rem}@media(min-width:960px){nav.bd-links{display:block}}nav.bd-links ul{list-style:none}nav.bd-links ul ul{padding:0 0 0 1rem}nav.bd-links li>a{box-shadow:none;color:var(--pst-color-text-muted);display:block;padding:.25rem .65rem;text-decoration:none}nav.bd-links li>a:hover{text-decoration-skip:none;background-color:transparent;text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(3px,.1875rem,.12em)}nav.bd-links li>a:active,nav.bd-links li>a:hover{color:var(--pst-color-link-hover)}nav.bd-links li>a.reference.external:after{content:var(--pst-icon-external-link);font:var(--fa-font-solid);font-size:.75em;margin-left:.3em}nav.bd-links .current>a{background-color:transparent;box-shadow:inset max(3px,.1875rem,.12em) 0 0 var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600}nav.bd-links p.bd-links__title{font-size:var(--pst-sidebar-header-font-size)}nav.bd-links p.bd-links__title,nav.bd-links p.caption{font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}nav.bd-links p.caption{color:var(--pst-color-text-base);font-size:var(--pst-sidebar-font-size-mobile);margin-top:1.25rem;position:relative}nav.bd-links p.caption:first-child{margin-top:0}@media(min-width:960px){nav.bd-links p.caption{font-size:var(--pst-sidebar-font-size)}}.bd-sidebar-secondary{background-color:var(--pst-color-background);display:flex;flex-direction:column;flex-shrink:0;font-size:var(--pst-sidebar-font-size-mobile);max-height:calc(100vh - var(--pst-header-height));order:2;overflow-y:auto;padding:2rem 1rem 1rem;position:sticky;top:var(--pst-header-height);width:var(--pst-sidebar-secondary)}@media(min-width:1200px){.bd-sidebar-secondary{font-size:var(--pst-sidebar-font-size)}}.sidebar-secondary-item{padding:.5rem}@media(min-width:1200px){.sidebar-secondary-item{border-left:1px solid var(--pst-color-border);padding-left:1rem}}.sidebar-secondary-item i{padding-right:.5rem}input.sidebar-toggle{display:none}label.overlay{background-color:#000;height:0;left:0;opacity:.5;position:fixed;top:0;transition:opacity .2s ease-out;width:0;z-index:1050}input#__primary:checked+label.overlay.overlay-primary,input#__secondary:checked+label.overlay.overlay-secondary{height:100vh;width:100vw}input#__primary:checked~.bd-container .bd-sidebar-primary{margin-left:0;visibility:visible}input#__secondary:checked~.bd-container .bd-sidebar-secondary{margin-right:0;visibility:visible}@media(min-width:960px){label.sidebar-toggle.primary-toggle{display:none}input#__primary:checked+label.overlay.overlay-primary{height:0;width:0}.bd-sidebar-primary{margin-left:0;visibility:visible}}@media(max-width:959.98px){.bd-sidebar-primary{flex-grow:.75;height:100vh;left:0;margin-left:-75%;max-height:100vh;max-width:350px;position:fixed;top:0;transition:visibility .2s ease-out,margin .2s ease-out;visibility:hidden;width:75%;z-index:1055}}@media(max-width:1199.98px){.bd-sidebar-secondary{flex-grow:.75;height:100vh;margin-right:-75%;max-height:100vh;max-width:350px;position:fixed;right:0;top:0;transition:visibility .2s ease-out,margin .2s ease-out;visibility:hidden;width:75%;z-index:1055}}ul.bd-breadcrumbs{display:flex;flex-wrap:wrap;font-size:.8rem;list-style:none;padding-left:0}ul.bd-breadcrumbs li.breadcrumb-item{align-items:baseline;display:flex;font-weight:700}ul.bd-breadcrumbs li.breadcrumb-item a{color:var(--pst-color-text-muted);text-decoration:none}ul.bd-breadcrumbs li.breadcrumb-item a:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}ul.bd-breadcrumbs li.breadcrumb-item a:focus-visible{outline:2px solid var(--pst-color-accent)}ul.bd-breadcrumbs li.breadcrumb-item:not(.breadcrumb-home):before{color:var(--pst-color-text-muted);content:var(--pst-breadcrumb-divider);font:var(--fa-font-solid);font-size:.8rem;padding:0 .5rem}.navbar-icon-links{column-gap:1rem;display:flex;flex-direction:row;flex-wrap:wrap}.navbar-icon-links li.nav-item a.nav-link{padding-left:0;padding-right:0}.navbar-icon-links li.nav-item a.nav-link:hover{box-shadow:0 max(3px,.1875rem,.12em) 0 var(--pst-color-link-hover);color:var(--pst-color-link-hover)}.navbar-icon-links a span{align-items:center;display:flex}.navbar-icon-links i.fa-brands,.navbar-icon-links i.fa-regular,.navbar-icon-links i.fa-solid{font-size:var(--pst-font-size-icon);font-style:normal;vertical-align:middle}.navbar-icon-links i.fa-square-twitter:before{color:#55acee}.navbar-icon-links i.fa-square-gitlab:before{color:#548}.navbar-icon-links i.fa-bitbucket:before{color:#0052cc}.navbar-icon-links img.icon-link-image{border-radius:.2rem;height:1.5em}.navbar-brand{align-items:center;display:flex;flex-shrink:0;gap:.5rem;height:var(--pst-header-height);margin:0;max-height:var(--pst-header-height);padding:.5rem 0;position:relative;width:auto}.navbar-brand p{margin-bottom:0}.navbar-brand img{height:100%;max-width:100%;width:auto}.navbar-brand a{text-decoration:none}.navbar-brand:hover:hover,.navbar-brand:visited:hover:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.navbar-nav ul{display:block;list-style:none}.navbar-nav ul ul{padding:0 0 0 1rem}.navbar-nav li{display:flex;flex-direction:column}.navbar-nav li a{align-items:center;color:var(--pst-color-text-muted);display:flex;height:100%;padding-bottom:.25rem;padding-top:.25rem;text-decoration:none}.navbar-nav li a:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.navbar-nav li a:focus-visible{outline:2px solid var(--pst-color-accent)}.navbar-nav .toctree-checkbox{display:none;position:absolute}.navbar-nav .toctree-checkbox~ul{display:none}.navbar-nav .toctree-checkbox~label i{transform:rotate(0deg)}.navbar-nav .toctree-checkbox:checked~ul{display:block}.navbar-nav .toctree-checkbox:checked~label i{transform:rotate(180deg)}.bd-header .navbar-nav>p.sidebar-header-items__title{display:none}.page-toc .section-nav{border-bottom:none;padding-left:0}.page-toc .section-nav ul{padding-left:1rem}.page-toc .nav-link{font-size:var(--pst-sidebar-font-size-mobile)}@media(min-width:1200px){.page-toc .nav-link{font-size:var(--pst-sidebar-font-size)}}.page-toc .onthispage{color:var(--pst-color-text-base);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.prev-next-area{width:100%}.prev-next-area p{line-height:1.3em;margin:0 .3em}.prev-next-area i{font-size:1.2em}.prev-next-area a{align-items:center;border:none;color:var(--pst-color-text-muted);display:flex;max-width:45%;overflow-x:hidden;padding:10px;text-decoration:none}.prev-next-area a p.prev-next-title{word-wrap:break-word;color:var(--pst-color-link);font-size:1.1em;font-weight:var(--pst-admonition-font-weight-heading);text-decoration:underline;text-decoration-thickness:max(1px,.0625rem);text-underline-offset:.1578em}.prev-next-area a p.prev-next-title:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration-skip-ink:none;text-decoration-thickness:max(3px,.1875rem,.12em)}.prev-next-area a p.prev-next-title:active,.prev-next-area a p.prev-next-title:visited{color:var(--pst-color-link)}.prev-next-area a p.prev-next-title:visited:hover{color:var(--pst-color-link-hover)}.prev-next-area a p.prev-next-title:focus-visible{outline:2px solid var(--pst-color-accent)}.prev-next-area a:hover p.prev-next-title:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.prev-next-area a:visited p.prev-next-title{color:var(--pst-color-link)}.prev-next-area a:visited p.prev-next-title:hover{color:var(--pst-color-link-hover)}.prev-next-area a .prev-next-info{flex-direction:column;margin:0 .5em}.prev-next-area a .prev-next-info .prev-next-subtitle{text-transform:capitalize}.prev-next-area a.left-prev{float:left}.prev-next-area a.right-next{float:right}.prev-next-area a.right-next div.prev-next-info{text-align:right}.bd-search{border:1px solid var(--pst-color-border);border-radius:.25rem;color:var(--pst-color-text-base);gap:.5rem;padding-left:.5rem;position:relative}.bd-search,.bd-search:active{background-color:var(--pst-color-background)}.bd-search:active{color:var(--pst-color-text-muted)}.bd-search .icon{color:var(--pst-color-border);left:25px;position:absolute}.bd-search .fa-solid.fa-magnifying-glass{color:var(--pst-color-text-muted);left:calc(1.25rem - .35em);position:absolute}.bd-search input::placeholder{color:var(--pst-color-text-muted)}.bd-search input::-webkit-search-cancel-button,.bd-search input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.bd-search .search-button__kbd-shortcut{color:var(--pst-color-border);display:flex;position:absolute;right:.5rem}.form-control{background-color:var(--pst-color-background);color:var(--pst-color-text-base)}.form-control:focus,.form-control:focus-visible{background-color:var(--pst-color-background);border:none;box-shadow:none;color:var(--pst-color-text-muted);outline:3px solid var(--pst-color-accent)}.search-button{align-content:center;align-items:center;border-radius:0;color:var(--pst-color-text-muted);display:flex;padding:0 0 .25rem}.search-button:hover{box-shadow:0 max(3px,.1875rem,.12em) 0 var(--pst-color-link-hover);color:var(--pst-color-link-hover)}.search-button:focus-visible{outline:2px solid var(--pst-color-accent)}.search-button i{font-size:1.3rem}.search-button__overlay,.search-button__search-container{display:none}.search-button__wrapper.show .search-button__search-container{display:flex;left:50%;margin-top:.5rem;max-width:800px;position:fixed;right:1rem;top:30%;transform:translate(-50%,-50%);width:90%;z-index:1055}.search-button__wrapper.show .search-button__overlay{background-color:#000;display:flex;height:100%;left:0;opacity:.5;position:fixed;top:0;width:100%;z-index:1050}.search-button__wrapper.show form.bd-search{flex-grow:1;padding-bottom:0;padding-top:0}.search-button__wrapper.show input,.search-button__wrapper.show svg{font-size:var(--pst-font-size-icon)}.search-button-field{align-items:center;background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:1.5em;color:var(--pst-color-text-muted);display:inline-flex;padding:.5em}.search-button-field:hover{border:2px solid var(--pst-color-link-hover)}.search-button-field:focus-visible{border:2px solid var(--pst-color-accent)}.search-button-field .search-button__default-text{font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);margin-left:.5em;margin-right:.5em}.search-button-field .kbd-shortcut__modifier{font-size:.75em}.search-button-field>*{align-items:center}.search-button-field>:not(svg){display:none}@media(min-width:960px){.search-button-field>:not(svg){display:flex}}div#searchbox p.highlight-link{box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;margin:1rem 0;width:fit-content}@media(min-width:1200px){div#searchbox p.highlight-link{margin-left:2rem}}div#searchbox p.highlight-link a{background-color:var(--pst-color-primary);border-radius:.25rem;color:var(--pst-color-primary-text);font-size:1.25rem;padding:.75rem;text-decoration:none;transition:box-shadow .25s ease-out}div#searchbox p.highlight-link a:hover{box-shadow:inset 0 0 50px 50px rgba(0,0,0,.25)}div#searchbox p.highlight-link a:before{color:unset;content:var(--pst-icon-search-minus);font:var(--fa-font-solid);margin-right:.5rem}.theme-switch-button{border-radius:0;color:var(--pst-color-text-muted);margin:0 -.5rem;padding:0}.theme-switch-button:focus-visible{outline:2px solid var(--pst-color-accent)}.theme-switch-button span{display:none;padding:.5em}.theme-switch-button span:hover{box-shadow:0 max(3px,.1875rem,.12em) 0 var(--pst-color-link-hover);color:var(--pst-color-link-hover)}.theme-switch-button span:active{color:var(--pst-color-link-hover);text-decoration:none}html[data-mode=auto] .theme-switch-button span[data-mode=auto],html[data-mode=dark] .theme-switch-button span[data-mode=dark],html[data-mode=light] .theme-switch-button span[data-mode=light]{display:flex}button.btn.version-switcher__button{border-color:var(--pst-color-border);color:var(--pst-color-text-base);margin-bottom:1em}@media(min-width:960px){button.btn.version-switcher__button{margin-bottom:unset}}button.btn.version-switcher__button:hover{text-decoration-skip:none;color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}button.btn.version-switcher__button:focus-visible{outline:2px solid var(--pst-color-accent)}button.btn.version-switcher__button:active{border-color:var(--pst-color-border);color:var(--pst-color-text-base)}.version-switcher__menu{border-color:var(--pst-color-border);border-radius:var(--bs-dropdown-border-radius)}.version-switcher__menu a.list-group-item{background-color:var(--pst-color-on-background);color:var(--pst-color-text-base);padding:.75rem 1.25rem}.version-switcher__menu a.list-group-item:not(:last-child){border-bottom:1px solid var(--pst-color-border)}.version-switcher__menu a.list-group-item:hover{text-decoration-skip:none;background-color:var(--pst-color-surface);color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(1px,.0625rem);text-decoration-thickness:max(3px,.1875rem,.12em);text-underline-offset:.1578em}.version-switcher__menu a.list-group-item.active{box-shadow:inset max(3px,.1875rem,.12em) 0 0 var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600;position:relative;z-index:1}.version-switcher__menu a.list-group-item.active span:before{content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-1}.version-switcher__menu,button.version-switcher__button{font-size:1.1em;z-index:1055}@media(min-width:960px){.version-switcher__menu,button.version-switcher__button{font-size:unset}}nav.page-toc{margin-bottom:1rem}.bd-toc .nav .nav,.list-caption .nav{display:none}.bd-toc .nav .nav.visible,.bd-toc .nav>.active>ul,.list-caption .nav.visible,.list-caption>.active>ul,.toc-entry{display:block}.toc-entry a.nav-link,.toc-entry a>code{color:var(--pst-color-text-muted)}.toc-entry a.nav-link{display:block;margin-left:-1rem;padding:.125rem 0 .125rem 1rem;text-decoration:none}.toc-entry a.nav-link:hover{text-decoration-skip:none;background-color:transparent;text-decoration:underline;text-decoration-skip-ink:none;text-decoration-thickness:max(3px,.1875rem,.12em)}.toc-entry a.nav-link:active,.toc-entry a.nav-link:hover{color:var(--pst-color-link-hover)}.toc-entry a.nav-link.active{background-color:transparent;box-shadow:inset max(3px,.1875rem,.12em) 0 0 var(--pst-color-primary);color:var(--pst-color-primary);font-weight:600}.toc-entry a.nav-link.active:hover{color:var(--pst-color-link-hover)}div.deprecated,div.versionadded,div.versionchanged{background-color:var(--pst-color-on-background);border-left:.2rem solid;border-color:var(--pst-color-info);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;margin:1.5625em auto;overflow:hidden;padding:0 .6rem;page-break-inside:avoid;position:relative;vertical-align:middle}div.deprecated>p,div.versionadded>p,div.versionchanged>p{margin-bottom:.6rem;margin-top:.6rem}div.versionadded{background-color:var(--pst-color-success-bg);border-color:var(--pst-color-success)}div.versionchanged{background-color:var(--pst-color-warning-bg);border-color:var(--pst-color-warning)}div.deprecated{background-color:var(--pst-color-danger-bg);border-color:var(--pst-color-danger)}span.versionmodified{font-weight:600}span.versionmodified:before{color:var(--pst-color-info);content:var(--pst-icon-versionmodified-default);font:var(--fa-font-solid);margin-right:.6rem}span.versionmodified.added:before{color:var(--pst-color-success);content:var(--pst-icon-versionmodified-added)}span.versionmodified.changed:before{color:var(--pst-color-warning);content:var(--pst-icon-versionmodified-changed)}span.versionmodified.deprecated:before{color:var(--pst-color-danger);content:var(--pst-icon-versionmodified-deprecated)}.sidebar-indices-items{border-top:1px solid var(--pst-color-border);display:flex;flex-direction:column}@media(min-width:960px){.sidebar-indices-items{border-top:none}}.sidebar-indices-items .sidebar-indices-items__title{color:var(--pst-color-text-base);font-size:var(--pst-sidebar-header-font-size);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.sidebar-indices-items ul.indices-link{list-style:none;margin-right:-1rem;padding:0}.sidebar-indices-items ul.indices-link li>a{color:var(--pst-color-text-muted);display:block;padding:.25rem 0}.sidebar-indices-items ul.indices-link li>a:hover{background-color:transparent;color:var(--pst-color-primary);text-decoration:none}.bd-sidebar-primary div#rtd-footer-container{bottom:-1rem;margin:-1rem;position:sticky}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge{font-family:var(--pst-font-family-base);font-size:.9em;max-width:unset;position:unset}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .rst-current-version{align-items:center;background-color:var(--pst-color-background);border-top:1px solid var(--pst-color-border);color:var(--pst-color-success);display:flex;gap:.2rem;height:2.5rem;transition:background-color .2s ease-out}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-book{color:var(--pst-color-text-muted);margin-right:auto}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-book:after{color:var(--pst-color-text-base);content:"Read The Docs";font-family:var(--pst-font-family-base);font-weight:var(--pst-admonition-font-weight-heading)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-caret-down{color:var(--pst-color-text-muted)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge.shift-up .rst-current-version{border-bottom:1px solid var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions{background-color:var(--pst-color-surface);color:var(--pst-color-text-base)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions dl dd a{color:var(--pst-color-text-muted)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions hr{background-color:var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions small a{color:var(--pst-color-link)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions input{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);padding-left:.5rem}.admonition,div.admonition{background-color:var(--pst-color-on-background);border-left:.2rem solid;border-color:var(--pst-color-info);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;margin:1.5625em auto;overflow:hidden;padding:0 .6rem .8rem;page-break-inside:avoid}.admonition :last-child,div.admonition :last-child{margin-bottom:0}.admonition p.admonition-title~*,div.admonition p.admonition-title~*{margin-left:1.4rem;margin-right:1.4rem}.admonition>ol,.admonition>ul,div.admonition>ol,div.admonition>ul{margin-left:1em}.admonition>.admonition-title,div.admonition>.admonition-title{background-color:var(--pst-color-info-bg);font-weight:var(--pst-admonition-font-weight-heading);margin:0 -.6rem;padding:.4rem .6rem .4rem 2rem;position:relative;z-index:1}.admonition>.admonition-title:before,div.admonition>.admonition-title:before{content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}.admonition>.admonition-title:after,div.admonition>.admonition-title:after{color:var(--pst-color-info);content:var(--pst-icon-admonition-default);font:var(--fa-font-solid);height:1rem;left:.5rem;line-height:inherit;opacity:1;position:absolute;width:1rem}.admonition>.admonition-title+*,div.admonition>.admonition-title+*{margin-top:.4em}.admonition.attention,div.admonition.attention{border-color:var(--pst-color-attention)}.admonition.attention>.admonition-title,div.admonition.attention>.admonition-title{background-color:var(--pst-color-attention-bg)}.admonition.attention>.admonition-title:after,div.admonition.attention>.admonition-title:after{color:var(--pst-color-attention);content:var(--pst-icon-admonition-attention)}.admonition.caution,div.admonition.caution{border-color:var(--pst-color-warning)}.admonition.caution>.admonition-title,div.admonition.caution>.admonition-title{background-color:var(--pst-color-warning-bg)}.admonition.caution>.admonition-title:after,div.admonition.caution>.admonition-title:after{color:var(--pst-color-warning);content:var(--pst-icon-admonition-caution)}.admonition.warning,div.admonition.warning{border-color:var(--pst-color-warning)}.admonition.warning>.admonition-title,div.admonition.warning>.admonition-title{background-color:var(--pst-color-warning-bg)}.admonition.warning>.admonition-title:after,div.admonition.warning>.admonition-title:after{color:var(--pst-color-warning);content:var(--pst-icon-admonition-warning)}.admonition.danger,div.admonition.danger{border-color:var(--pst-color-danger)}.admonition.danger>.admonition-title,div.admonition.danger>.admonition-title{background-color:var(--pst-color-danger-bg)}.admonition.danger>.admonition-title:after,div.admonition.danger>.admonition-title:after{color:var(--pst-color-danger);content:var(--pst-icon-admonition-danger)}.admonition.error,div.admonition.error{border-color:var(--pst-color-danger)}.admonition.error>.admonition-title,div.admonition.error>.admonition-title{background-color:var(--pst-color-danger-bg)}.admonition.error>.admonition-title:after,div.admonition.error>.admonition-title:after{color:var(--pst-color-danger);content:var(--pst-icon-admonition-error)}.admonition.hint,div.admonition.hint{border-color:var(--pst-color-success)}.admonition.hint>.admonition-title,div.admonition.hint>.admonition-title{background-color:var(--pst-color-success-bg)}.admonition.hint>.admonition-title:after,div.admonition.hint>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-hint)}.admonition.tip,div.admonition.tip{border-color:var(--pst-color-success)}.admonition.tip>.admonition-title,div.admonition.tip>.admonition-title{background-color:var(--pst-color-success-bg)}.admonition.tip>.admonition-title:after,div.admonition.tip>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-tip)}.admonition.important,div.admonition.important{border-color:var(--pst-color-attention)}.admonition.important>.admonition-title,div.admonition.important>.admonition-title{background-color:var(--pst-color-attention-bg)}.admonition.important>.admonition-title:after,div.admonition.important>.admonition-title:after{color:var(--pst-color-attention);content:var(--pst-icon-admonition-important)}.admonition.note,div.admonition.note{border-color:var(--pst-color-info)}.admonition.note>.admonition-title,div.admonition.note>.admonition-title{background-color:var(--pst-color-info-bg)}.admonition.note>.admonition-title:after,div.admonition.note>.admonition-title:after{color:var(--pst-color-info);content:var(--pst-icon-admonition-note)}.admonition.seealso,div.admonition.seealso{border-color:var(--pst-color-success)}.admonition.seealso>.admonition-title,div.admonition.seealso>.admonition-title{background-color:var(--pst-color-success-bg)}.admonition.seealso>.admonition-title:after,div.admonition.seealso>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-seealso)}.admonition.admonition-todo,div.admonition.admonition-todo{border-color:var(--pst-color-secondary)}.admonition.admonition-todo>.admonition-title,div.admonition.admonition-todo>.admonition-title{background-color:var(--pst-color-secondary-bg)}.admonition.admonition-todo>.admonition-title:after,div.admonition.admonition-todo>.admonition-title:after{color:var(--pst-color-secondary);content:var(--pst-icon-admonition-todo)}.admonition.sidebar,div.admonition.sidebar{border-width:0 0 0 .2rem;clear:both;float:right;margin-left:.5rem;margin-top:0;max-width:40%}.admonition.sidebar.attention,.admonition.sidebar.important,div.admonition.sidebar.attention,div.admonition.sidebar.important{border-color:var(--pst-color-attention)}.admonition.sidebar.caution,.admonition.sidebar.warning,div.admonition.sidebar.caution,div.admonition.sidebar.warning{border-color:var(--pst-color-warning)}.admonition.sidebar.danger,.admonition.sidebar.error,div.admonition.sidebar.danger,div.admonition.sidebar.error{border-color:var(--pst-color-danger)}.admonition.sidebar.hint,.admonition.sidebar.seealso,.admonition.sidebar.tip,div.admonition.sidebar.hint,div.admonition.sidebar.seealso,div.admonition.sidebar.tip{border-color:var(--pst-color-success)}.admonition.sidebar.note,.admonition.sidebar.todo,div.admonition.sidebar.note,div.admonition.sidebar.todo{border-color:var(--pst-color-info)}.admonition.sidebar p.admonition-title~*,div.admonition.sidebar p.admonition-title~*{margin-left:0;margin-right:0}aside.topic,div.topic,div.topic.contents,nav.contents{background-color:var(--pst-color-surface);border-color:var(--pst-color-border);border-radius:.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important;display:flex;flex-direction:column;padding:1rem 1.25rem}aside.topic .topic-title,div.topic .topic-title,div.topic.contents .topic-title,nav.contents .topic-title{margin:0 0 .5rem}aside.topic p,div.topic p,div.topic.contents p,nav.contents p{color:var(--pst-color-on-surface)!important}aside.topic ul.simple,div.topic ul.simple,div.topic.contents ul.simple,nav.contents ul.simple{padding-left:1rem}aside.topic ul.simple ul,div.topic ul.simple ul,div.topic.contents ul.simple ul,nav.contents ul.simple ul{padding-left:2em}aside.sidebar{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem;margin-left:.5rem;padding:0}aside.sidebar>:last-child{padding-bottom:1rem}aside.sidebar p.sidebar-title{border-bottom:1px solid var(--pst-color-border);font-family:var(--pst-font-family-heading);font-weight:var(--pst-admonition-font-weight-heading);margin-bottom:0;padding-bottom:.5rem;padding-top:.5rem;position:relative}aside.sidebar>:not(.sidebar-title):first-child,aside.sidebar>p.sidebar-title+*{margin-top:1rem}aside.sidebar>*{padding-left:1rem;padding-right:1rem}p.rubric{display:flex;flex-direction:column}.seealso dd{margin-bottom:0;margin-top:0}table.field-list{border-collapse:separate;border-spacing:10px;margin-left:1px}table.field-list th.field-name{background-color:var(--pst-color-surface);padding:1px 8px 1px 5px;white-space:nowrap}table.field-list td.field-body p{font-style:italic}table.field-list td.field-body p>strong{font-style:normal}table.field-list td.field-body blockquote{border-left:none;margin:0 0 .3em;padding-left:30px}.table.autosummary td:first-child{white-space:nowrap}.sig{font-family:var(--pst-font-family-monospace)}.sig-inline.c-texpr,.sig-inline.cpp-texpr{font-family:unset}.sig.c .k,.sig.c .kt,.sig.c .m,.sig.c .s,.sig.c .sc,.sig.cpp .k,.sig.cpp .kt,.sig.cpp .m,.sig.cpp .s,.sig.cpp .sc{color:var(--pst-color-text-base)}.sig-name{color:var(--pst-color-inline-code)}.sig-param .default_value,.sig-param .o{color:var(--pst-color-text-muted);font-weight:400}dt:target,span.highlighted{background-color:var(--pst-color-target)}.viewcode-back{font-family:var(--pst-font-family-base)}.viewcode-block:target{background-color:var(--pst-color-target);border-bottom:1px solid var(--pst-color-border);border-top:1px solid var(--pst-color-border);position:relative}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple){margin-bottom:3rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd{margin-left:2rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd>dl.simple>dt{display:flex}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl.field-list{display:grid;grid-template-columns:unset}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt.field-even,dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt.field-odd{background-color:var(--pst-color-surface);margin-bottom:.1rem;margin-top:.2rem}div.highlight,div.literal-block-wrapper,div[class*=highlight-]{border-radius:.25rem;display:flex;flex-direction:column;width:unset}div.literal-block-wrapper{border:1px solid var(--pst-color-border);border-radius:.25rem}div.literal-block-wrapper div.code-block-caption{border-bottom:1px solid var(--pst-color-border);font-size:1rem;font-weight:var(--pst-font-weight-caption);margin:0;padding:.5rem}div.literal-block-wrapper div.code-block-caption a.headerlink{font-size:inherit}div.literal-block-wrapper div[class*=highlight-]{border-radius:0;margin:0}div.literal-block-wrapper div[class*=highlight-] pre{border:none;box-shadow:none}code.literal{background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem;padding:.1rem .25rem}a>code{color:var(--pst-color-inline-code-links)}html[data-theme=light] .highlight .nf{color:#0078a1!important}span.linenos{opacity:.8!important}figure a.headerlink{font-size:inherit;position:absolute}figure:hover a.headerlink{visibility:visible}figure figcaption{color:var(--pst-color-text-muted);font-family:var(--pst-font-family-heading);font-weight:var(--pst-font-weight-caption);margin-left:auto;margin-right:auto}figure figcaption table.table{margin-left:auto;margin-right:auto;width:fit-content}dt.label>span.brackets:not(:only-child):before{content:"["}dt.label>span.brackets:not(:only-child):after{content:"]"}a.footnote-reference{font-size:small;vertical-align:super}aside.footnote{margin-bottom:.5rem}aside.footnote:last-child{margin-bottom:1rem}aside.footnote span.backrefs,aside.footnote span.label{font-weight:700}aside.footnote:target{background-color:var(--pst-color-target)}div.doctest>div.highlight span.gp,span.linenos,table.highlighttable td.linenos{user-select:none;-webkit-user-select:text;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}dd{margin-bottom:10px;margin-left:30px;margin-top:3px}ol,ul{padding-inline-start:2rem}ol li>p:first-child,ul li>p:first-child{margin-bottom:.25rem;margin-top:.25rem}blockquote{background-color:var(--pst-color-surface);border-left:.25em solid var(--pst-color-border);border-radius:.25rem;color:var(--pst-color-text-muted);padding:1em;position:relative}blockquote p{color:var(--pst-color-text-base)}blockquote .line-block{margin:0}blockquote p:last-child{margin-bottom:0}blockquote:before{content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}span.guilabel{background-color:var(--pst-color-info-bg);border:1px solid var(--pst-color-info);border-radius:4px;color:var(--pst-color-info);font-size:80%;font-weight:700;margin:auto 2px;padding:2.4px 6px;position:relative}span.guilabel:before{content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}a.reference.download:before{color:var(--pst-color-text-muted);content:var(--pst-icon-download);font:var(--fa-font-solid);font-size:.8em;padding:0 .25em}table{display:table;margin-left:auto;margin-right:auto;overflow:auto}table.table-right{margin-right:0}table.table-left{margin-left:0}table caption{caption-side:top;color:var(--pst-color-text-muted);text-align:center}td.text-align\:left,th.text-align\:left{text-align:left}td.text-align\:right,th.text-align\:right{text-align:right}td.text-align\:center,th.text-align\:center{text-align:center}.table{--bs-table-bg:transparent}.toctree-wrapper p.caption{font-size:1.5em;margin-bottom:0}.toctree-wrapper>ul{padding-left:0}.toctree-wrapper li[class^=toctree-l]{list-style:none;margin-bottom:.2em}.toctree-wrapper li[class^=toctree-l]>a{font-size:1.1em;list-style:none}.toctree-wrapper li[class^=toctree-l]>ul{list-style:none;padding-inline-start:1.5em}.toctree-wrapper .toctree-l1>a{font-size:1.3em}div.topic.contents ul.simple,nav.contents ul.simple{list-style:none;padding-left:0}div.math,span.math{align-items:center;display:flex;max-width:100%;overflow:hidden}span.math{display:inline-flex}div.math{flex-direction:row-reverse;gap:.5em}div.math span.eqno a.headerlink{font-size:1em;position:relative}div.math mjx-container{flex-grow:1;overflow:auto;padding-bottom:.2rem}div.math mjx-container mjx-assistive-mml{height:0}.ablog-sidebar-item h2,.ablog-sidebar-item h3{font-size:var(--pst-sidebar-header-font-size);margin-top:.5rem}.ablog-sidebar-item h2 a,.ablog-sidebar-item h3 a{color:var(--pst-color-text-base)}.ablog-sidebar-item ul{display:flex;flex-direction:column;gap:.5em;list-style:none;margin-bottom:0;overflow-y:hidden;padding-left:0}.ablog-sidebar-item ul.ablog-cloud{flex-direction:row;flex-flow:wrap;gap:.5rem}.ablog-sidebar-item ul.ablog-cloud li{align-items:center;display:flex}.ablog__prev-next{display:flex;font-size:1.2em;padding:1rem 0}.ablog__prev-next>span{display:flex;max-width:45%}.ablog__prev-next>span a{align-items:center;display:flex;gap:1rem;line-height:1.5rem;margin-left:auto}.ablog__prev-next>span a i:before{color:var(--pst-color-text-base)}.ablog__prev-next span.ablog__prev i.fa-arrow-circle-left:before{content:var(--pst-icon-angle-left)}.ablog__prev-next span.ablog__spacer{display:none}.ablog__prev-next span.ablog__next{margin-left:auto;text-align:right}.ablog__prev-next span.ablog__next i.fa-arrow-circle-right:before{content:var(--pst-icon-angle-right)}.ablog__collection,.postlist{padding-left:0}.ablog__collection .ablog-post,.postlist .ablog-post{list-style:none}.ablog__collection .ablog-post .ablog-archive,.postlist .ablog-post .ablog-archive{display:flex;flex-direction:row;flex-wrap:wrap;font-size:.75rem;gap:1rem;list-style:none;padding-left:0}.ablog__collection .ablog-post .ablog-post-title,.postlist .ablog-post .ablog-post-title{font-size:1.25rem;margin-top:0}.ablog__collection .ablog-post .ablog-post-title a,.postlist .ablog-post .ablog-post-title a{font-weight:700}.ablog__collection .ablog-post .ablog-post-expand,.postlist .ablog-post .ablog-post-expand{margin-bottom:.5rem}.docutils.container{margin-left:unset;margin-right:unset;max-width:unset;padding-left:unset;padding-right:unset;width:unset}div.highlight button.copybtn{align-items:center;background-color:unset;background-color:var(--pst-color-surface);border:none;display:flex;justify-content:center}div.highlight button.copybtn:not(.success){color:var(--pst-color-muted)}div.highlight button.copybtn:hover:not(.success){background-color:var(--pst-color-shadow);color:var(--pst-color-text)}div.highlight button.copybtn.o-tooltip--left:after{background-color:var(--pst-color-surface);color:var(--pst-color-text)}#ethical-ad-placement .ethical-footer a,#ethical-ad-placement .ethical-footer a:active,#ethical-ad-placement .ethical-footer a:hover,#ethical-ad-placement .ethical-footer a:visited,#ethical-ad-placement .ethical-sidebar a,#ethical-ad-placement .ethical-sidebar a:active,#ethical-ad-placement .ethical-sidebar a:hover,#ethical-ad-placement .ethical-sidebar a:visited{color:var(--pst-color-text-base)}#ethical-ad-placement .ethical-footer,#ethical-ad-placement .ethical-sidebar{background-color:var(--pst-color-background);border:1px solid var(--pst-color-border);border-radius:5px;color:var(--pst-color-text-base);font-size:14px;line-height:20px}.bd-content div.jupyter_container{background-color:unset;border:none;box-shadow:none}.bd-content div.jupyter_container div.highlight,.bd-content div.jupyter_container div.output{border-radius:.25rem}.bd-content div.jupyter_container div.highlight{background-color:var(--pst-color-surface)}.bd-content div.jupyter_container .cell_input,.bd-content div.jupyter_container .cell_output{border-radius:.25rem}.bd-content div.jupyter_container .cell_input pre,.bd-content div.jupyter_container .cell_output pre{padding:1rem}.xr-wrap[hidden]{display:block!important}:root{--pst-teal-50:#f4fbfc;--pst-teal-100:#e9f6f8;--pst-teal-200:#d0ecf1;--pst-teal-300:#abdde6;--pst-teal-400:#3fb1c5;--pst-teal-500:#0a7d91;--pst-teal-600:#085d6c;--pst-teal-700:#064752;--pst-teal-800:#042c33;--pst-teal-900:#021b1f;--pst-violet-50:#f4eefb;--pst-violet-100:#e0c7ff;--pst-violet-200:#d5b4fd;--pst-violet-300:#b780ff;--pst-violet-400:#9c5ffd;--pst-violet-500:#8045e5;--pst-violet-600:#6432bd;--pst-violet-700:#4b258f;--pst-violet-800:#341a61;--pst-violet-900:#1e0e39;--pst-gray-50:#f9f9fa;--pst-gray-100:#f3f4f5;--pst-gray-200:#e5e7ea;--pst-gray-300:#d1d5da;--pst-gray-400:#9ca4af;--pst-gray-500:#677384;--pst-gray-600:#48566b;--pst-gray-700:#29313d;--pst-gray-800:#222832;--pst-gray-900:#14181e;--pst-pink-50:#fcf8fd;--pst-pink-100:#fcf0fa;--pst-pink-200:#f8dff5;--pst-pink-300:#f3c7ee;--pst-pink-400:#e47fd7;--pst-pink-500:#c132af;--pst-pink-600:#912583;--pst-pink-700:#6e1c64;--pst-pink-800:#46123f;--pst-pink-900:#2b0b27;--pst-foundation-white:#fff;--pst-foundation-black:#14181e}html:not([data-theme]){--pst-color-primary:#0a7d91;--pst-color-primary-bg:#d0ecf1;--pst-color-secondary:#8045e5;--pst-color-secondary-bg:#e0c7ff;--pst-color-accent:#c132af;--pst-color-accent-bg:#f8dff5;--pst-color-info:#276be9;--pst-color-info-bg:#dce7fc;--pst-color-warning:#f66a0a;--pst-color-warning-bg:#f8e3d0;--pst-color-success:#00843f;--pst-color-success-bg:#d6ece1;--pst-color-attention:var(--pst-color-warning);--pst-color-attention-bg:var(--pst-color-warning-bg);--pst-color-danger:#d72d47;--pst-color-danger-bg:#f9e1e4;--pst-color-text-base:#222832;--pst-color-text-muted:#48566b;--pst-color-heading-color:#fff;--pst-color-shadow:rgba(0,0,0,.1);--pst-color-border:#d1d5da;--pst-color-border-muted:rgba(23,23,26,.2);--pst-color-inline-code:#912583;--pst-color-inline-code-links:#085d6c;--pst-color-target:#f3cf95;--pst-color-background:#fff;--pst-color-on-background:#fff;--pst-color-surface:#f3f4f5;--pst-color-on-surface:#222832;--pst-color-link:var(--pst-color-primary);--pst-color-link-hover:var(--pst-color-secondary)}html:not([data-theme]) .only-dark,html:not([data-theme]) .only-dark~figcaption{display:none!important}html[data-theme=light]{--pst-color-primary-bg:#d0ecf1;--pst-color-secondary-bg:#e0c7ff;--pst-color-accent:#c132af;--pst-color-accent-bg:#f8dff5;--pst-color-info-bg:#dce7fc;--pst-color-warning-bg:#f8e3d0;--pst-color-success-bg:#d6ece1;--pst-color-attention:var(--pst-color-warning);--pst-color-attention-bg:var(--pst-color-warning-bg);--pst-color-danger-bg:#f9e1e4;--pst-color-text-base:#222832;--pst-color-text-muted:#48566b;--pst-color-heading-color:#fff;--pst-color-shadow:rgba(0,0,0,.1);--pst-color-border:#d1d5da;--pst-color-border-muted:rgba(23,23,26,.2);--pst-color-inline-code:#912583;--pst-color-inline-code-links:#085d6c;--pst-color-target:#f3cf95;--pst-color-background:#fff;--pst-color-on-background:#fff;--pst-color-surface:#f3f4f5;--pst-color-on-surface:#222832;--pst-color-link:var(--pst-color-primary);--pst-color-link-hover:var(--pst-color-secondary);color-scheme:light}html[data-theme=light] .only-dark,html[data-theme=light] .only-dark~figcaption{display:none!important}html[data-theme=dark]{--pst-color-primary-bg:#042c33;--pst-color-secondary-bg:#341a61;--pst-color-accent:#e47fd7;--pst-color-accent-bg:#46123f;--pst-color-info-bg:#06245d;--pst-color-warning-bg:#652a02;--pst-color-success-bg:#002f17;--pst-color-attention:var(--pst-color-warning);--pst-color-attention-bg:var(--pst-color-warning-bg);--pst-color-danger-bg:#4e111b;--pst-color-text-base:#ced6dd;--pst-color-text-muted:#9ca4af;--pst-color-heading-color:#14181e;--pst-color-shadow:rgba(0,0,0,.2);--pst-color-border:#48566b;--pst-color-border-muted:#29313d;--pst-color-inline-code:#f3c7ee;--pst-color-inline-code-links:#3fb1c5;--pst-color-target:#675c04;--pst-color-background:#14181e;--pst-color-on-background:#222832;--pst-color-surface:#29313d;--pst-color-on-surface:#f3f4f5;--pst-color-link:var(--pst-color-primary);--pst-color-link-hover:var(--pst-color-secondary);color-scheme:dark}html[data-theme=dark] .only-light,html[data-theme=dark] .only-light~figcaption{display:none!important}html[data-theme=dark] img:not(.only-dark):not(.dark-light){filter:brightness(.8) contrast(1.2)}html[data-theme=dark] .bd-content img:not(.only-dark):not(.dark-light){background:#fff;border-radius:.25rem}html[data-theme=dark] .MathJax_SVG *{fill:var(--pst-color-text-base)}.pst-color-primary{color:var(--pst-color-primary)}.pst-color-secondary{color:var(--pst-color-secondary)}.pst-color-accent{color:var(--pst-color-accent)}.pst-color-info{color:var(--pst-color-info)}.pst-color-warning{color:var(--pst-color-warning)}.pst-color-success{color:var(--pst-color-success)}.pst-color-attention{color:var(--pst-color-attention)}.pst-color-danger{color:var(--pst-color-danger)}.pst-color-text-base{color:var(--pst-color-text-base)}.pst-color-text-muted{color:var(--pst-color-text-muted)}.pst-color-heading-color{color:var(--pst-color-heading-color)}.pst-color-shadow{color:var(--pst-color-shadow)}.pst-color-border{color:var(--pst-color-border)}.pst-color-border-muted{color:var(--pst-color-border-muted)}.pst-color-inline-code{color:var(--pst-color-inline-code)}.pst-color-inline-code-links{color:var(--pst-color-inline-code-links)}.pst-color-target{color:var(--pst-color-target)}.pst-color-background{color:var(--pst-color-background)}.pst-color-on-background{color:var(--pst-color-on-background)}.pst-color-surface{color:var(--pst-color-surface)}.pst-color-on-surface{color:var(--pst-color-on-surface)}html[data-theme=light]{--pst-color-primary:#0a7d91;--pst-color-primary-text:#fff;--pst-color-primary-highlight:#053f49;--sd-color-primary:var(--pst-color-primary);--sd-color-primary-text:var(--pst-color-primary-text);--sd-color-primary-highlight:var(--pst-color-primary-highlight);--sd-color-primary-bg:#d0ecf1;--sd-color-primary-bg-text:#14181e;--pst-color-secondary:#8045e5;--pst-color-secondary-text:#fff;--pst-color-secondary-highlight:#591bc2;--sd-color-secondary:var(--pst-color-secondary);--sd-color-secondary-text:var(--pst-color-secondary-text);--sd-color-secondary-highlight:var(--pst-color-secondary-highlight);--sd-color-secondary-bg:#e0c7ff;--sd-color-secondary-bg-text:#14181e;--pst-color-success:#00843f;--pst-color-success-text:#fff;--pst-color-success-highlight:#00381a;--sd-color-success:var(--pst-color-success);--sd-color-success-text:var(--pst-color-success-text);--sd-color-success-highlight:var(--pst-color-success-highlight);--sd-color-success-bg:#d6ece1;--sd-color-success-bg-text:#14181e;--pst-color-info:#276be9;--pst-color-info-text:#fff;--pst-color-info-highlight:#124ab1;--sd-color-info:var(--pst-color-info);--sd-color-info-text:var(--pst-color-info-text);--sd-color-info-highlight:var(--pst-color-info-highlight);--sd-color-info-bg:#dce7fc;--sd-color-info-bg-text:#14181e;--pst-color-warning:#f66a0a;--pst-color-warning-text:#14181e;--pst-color-warning-highlight:#ad4a06;--sd-color-warning:var(--pst-color-warning);--sd-color-warning-text:var(--pst-color-warning-text);--sd-color-warning-highlight:var(--pst-color-warning-highlight);--sd-color-warning-bg:#f8e3d0;--sd-color-warning-bg-text:#14181e;--pst-color-danger:#d72d47;--pst-color-danger-text:#fff;--pst-color-danger-highlight:#9a1d30;--sd-color-danger:var(--pst-color-danger);--sd-color-danger-text:var(--pst-color-danger-text);--sd-color-danger-highlight:var(--pst-color-danger-highlight);--sd-color-danger-bg:#f9e1e4;--sd-color-danger-bg-text:#14181e;--pst-color-light:#f3f4f5;--pst-color-light-text:#14181e;--pst-color-light-highlight:#c9ced2;--sd-color-light:var(--pst-color-light);--sd-color-light-text:var(--pst-color-light-text);--sd-color-light-highlight:var(--pst-color-light-highlight);--sd-color-light-bg:#f7f7f8;--sd-color-light-bg-text:#14181e;--pst-color-muted:#29313d;--pst-color-muted-text:#fff;--pst-color-muted-highlight:#0a0c0f;--sd-color-muted:var(--pst-color-muted);--sd-color-muted-text:var(--pst-color-muted-text);--sd-color-muted-highlight:var(--pst-color-muted-highlight);--sd-color-muted-bg:#5a6c86;--sd-color-muted-bg-text:#fff;--pst-color-dark:#222832;--pst-color-dark-text:#fff;--pst-color-dark-highlight:#030404;--sd-color-dark:var(--pst-color-dark);--sd-color-dark-text:var(--pst-color-dark-text);--sd-color-dark-highlight:var(--pst-color-dark-highlight);--pst-color-black:#14181e;--pst-color-black-text:#fff;--pst-color-black-highlight:#000;--sd-color-black:var(--pst-color-black);--sd-color-black-text:var(--pst-color-black-text);--sd-color-black-highlight:var(--pst-color-black-highlight);--pst-color-white:#fff;--pst-color-white-text:#14181e;--pst-color-white-highlight:#d9d9d9;--sd-color-white:var(--pst-color-white);--sd-color-white-text:var(--pst-color-white-text);--sd-color-white-highlight:var(--pst-color-white-highlight)}html[data-theme=dark]{--pst-color-primary:#3fb1c5;--pst-color-primary-text:#14181e;--pst-color-primary-highlight:#2b7e8d;--sd-color-primary:var(--pst-color-primary);--sd-color-primary-text:var(--pst-color-primary-text);--sd-color-primary-highlight:var(--pst-color-primary-highlight);--sd-color-primary-bg:#042c33;--sd-color-primary-bg-text:#fff;--pst-color-secondary:#9c5ffd;--pst-color-secondary-text:#14181e;--pst-color-secondary-highlight:#6d13fc;--sd-color-secondary:var(--pst-color-secondary);--sd-color-secondary-text:var(--pst-color-secondary-text);--sd-color-secondary-highlight:var(--pst-color-secondary-highlight);--sd-color-secondary-bg:#341a61;--sd-color-secondary-bg-text:#fff;--pst-color-success:#5fb488;--pst-color-success-text:#14181e;--pst-color-success-highlight:#3f8762;--sd-color-success:var(--pst-color-success);--sd-color-success-text:var(--pst-color-success-text);--sd-color-success-highlight:var(--pst-color-success-highlight);--sd-color-success-bg:#002f17;--sd-color-success-bg-text:#fff;--pst-color-info:#79a3f2;--pst-color-info-text:#14181e;--pst-color-info-highlight:#3373eb;--sd-color-info:var(--pst-color-info);--sd-color-info-text:var(--pst-color-info-text);--sd-color-info-highlight:var(--pst-color-info-highlight);--sd-color-info-bg:#06245d;--sd-color-info-bg-text:#fff;--pst-color-warning:#ff9245;--pst-color-warning-text:#14181e;--pst-color-warning-highlight:#f86600;--sd-color-warning:var(--pst-color-warning);--sd-color-warning-text:var(--pst-color-warning-text);--sd-color-warning-highlight:var(--pst-color-warning-highlight);--sd-color-warning-bg:#652a02;--sd-color-warning-bg-text:#fff;--pst-color-danger:#e78894;--pst-color-danger-text:#14181e;--pst-color-danger-highlight:#da485b;--sd-color-danger:var(--pst-color-danger);--sd-color-danger-text:var(--pst-color-danger-text);--sd-color-danger-highlight:var(--pst-color-danger-highlight);--sd-color-danger-bg:#4e111b;--sd-color-danger-bg-text:#fff;--pst-color-light:#f3f4f5;--pst-color-light-text:#14181e;--pst-color-light-highlight:#c9ced2;--sd-color-light:var(--pst-color-light);--sd-color-light-text:var(--pst-color-light-text);--sd-color-light-highlight:var(--pst-color-light-highlight);--sd-color-light-bg:#a3abb2;--sd-color-light-bg-text:#14181e;--pst-color-muted:#f3f4f5;--pst-color-muted-text:#14181e;--pst-color-muted-highlight:#c9ced2;--sd-color-muted:var(--pst-color-muted);--sd-color-muted-text:var(--pst-color-muted-text);--sd-color-muted-highlight:var(--pst-color-muted-highlight);--sd-color-muted-bg:#1d222b;--sd-color-muted-bg-text:#fff;--pst-color-dark:#222832;--pst-color-dark-text:#fff;--pst-color-dark-highlight:#030404;--sd-color-dark:var(--pst-color-dark);--sd-color-dark-text:var(--pst-color-dark-text);--sd-color-dark-highlight:var(--pst-color-dark-highlight);--pst-color-black:#14181e;--pst-color-black-text:#fff;--pst-color-black-highlight:#000;--sd-color-black:var(--pst-color-black);--sd-color-black-text:var(--pst-color-black-text);--sd-color-black-highlight:var(--pst-color-black-highlight);--pst-color-white:#fff;--pst-color-white-text:#14181e;--pst-color-white-highlight:#d9d9d9;--sd-color-white:var(--pst-color-white);--sd-color-white-text:var(--pst-color-white-text);--sd-color-white-highlight:var(--pst-color-white-highlight)}html[data-theme=dark],html[data-theme=light]{--sd-color-card-border:var(--pst-color-border)}html[data-theme=light] .sd-shadow-lg,html[data-theme=light] .sd-shadow-md,html[data-theme=light] .sd-shadow-sm,html[data-theme=light] .sd-shadow-xs{box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important}.bd-content .sd-card{border:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-header{background-color:var(--pst-color-panel-background);border-bottom:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-footer{border-top:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-body,.bd-content .sd-card .sd-card-footer{background-color:var(--pst-color-panel-background)}.bd-content .sd-tab-set>input:checked+label{border-color:transparent transparent var(--pst-color-primary);color:var(--pst-color-primary)}.bd-content .sd-tab-set>input:not(:checked)+label:hover{border-color:var(--pst-color-secondary);color:var(--pst-color-secondary)}.bd-content .sd-tab-set>label{border-top:.125rem solid transparent;color:var(--pst-color-text-muted);padding-top:.5em}html .bd-content .sd-tab-set>label:hover{border-color:var(--pst-color-secondary);color:var(--pst-color-secondary)}details.sd-dropdown{border:0!important;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow)!important}details.sd-dropdown summary.sd-card-header{border:0!important}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{border:0}details.sd-dropdown summary.sd-card-header{--pst-sd-dropdown-color:var(--pst-gray-500);--pst-sd-dropdown-bg-color:var(--pst-color-surface);align-items:center;background-color:var(--pst-sd-dropdown-bg-color)!important;border-left:.2rem solid var(--pst-sd-dropdown-color)!important;display:flex;font-weight:600;padding-bottom:.5rem;padding-top:.5rem;position:relative}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-card-border)}details.sd-dropdown summary.sd-card-header.sd-bg-primary,details.sd-dropdown summary.sd-card-header.sd-bg-primary+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-primary);--pst-sd-dropdown-bg-color:var(--sd-color-primary-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-primary{color:var(--sd-color-primary-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-secondary,details.sd-dropdown summary.sd-card-header.sd-bg-secondary+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-secondary);--pst-sd-dropdown-bg-color:var(--sd-color-secondary-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-secondary{color:var(--sd-color-secondary-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-success,details.sd-dropdown summary.sd-card-header.sd-bg-success+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-success);--pst-sd-dropdown-bg-color:var(--sd-color-success-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-success{color:var(--sd-color-success-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-info,details.sd-dropdown summary.sd-card-header.sd-bg-info+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-info);--pst-sd-dropdown-bg-color:var(--sd-color-info-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-info{color:var(--sd-color-info-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-warning,details.sd-dropdown summary.sd-card-header.sd-bg-warning+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-warning);--pst-sd-dropdown-bg-color:var(--sd-color-warning-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-warning{color:var(--sd-color-warning-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-danger,details.sd-dropdown summary.sd-card-header.sd-bg-danger+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-danger);--pst-sd-dropdown-bg-color:var(--sd-color-danger-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-danger{color:var(--sd-color-danger-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-light,details.sd-dropdown summary.sd-card-header.sd-bg-light+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-light);--pst-sd-dropdown-bg-color:var(--sd-color-light-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-light{color:var(--sd-color-light-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-muted,details.sd-dropdown summary.sd-card-header.sd-bg-muted+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-muted);--pst-sd-dropdown-bg-color:var(--sd-color-muted-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-muted{color:var(--sd-color-muted-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-dark,details.sd-dropdown summary.sd-card-header.sd-bg-dark+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-dark);--pst-sd-dropdown-bg-color:var(--sd-color-dark-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-dark{color:var(--sd-color-dark-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-black,details.sd-dropdown summary.sd-card-header.sd-bg-black+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-black);--pst-sd-dropdown-bg-color:var(--sd-color-black-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-black{color:var(--sd-color-black-bg-text)!important}details.sd-dropdown summary.sd-card-header.sd-bg-white,details.sd-dropdown summary.sd-card-header.sd-bg-white+div.sd-summary-content{--pst-sd-dropdown-color:var(--sd-color-white);--pst-sd-dropdown-bg-color:var(--sd-color-white-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-white{color:var(--sd-color-white-bg-text)!important}details.sd-dropdown summary.sd-card-header:before{content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{background-color:var(--pst-color-on-background);border-bottom-left-radius:calc(.25rem - 1px);border-left:.2rem solid var(--pst-sd-dropdown-color)!important}details.sd-dropdown summary.sd-card-header span.sd-summary-icon{align-items:center;color:var(--pst-sd-dropdown-color)!important;display:inline-flex}details.sd-dropdown summary.sd-card-header span.sd-summary-icon svg{opacity:1}details.sd-dropdown summary.sd-card-header .sd-summary-down,details.sd-dropdown summary.sd-card-header .sd-summary-up{top:.7rem}.bd-content .admonition button.toggle-button{color:inherit}.bd-content details.toggle-details summary{border-left:3px solid var(--pst-color-primary)}html div.rendered_html html .jp-RenderedHTMLCommon table{table-layout:auto}html[data-theme=dark] .bd-content .nboutput .output_area.rendered_html{background-color:var(--pst-color-text-base);border-radius:.25rem;color:var(--pst-color-on-background);padding:.5rem}html[data-theme=dark] .bd-content .nboutput .output_area.stderr{background:var(--pst-color-danger)}div.nblast.container{margin-bottom:1rem}div.cell_output .output{max-width:100%;overflow-x:auto}html[data-theme=dark] .bd-content div.cell_output .text_html,html[data-theme=dark] .bd-content div.cell_output img{background-color:var(--pst-color-text-base);border-radius:.25rem;color:var(--pst-color-on-background);padding:.5rem}.bd-content div.cell_input{display:flex;flex-direction:column;justify-content:stretch}.bd-content div.cell_input,.bd-content div.output{border-radius:.25rem}.bd-content div.output table{table-layout:auto}html[data-theme=dark] .bd-content img.leaflet-tile.leaflet-tile-loaded{border-radius:0;padding:0}.bd-search-container div#search-results>h2{font-size:var(--pst-font-size-icon);margin-top:0}.bd-search-container div#search-results p.search-summary{color:var(--pst-color-text-muted)}.bd-search-container ul.search{list-style:none;margin:0}.bd-search-container ul.search li{background-image:none;border-top:1px solid var(--pst-color-text-muted);margin:1rem 0;padding:1rem 0}.bd-search-container ul.search li>a{font-size:1.2em}.bd-search-container ul.search li div.context,.bd-search-container ul.search li p.context{color:var(--pst-color-text-base);margin:.5em 0 0}.bd-search-container ul.search li div.context a:before,.bd-search-container ul.search li p.context a:before{color:var(--pst-color-text-muted);content:"#";padding-right:.2em} /*# sourceMappingURL=pydata-sphinx-theme.css.map*/ \ No newline at end of file diff --git a/_static/styles/pydata-sphinx-theme.css.map b/_static/styles/pydata-sphinx-theme.css.map index d6e411ab3..356a7e887 100644 --- a/_static/styles/pydata-sphinx-theme.css.map +++ b/_static/styles/pydata-sphinx-theme.css.map @@ -1 +1 @@ -{"version":3,"file":"styles/pydata-sphinx-theme.css","mappings":"AAAA,KCAA,wBAOE,+DACA,+BCRF,yBAME,0BAGA,wBACA,2BACA,0BACA,2BACA,0BACA,6BAGA,+BAGA,sCACA,sCACA,qCACA,yCAGA,8BAGA,8BACA,2JAIA,mHAGA,0DAGA,6DACA,qECzCF,2BAME,4BAGA,2BACA,oCACA,kCACA,4BACA,yBACA,wBACA,0BACA,2BACA,6BACA,4BACA,sBACA,sBACA,qBACA,oBACA,sBACA,8BCxBF,kDAKE,uDACA,mEACA,mEACA,mEACA,kEACA,yDACA,qDACA,oDACA,mEACA,oDACA,mDCfF,qEAKE,oEACA,sEACA,0ECPF,mCACE,yDLQA,CKPA,KAGF,4CACE,CAGA,gCACA,CACA,YACA,uBANA,uCACA,gBACA,iBACA,CACA,gBAGA,+BAGA,sCACE,GAMF,iCADA,aACA,CAFF,qBAGE,UAGA,+CACE,YAGF,iBACE,GAIJ,oBC8BE,4BAEA,0BAzCA,4CAhByB,8BAIH,SA8BpB,0BA0BF,iCACE,CAlD8B,6BAuB9B,CA2BA,iDA1BA,CAgCA,mBAIF,2BACE,iBACA,iCACE,iBA+FJ,yCACE,cD7IF,gCACE,CACA,cACA,CACA,gBACA,CAJA,UACA,CACA,aACA,CACA,oBACA,4BACA,iBACA,oBAEA,SACE,iCAOF,iCACE,2BACA,oBACA,iBAIJ,8BACE,iBAGF,8BACE,kCAKF,0CACA,2CACA,kBAHF,wBAIE,IAKA,iCACA,CAHF,YAIE,OADA,8BAOA,CANA,GAGF,iCAGE,IAGF,iCAGE,OADA,8BAOA,CANA,GAGF,iCAGE,IAGF,iCAGE,OADA,gCAOA,CANA,GAGF,iCAGE,mBAGF,oCAEE,IAGF,QACE,6CACA,mBAGF,4CAIE,KAGF,+CAEE,kCACA,oBAGA,wCACE,CAEA,+CAFA,cACA,oBAEA,MAIJ,kCACE,KAKA,yCACA,CAEA,wCACA,sBAHA,gCACA,kBACA,CALF,cACE,aL1HyB,cKkIzB,UAEE,mBACA,kBAYF,2CACA,aAFA,qCACA,CALA,YACA,CACA,SACA,CEq8BkC,cFx8BlC,CACA,QACA,CACA,yBACA,CANF,YASE,YGvKA,yCACA,CDqmCkC,+CChmClC,CALA,6CAEA,CANA,MACA,CAKA,aACA,CATF,cACE,CAEA,OACA,kBACA,CAJA,KACA,CASA,2BAGA,uCALA,YAMA,kBAEE,0BADF,uBAGE,eCzBF,YACA,CAFF,WACE,CACA,sBACA,oCAEA,YACE,gBAIJ,UACE,yBCoDE,eDrDJ,eTYwB,qDWjBtB,kBACA,CAHA,YACA,CAEA,sBACA,CAPF,eAEE,CAMA,oBAJA,iBACA,CAEA,iBACA,CANA,UAOA,4BDmEE,mDC5EJ,gBAaI,yDAGF,eACE,SACA,gEAQA,UACA,CAJA,WACA,OACA,CAJF,iBACE,CAGA,KACA,CAJA,UACA,CAIA,UACA,gEAGF,YACE,wDAIF,wCACE,+BAMF,8CACE,kCAKF,2CACE,UC7CF,YACA,CAFA,qBACA,CAFF,WACE,CAEA,WACA,sBAEA,YACE,CACA,YADA,sBAEA,4CAEE,YACA,sBACA,CAHF,qBACE,CAMA,cACA,gBACA,cANA,UAOA,0BFwCF,uDEpCM,kBAHJ,kBAII,aC3BR,6CADF,UAEE,8BAEA,YACE,YACA,CACA,YADA,YAEA,gGAGF,YAGE,sBACA,CAEA,YAFA,SACA,uBAEA,kCAGF,iBACE,+BAGF,cACE,2BAIF,eACE,oBC/BJ,eACE,0CAEA,YACE,sBACA,0CCJF,YACE,sBACA,gBACA,YR0mCgC,mDS/lClC,sDACA,CAIA,uBADA,eACA,CAFA,SACA,CAVF,eACE,MACA,CAKA,UAEA,CAPA,YAUA,8BAEE,kBACA,CAFF,YACE,CACA,kBACA,kBACA,mBACA,yBAOA,mBADA,YACA,CAHF,+BACE,oCAGA,iCAKA,aACA,yBNsBA,gCMxBF,YAII,YACA,oBACA,sHAOF,kBACA,CAJF,YAGE,CACA,cACA,UAEA,8EAGF,eAEE,wCAIF,aACE,CACA,UADA,iBAEA,sCAGF,mBAEE,wBAIF,YACE,yBNfA,uBMcF,kBAKI,uCAGF,iCVWF,qBACA,4CApDE,0BAsDF,iCACE,0BAzEF,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BAmCvB,oDAsIF,yCACE,2CA3BF,qEADA,8BACA,CUhEE,eVkEA,yCU1DI,YADA,iCACA,CAFF,aAGE,+CVtDJ,yBACA,mCAOF,yBA1BA,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BA6CvB,uDA4HF,yCACE,iDU1EI,+CACA,CTugC4B,wCSzgC5B,mDACA,CAEA,cACA,iBAFA,eACA,CALF,YAOE,gEAEA,qBAGE,+FAGA,wBACE,4DAKJ,YACE,yBN/DN,kCMwEF,oBACE,YAIJ,eAIE,iBVnGE,yBACA,mCAOF,yBA1BA,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BA6CvB,8BU2FA,qCACA,CAFF,yBACE,CACA,eACA,iBACA,mCAIJ,eACE,iBACA,sBACA,iCAcI,kBACA,6BACA,CAJA,cACA,CAFF,YACE,CACA,mCACA,CAEA,eACA,sBACA,iCAGF,iBACE,yBNpHF,gCMmHA,YAGI,oCAIJ,gBACE,0BN3HF,kCM0HA,YAGI,yBVpBJ,mEADF,iCAGI,gCAUJ,yCACE,iCUeF,YACE,yBNtIA,gCMqIF,eAGI,6BAMN,gBACE,yBN/IE,2BM8IJ,YAGI,gCAKJ,YACE,yBNvJE,8BMsJJ,YAGI,yBCxNJ,YACE,gBACA,6CAIE,wCADF,2CAEE,uGAKA,iBACA,CAHF,YAEE,CACA,SACA,mDAGF,gBACE,qBCFF,4CACA,CAFA,8CACA,CAXF,YACE,CAKA,aCoBE,CDzBF,qBACA,CAWA,8CAXA,QACA,kDACA,CAQA,eACA,CCcE,sBDjBF,CANA,eACA,6BACA,CCoBE,SDXF,yBR2CE,oBQ1DJ,sCAiBI,gCAIF,6CACE,gCAGF,cACE,yBRgCA,iCQ7BF,YAEI,8FAKJ,gCAIE,+IAKA,eACE,2CAKJ,YACE,sBACA,wEAIE,gCACA,CAFA,6CACA,CAFF,iDACE,CAEA,mBACA,qEAMA,YACE,6EAQA,wBACA,CAFA,WACA,CALF,YACE,sBACA,CAIA,kBAHA,QACA,CAFA,SAKA,yEAKJ,YACE,sBACA,sEAKA,kBACA,CAFF,YACE,CACA,SACA,yBRhCF,0CQPF,YA2CI,oDAIJ,4CAEE,yBR1CA,kDQwCF,eAII,kDAKF,kBADF,eAEE,mCAEF,eACE,eACA,wBAEF,iBACE,gDAIE,kBACE,0CAeJ,mBALA,cAEA,aAEA,CANA,WACA,CAKA,sBACA,CAVF,iBACE,CACA,OACA,CAFA,KACA,CAEA,UAOA,gDAEA,mCACE,4CAGF,oBACE,iBACA,kBACA,kDACA,8BACE,kCAKJ,YADF,UAEE,wCACA,eACE,oCAGA,iBACA,CACA,QADA,QACA,CAHF,UAIE,cAMN,kBACE,yBR9GE,aQ6GJ,aAII,kBAGF,eACE,oBAGA,kBACE,mBZtEJ,gBY4EE,iCZ7EF,CY2EA,aACE,sBACA,CZ7EF,oBY+EE,yBZnJA,0BAwEA,4BACA,CAFF,yBACE,CA/F8B,6BAuB9B,CA0EA,iDAzEA,kDAwEA,iCAOA,4CYuEI,qCACA,CAFF,yBACE,CACA,eACA,iBACA,yBZ5DJ,6BAFF,qEAEE,CAHF,8BACA,CYoEE,eAEE,gCAKJ,6CAGE,uDAFA,iDACA,oBAeA,CAdA,uBAQA,gCACA,+CAHA,kBACA,CAFA,iBASA,oCAJA,YACE,yBRnKF,uBQ4JF,sCAYI,wBEzNJ,4CAMA,CAhBF,YACE,CAEA,qBACA,CAFA,aACA,CAMA,6CACA,CAJA,iDACA,CANA,OACA,CAcA,gBATA,sBACA,CAJA,eACA,6BACA,CAEA,kCASA,0BV0CE,sBU3DJ,sCAYI,0BAQJ,aACE,0BVsCE,wBUvCJ,6CAGI,kBACA,4BAGF,mBACE,sBCrBJ,YACE,eAIF,qBACE,CACA,QACA,CAGA,MACA,CANA,UACA,CAEA,cACA,MACA,CACA,+BACA,CALA,OACA,CAIA,YdylCkC,iHcnlClC,YAEE,YACA,2DAKA,cADF,kBAEE,+DAKA,eADF,kBAEE,yBXkBA,oCWqBF,YACE,uDAIA,QACE,QACA,qBAIJ,aACE,mBACA,6BXrBA,oBWVF,aACA,Cd+iCkC,YcljClC,CAaE,OANF,gBAME,CAbF,gBACA,CAEA,eACA,CAiCF,cAxCE,MACA,CAMA,sDACA,kBAEA,CANA,SACA,CAJA,YAgBE,8BXFA,sBWVF,aACA,Cd+iCkC,YcljClC,CAOA,iBAGE,CAVF,gBACA,CAEA,eACA,CAuCF,cA9CE,CAaE,QAbF,KACA,CAMA,sDACA,kBAEA,CANA,SACA,CAJA,YAaE,oBCtEF,YACA,eACA,iBAJF,eACE,eAMA,sCAGE,oBACA,CAFF,YACE,CACA,eAIA,wCACA,iChB6EF,qBACA,8CApDE,0BAsDF,iCACE,0BAzEF,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BAmCvB,sDAsIF,yCACE,mEgB1JE,iCACA,CAFA,qCACA,CAHF,yBACE,gBACA,CAEA,eACA,oBCvBJ,eACA,CAHF,YACE,mBACA,CACA,cACA,2CAGA,cACE,gBACA,iDjB2JA,mEADF,iCAGI,2BiBvJF,mBADF,YAEE,8FASE,oCADA,iBACA,CAJF,qBAKE,+CAIF,aACE,8CAGF,UACE,0CAGF,aACE,wCAMF,oBADF,YAEE,eCrCF,kBACA,CAJA,YACA,cAEA,CACA,UATA,+BACA,CAGA,QACA,CAJA,mCACA,gBACA,CAJF,iBACE,CAGA,UAOA,iBAGA,eACE,mBAKA,WACA,CAFF,cACE,CACA,UACA,iBAIF,oBACE,ClByBA,4DAXA,yBACA,mCAOF,yBA1BA,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BA6CvB,gBmBpDF,aACE,gBACA,mBAGA,kBACE,gBAKJ,YACE,sBACA,kBAGE,kBACA,CAGA,iCnBwEJ,CmB7EE,YACE,CACA,WACA,CACA,qBACA,CAFA,kBACA,CnByEJ,oBACA,wBApDE,0BAsDF,iCACE,0BAzEF,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BAmCvB,gCAsIF,yCACE,+BmBnJA,aADF,iBAEE,kCAIA,YACE,uCAEF,sBACE,0CAIF,aACE,+CAEF,wBACE,sDAMN,YACE,wBCrDE,mBADF,cAEE,2BAEA,iBACE,qBAKJ,6CACE,0BhBgDA,oBgBjDF,sCAGI,wBAIJ,gCACE,kDACA,oBACA,iBCrBJ,UACE,mBAGE,kBADF,aAEE,mBAGF,eACE,mBAKA,kBACA,YACA,CAGA,iCACA,CARF,YAEE,CAGA,aACA,kBACA,CAHA,YACA,CAGA,oBACA,qCAEA,oBrBwCF,4BAEA,CqBxCI,gBrBbkB,qDqBalB,CrBwCJ,yBAzCA,4CAhByB,8BqBkBrB,2CrBgBF,0BA0BF,iCACE,CAlD8B,6BAuB9B,CA2BA,iDA1BA,CAgCA,uFAIF,2BACE,mDACA,iCACE,mDA+FJ,yCACE,iDAxIA,yBACA,mCAOF,yBA1BA,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BA6CvB,6CqBnBA,2BACE,mDACA,iCACE,mCAIJ,qBACE,cACA,uDAEA,yBACE,6BAIJ,UACE,8BAGF,WACE,iDAEA,gBACE,Y3B7BmB,wC4BvBzB,CAFA,oB5ByByB,C4BvBzB,iCAJA,SACA,CAFA,kBACA,CAFF,iBAOE,8BAJA,4CASE,CALF,kBAIE,iCACA,kBAIA,6BACA,WAFF,iBAGE,0CAKA,kCADA,0BACA,CAFF,iBAGE,+BAKA,iCACE,4FAIF,uBAEE,gBACA,yCAQF,8BAHF,YACE,kBACA,YAEA,eAIJ,4CACE,iCACA,iDAME,4CACA,CALF,WAEE,gBACA,CAEA,kCAFA,yCAGA,gBAWF,oBACA,CAFA,kBACA,CAIA,gBAHA,iCACA,CAJF,YACE,CAGA,kBAGA,sBtByFE,mEADF,iCAGI,8BAUJ,yCACE,kBsBlGF,gBACE,0DAKJ,YAEE,+DAGA,YACE,CAIA,QACA,CAEA,gBACA,CACA,gBATA,cAEA,CAIA,UACA,CrB4gCgC,OqB/gChC,CACA,8BACA,CAEA,SACA,CAPA,YAQA,sDrBwgCgC,qBqBjgChC,CAJF,YACE,CAKA,WACA,CACA,OAJA,UACA,CAJA,cACA,CAKA,KACA,CAHA,UACA,CAJA,YAOA,6CAGF,WACE,CACA,iBADA,aAEA,qEAIF,mCAEE,sBASF,kBACA,CAIA,0CAJA,wCACA,oBACA,kCACA,CALF,mBACE,CAIA,YAEA,4BAEA,4CACE,oCAEF,wCACE,mDAIF,sCACE,2CACA,CACA,iBADA,iBAEA,8CAGF,eACE,wBAIF,kBACE,gCAIF,YACE,yBlB7GA,+BkB4GF,YAII,iCCrKF,gGAFF,aACE,kBCDF,0BpBuDE,+BmBvDF,gBAMI,mCAUA,yCACA,CAJF,oBACE,CAGA,mCACA,CAJA,iBACA,eACA,CAEA,oBACA,oCAGA,wCACA,8CACE,yCAIA,WACA,CAFF,oCACE,CACA,yBACA,mBACA,sBE/BN,gBADA,iCACA,CAJF,eAEE,UAGA,oCzB2KA,yCACE,2ByBzKF,YACE,aACA,iCzB0JA,mEADF,iCAGI,kCyBxJA,kCADF,oBAEE,CASJ,+LAEF,YACE,qCC/BF,oCACE,iCACA,kBAEA,yBtB2DE,oCsB/DJ,mBAMI,4C1BuCA,yBACA,mCAOF,yBA1BA,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BA6CvB,mDA4HF,yCACE,4C0BzKA,qCADF,gCAEE,yBAIJ,oCACE,+CACA,2CAEA,+CACE,iCACA,uBACA,4DAEA,+CACE,iD1BkBF,yBACA,C0BhBA,0C1BgBA,kCAOF,yBA1BA,CALgC,6BAuB9B,CAlBF,2CAhByB,CAIH,iDAOU,CAXP,6BA6CvB,C0BzBE,iD1B0GJ,qEAEE,CAHF,8BACA,C0BxGE,e1BuGF,CAGE,iB0BxGE,UACA,8DAEA,UACE,CACA,WACA,CAEA,MACA,CAHA,iBACA,CAEA,MALA,UACA,CAEA,UAGA,yDAOR,eAEE,azB4jCkC,yBGnjChC,wDsBXJ,eAKI,eCtDJ,kBAEE,sCAKA,YACE,CASA,iHAKJ,aACE,CAEE,wCADF,iC3BuFA,C2BtFE,sBAGF,aACE,CAIA,iBACA,CAJA,8BAGA,C3B6EF,oBACA,6BArEE,0BAwEA,4BACA,CAFF,yBACE,CA/F8B,6BAuB9B,CA0EA,iDAzEA,0DAwEA,iCAOA,8BAcA,6BAFF,qEAEE,CAHF,8BACA,C2BhGE,eAEE,oCAEA,iCACE,oDjCdmB,+CkCrBzB,CAJA,uBACA,mCACA,qBlCuByB,CkCrBzB,+FJHA,CILA,oBACA,CACA,eACA,CAFA,eACA,CACA,uBACA,CJCA,kBIRF,qBAaE,0DAEA,mBACE,iBACA,kBAKF,6CADF,qCAEE,oBAIA,6CADF,qCAEE,gBAIA,4CADF,oCAEE,sBAGF,eACE,6BAGE,2BACA,CACA,gDADA,yBACA,CAHF,kBAIE,mCAKF,8BACE,8CACA,qCAKF,8BACE,gDACA,wCAKF,6BACE,mDACA,wBC9DF,6CAFF,YACE,sBAEA,yBzB4DE,uByB/DJ,eAMI,uDAKA,gCACA,CAFA,6CACA,CAFF,iDACE,CAEA,mBACA,wCAIA,eACA,CAFF,kBACE,CACA,SACA,6CAIE,kCAFF,aACE,iBAEA,mDAIE,6BAFF,8BACE,qBAEA,8CC5BN,YACA,cAFF,eAGE,sEAIE,uCACA,CAFA,cACA,CACA,gBAHF,cAIE,2FAGE,kBACA,CAGA,4CACA,CACA,6CADA,8BACA,CAPF,YACE,CACA,SACA,cACA,yCAIA,kFAGF,iCACE,kBACA,wFAEA,gCACE,wBACA,wCACA,sDACA,wFAGJ,iCACE,oGAKF,+CACE,kEAIJ,yCACE,iCACA,0EAGE,iCACE,qEAIJ,wCACE,0EAGF,2BACE,wEAKA,0CADA,wCACA,CAFF,kBAGE,4BC7DqB,+CAUzB,CAJA,uBACA,mCACA,qBARyB,CAUzB,gGATF,oBAEE,CACA,eACA,CAFA,qBACA,CACA,uBPDA,oDOUA,eACE,sEAIF,kBACE,oBACA,mEAIF,eAEE,gEAMA,qDACA,CAHF,eACE,+BACA,CACA,iBACA,UAGA,8EC1BA,yCACA,CAPF,UACE,CACA,WACA,CACA,MACA,CAGA,oBALA,iBACA,CACA,KACA,CALA,UACA,CAKA,UAKA,4ED0BE,2BACA,CAEA,0CACA,CAHA,yBACA,CAHA,WACA,CAHA,UACA,CAIA,mBACA,CACA,UARF,iBACE,CACA,UAOA,oEAIF,eACE,gDAIJ,uCACE,kGAEE,8CACE,gGAGF,gCACE,6CACA,4CAKN,qCACE,8FAEE,4CACE,4FAGF,8BACE,2CACA,4CAKN,qCACE,8FAEE,4CACE,4FAGF,8BACE,2CACA,0CAKN,oCACE,4FAEE,2CACE,0FAGF,6BACE,0CACA,wCAKN,oCACE,0FAEE,2CACE,wFAGF,6BACE,yCACA,sCAKN,qCACE,wFAEE,4CACE,sFAGF,8BACE,wCACA,oCAKN,qCACE,sFAEE,4CACE,oFAGF,8BACE,uCACA,gDAKN,uCACE,kGAEE,8CACE,gGAGF,gCACE,6CACA,sCAKN,kCACE,wFAEE,yCACE,sFAGF,2BACE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","sources":["webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/pydata-sphinx-theme.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/variables/_layout.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/variables/_fonts.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/variables/_icons.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/variables/_admonitions.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/variables/_versionmodified.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/base/_base.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/abstracts/_links.scss","webpack://pydata_sphinx_theme/./node_modules/bootstrap/scss/_variables.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_skip-link.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_container.scss","webpack://pydata_sphinx_theme/./node_modules/bootstrap/scss/mixins/_breakpoints.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_announcement.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_article.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_footer.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_footer-article.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_footer-content.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_header.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_header-article.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_sidebar-primary.scss","webpack://pydata_sphinx_theme/./node_modules/bootstrap/scss/mixins/_grid.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_sidebar-secondary.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/sections/_sidebar-toggle.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_breadcrumbs.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_icon-links.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/header/_header-logo.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_navbar-links.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_page-toc.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_prev-next.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_search.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_searchbox.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/abstracts/_mixins.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_switcher-theme.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_switcher-version.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_toc-inpage.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_versionmodified.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_indices.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/components/_readthedocs-switcher.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_admonitions.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/abstracts/_color.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_api.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_code.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_figures.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_footnotes.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_hacks.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_lists.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_quotes.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_spans.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_tables.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_toctree.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/content/_math.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_ablog.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_bootstrap.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_copybutton.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_ethical-ads.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_execution.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_pydata.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/variables/_color.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_togglebutton.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_notebooks.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/extensions/_leaflet.scss","webpack://pydata_sphinx_theme/./src/pydata_sphinx_theme/assets/styles/pages/_search.scss"],"sourcesContent":["html{--pst-header-height: 4rem;--pst-header-article-height: calc(var(--pst-header-height) * 2 / 3);--pst-sidebar-secondary: 17rem}html{--pst-font-size-base: 1rem;--pst-font-size-h1: 2.5rem;--pst-font-size-h2: 2rem;--pst-font-size-h3: 1.75rem;--pst-font-size-h4: 1.5rem;--pst-font-size-h5: 1.25rem;--pst-font-size-h6: 1.1rem;--pst-font-size-milli: 0.9rem;--pst-sidebar-font-size: 0.9rem;--pst-sidebar-font-size-mobile: 1.1rem;--pst-sidebar-header-font-size: 1.2rem;--pst-sidebar-header-font-weight: 600;--pst-admonition-font-weight-heading: 600;--pst-font-weight-caption: 300;--pst-font-weight-heading: 400;--pst-font-family-base-system: -apple-system, BlinkMacSystemFont, Segoe UI, \"Helvetica Neue\", Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;--pst-font-family-monospace-system: \"SFMono-Regular\", Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, monospace;--pst-font-family-base: var(--pst-font-family-base-system);--pst-font-family-heading: var(--pst-font-family-base-system);--pst-font-family-monospace: var(--pst-font-family-monospace-system)}html{--pst-font-size-icon: 1.5rem;--pst-icon-check-circle: \"\";--pst-icon-info-circle: \"\";--pst-icon-exclamation-triangle: \"\";--pst-icon-exclamation-circle: \"\";--pst-icon-times-circle: \"\";--pst-icon-lightbulb: \"\";--pst-icon-download: \"\";--pst-icon-angle-left: \"\";--pst-icon-angle-right: \"\";--pst-icon-external-link: \"\";--pst-icon-search-minus: \"\";--pst-icon-github: \"\";--pst-icon-gitlab: \"\";--pst-icon-share: \"\";--pst-icon-bell: \"\";--pst-icon-pencil: \"\";--pst-breadcrumb-divider: \"\"}html{--pst-icon-admonition-default: var(--pst-icon-bell);--pst-icon-admonition-note: var(--pst-icon-info-circle);--pst-icon-admonition-attention: var(--pst-icon-exclamation-circle);--pst-icon-admonition-caution: var(--pst-icon-exclamation-triangle);--pst-icon-admonition-warning: var(--pst-icon-exclamation-triangle);--pst-icon-admonition-danger: var(--pst-icon-exclamation-triangle);--pst-icon-admonition-error: var(--pst-icon-times-circle);--pst-icon-admonition-hint: var(--pst-icon-lightbulb);--pst-icon-admonition-tip: var(--pst-icon-lightbulb);--pst-icon-admonition-important: var(--pst-icon-exclamation-circle);--pst-icon-admonition-seealso: var(--pst-icon-share);--pst-icon-admonition-todo: var(--pst-icon-pencil)}html{--pst-icon-versionmodified-default: var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-added: var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-changed: var(--pst-icon-exclamation-circle);--pst-icon-versionmodified-deprecated: var(--pst-icon-exclamation-circle)}:root{--pst-teal-50: #f4fbfc;--pst-teal-100: #e9f6f8;--pst-teal-200: #d0ecf1;--pst-teal-300: #abdde6;--pst-teal-400: #3fb1c5;--pst-teal-500: #0a7d91;--pst-teal-600: #085d6c;--pst-teal-700: #064752;--pst-teal-800: #042c33;--pst-teal-900: #021b1f;--pst-violet-50: #f4eefb;--pst-violet-100: #e0c7ff;--pst-violet-200: #d5b4fd;--pst-violet-300: #b780ff;--pst-violet-400: #9c5ffd;--pst-violet-500: #8045e5;--pst-violet-600: #6432bd;--pst-violet-700: #4b258f;--pst-violet-800: #341a61;--pst-violet-900: #1e0e39;--pst-gray-50: #f9f9fa;--pst-gray-100: #f3f4f5;--pst-gray-200: #e5e7ea;--pst-gray-300: #d1d5da;--pst-gray-400: #9ca4af;--pst-gray-500: #677384;--pst-gray-600: #48566b;--pst-gray-700: #29313d;--pst-gray-800: #222832;--pst-gray-900: #14181e;--pst-pink-50: #fcf8fd;--pst-pink-100: #fcf0fa;--pst-pink-200: #f8dff5;--pst-pink-300: #f3c7ee;--pst-pink-400: #e47fd7;--pst-pink-500: #c132af;--pst-pink-600: #912583;--pst-pink-700: #6e1c64;--pst-pink-800: #46123f;--pst-pink-900: #2b0b27;--pst-foundation-white: #ffffff;--pst-foundation-black: #14181e}html:not([data-theme]){--pst-color-primary: #0a7d91;--pst-color-primary-bg: #d0ecf1;--pst-color-secondary: #8045e5;--pst-color-secondary-bg: #e0c7ff;--pst-color-accent: #c132af;--pst-color-accent-bg: #f8dff5;--pst-color-info: #276be9;--pst-color-info-bg: #dce7fc;--pst-color-warning: #f66a0a;--pst-color-warning-bg: #f8e3d0;--pst-color-success: #00843f;--pst-color-success-bg: #d6ece1;--pst-color-attention: var(--pst-color-warning);--pst-color-attention-bg: var(--pst-color-warning-bg);--pst-color-danger: #d72d47;--pst-color-danger-bg: #f9e1e4;--pst-color-text-base: #222832;--pst-color-text-muted: #48566b;--pst-color-heading-color: #ffffff;--pst-color-shadow: rgba(0, 0, 0, 0.1);--pst-color-border: #d1d5da;--pst-color-border-muted: rgba(23, 23, 26, 0.2);--pst-color-inline-code: #912583;--pst-color-inline-code-links: #085d6c;--pst-color-target: #f3cf95;--pst-color-background: #ffffff;--pst-color-on-background: #ffffff;--pst-color-surface: #f3f4f5;--pst-color-on-surface: #222832}html:not([data-theme]){--pst-color-link: var(--pst-color-primary);--pst-color-link-hover: var(--pst-color-secondary)}html:not([data-theme]) .only-dark,html:not([data-theme]) .only-dark~figcaption{display:none !important}html[data-theme=light]{--pst-color-primary: #0a7d91;--pst-color-primary-bg: #d0ecf1;--pst-color-secondary: #8045e5;--pst-color-secondary-bg: #e0c7ff;--pst-color-accent: #c132af;--pst-color-accent-bg: #f8dff5;--pst-color-info: #276be9;--pst-color-info-bg: #dce7fc;--pst-color-warning: #f66a0a;--pst-color-warning-bg: #f8e3d0;--pst-color-success: #00843f;--pst-color-success-bg: #d6ece1;--pst-color-attention: var(--pst-color-warning);--pst-color-attention-bg: var(--pst-color-warning-bg);--pst-color-danger: #d72d47;--pst-color-danger-bg: #f9e1e4;--pst-color-text-base: #222832;--pst-color-text-muted: #48566b;--pst-color-heading-color: #ffffff;--pst-color-shadow: rgba(0, 0, 0, 0.1);--pst-color-border: #d1d5da;--pst-color-border-muted: rgba(23, 23, 26, 0.2);--pst-color-inline-code: #912583;--pst-color-inline-code-links: #085d6c;--pst-color-target: #f3cf95;--pst-color-background: #ffffff;--pst-color-on-background: #ffffff;--pst-color-surface: #f3f4f5;--pst-color-on-surface: #222832;color-scheme:light}html[data-theme=light]{--pst-color-link: var(--pst-color-primary);--pst-color-link-hover: var(--pst-color-secondary)}html[data-theme=light] .only-dark,html[data-theme=light] .only-dark~figcaption{display:none !important}html[data-theme=dark]{--pst-color-primary: #3fb1c5;--pst-color-primary-bg: #042c33;--pst-color-secondary: #9c5ffd;--pst-color-secondary-bg: #341a61;--pst-color-accent: #e47fd7;--pst-color-accent-bg: #46123f;--pst-color-info: #79a3f2;--pst-color-info-bg: #06245d;--pst-color-warning: #ff9245;--pst-color-warning-bg: #652a02;--pst-color-success: #5fb488;--pst-color-success-bg: #002f17;--pst-color-attention: var(--pst-color-warning);--pst-color-attention-bg: var(--pst-color-warning-bg);--pst-color-danger: #e78894;--pst-color-danger-bg: #4e111b;--pst-color-text-base: #ced6dd;--pst-color-text-muted: #9ca4af;--pst-color-heading-color: #14181e;--pst-color-shadow: rgba(0, 0, 0, 0.2);--pst-color-border: #48566b;--pst-color-border-muted: #29313d;--pst-color-inline-code: #f3c7ee;--pst-color-inline-code-links: #3fb1c5;--pst-color-target: #675c04;--pst-color-background: #14181e;--pst-color-on-background: #222832;--pst-color-surface: #29313d;--pst-color-on-surface: #f3f4f5;color-scheme:dark}html[data-theme=dark]{--pst-color-link: var(--pst-color-primary);--pst-color-link-hover: var(--pst-color-secondary)}html[data-theme=dark] .only-light,html[data-theme=dark] .only-light~figcaption{display:none !important}html[data-theme=dark] img:not(.only-dark):not(.dark-light){filter:brightness(0.8) contrast(1.2)}html[data-theme=dark] .bd-content img:not(.only-dark):not(.dark-light){background:#fff;border-radius:.25rem}html[data-theme=dark] .MathJax_SVG *{fill:var(--pst-color-text-base)}.pst-color-primary{color:var(--pst-color-primary)}.pst-color-secondary{color:var(--pst-color-secondary)}.pst-color-accent{color:var(--pst-color-accent)}.pst-color-info{color:var(--pst-color-info)}.pst-color-warning{color:var(--pst-color-warning)}.pst-color-success{color:var(--pst-color-success)}.pst-color-attention{color:var(--pst-color-attention)}.pst-color-danger{color:var(--pst-color-danger)}.pst-color-text-base{color:var(--pst-color-text-base)}.pst-color-text-muted{color:var(--pst-color-text-muted)}.pst-color-heading-color{color:var(--pst-color-heading-color)}.pst-color-shadow{color:var(--pst-color-shadow)}.pst-color-border{color:var(--pst-color-border)}.pst-color-border-muted{color:var(--pst-color-border-muted)}.pst-color-inline-code{color:var(--pst-color-inline-code)}.pst-color-inline-code-links{color:var(--pst-color-inline-code-links)}.pst-color-target{color:var(--pst-color-target)}.pst-color-background{color:var(--pst-color-background)}.pst-color-on-background{color:var(--pst-color-on-background)}.pst-color-surface{color:var(--pst-color-surface)}.pst-color-on-surface{color:var(--pst-color-on-surface)}html{font-size:var(--pst-font-size-base);scroll-padding-top:calc(var(--pst-header-height) + 1rem)}body{background-color:var(--pst-color-background);font-family:var(--pst-font-family-base);font-weight:400;line-height:1.65;color:var(--pst-color-text-base);min-height:100vh;display:flex;flex-direction:column}body::-webkit-scrollbar-track{background:var(--pst-color-background)}p{margin-bottom:1.15rem;font-size:1em;color:var(--pst-color-text-base)}p.rubric{border-bottom:1px solid var(--pst-color-border)}p.centered{text-align:center}a{word-wrap:break-word;color:var(--pst-color-link);text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}a:hover{color:var(--pst-color-link-hover);text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none}a:active{color:var(--pst-color-link)}a:visited{color:var(--pst-color-link)}a:visited:hover{color:var(--pst-color-link-hover)}a:focus-visible{outline:2px solid var(--pst-color-accent)}a.headerlink{color:var(--pst-color-secondary);opacity:.7;font-size:.8em;padding:0 4px 0 4px;margin-left:.2em;text-decoration:none;transition:all .2s ease-out;user-select:none}a.headerlink:hover{opacity:1}a.github::before,a.gitlab::before{color:var(--pst-color-text-muted);font:var(--fa-font-brands);margin-right:.25rem}a.github::before{content:var(--pst-icon-github)}a.gitlab::before{content:var(--pst-icon-gitlab)}.heading-style,h6,h5,h4,h3,h2,h1{margin:2.75rem 0 1.05rem;font-family:var(--pst-font-family-heading);font-weight:var(--pst-font-weight-heading);line-height:1.15}h1{margin-top:0;font-size:var(--pst-font-size-h1);color:var(--pst-heading-color)}h2{font-size:var(--pst-font-size-h2);color:var(--pst-heading-color)}h3{font-size:var(--pst-font-size-h3);color:var(--pst-heading-color)}h4{font-size:var(--pst-font-size-h4);color:var(--pst-heading-color)}h5{font-size:var(--pst-font-size-h5);color:var(--pst-color-text-base)}h6{font-size:var(--pst-font-size-h6);color:var(--pst-color-text-base)}small,.text_small{font-size:var(--pst-font-size-milli)}hr{border:0;border-top:1px solid var(--pst-color-border)}pre,code,kbd,samp{font-family:var(--pst-font-family-monospace)}kbd{background-color:var(--pst-color-on-background);color:var(--pst-color-text-muted)}kbd:not(.compound){border:1px solid var(--pst-color-border);margin:0 .1rem;padding:.1rem .4rem;box-shadow:1px 1px 1px var(--pst-color-shadow)}code{color:var(--pst-color-inline-code)}pre{margin:1.5em 0 1.5em 0;padding:1rem;background-color:var(--pst-color-surface);color:var(--pst-color-text-base);line-height:1.2em;border:1px solid var(--pst-color-border);border-radius:.25rem}pre .linenos{opacity:.8;padding-right:10px}#pst-back-to-top{z-index:1080;position:fixed;display:none;top:80vh;left:50vw;transform:translate(-50%);color:var(--pst-color-secondary-text);background-color:var(--pst-color-secondary);border:none}.skip-link{position:fixed;top:0;left:0;right:0;text-align:center;background-color:var(--pst-color-warning);color:var(--pst-color-warning-text) !important;padding:.5rem;z-index:1055;border-bottom:1px solid var(--pst-color-border);transform:translateY(-100%);transition:transform 150ms ease-in-out}.skip-link:focus{transform:translateY(0%);outline:3px solid #14181e}.bd-container{flex-grow:1;display:flex;justify-content:center}.bd-container .bd-container__inner{display:flex}.bd-page-width{width:100%}@media(min-width: 960px){.bd-page-width{max-width:88rem}}.bd-header-version-warning,.bd-header-announcement{min-height:3rem;width:100%;display:flex;position:relative;align-items:center;justify-content:center;text-align:center;padding:.5rem 12.5%}@media(max-width: 959.98px){.bd-header-version-warning,.bd-header-announcement{padding:.5rem 2%}}.bd-header-version-warning p,.bd-header-announcement p{font-weight:bold;margin:0}.bd-header-version-warning:after,.bd-header-announcement:after{position:absolute;width:100%;height:100%;left:0;top:0;content:\"\";z-index:-1}.bd-header-version-warning:empty,.bd-header-announcement:empty{display:none}.bd-header-version-warning a,.bd-header-announcement a{color:var(--pst-color-inline-code-links)}.bd-header-announcement:after{background-color:var(--pst-color-secondary-bg)}.bd-header-version-warning:after{background-color:var(--pst-color-danger-bg)}.bd-main{flex-grow:1;flex-direction:column;display:flex;min-width:0}.bd-main .bd-content{display:flex;justify-content:center;height:100%}.bd-main .bd-content .bd-article-container{justify-content:start;display:flex;flex-direction:column;width:100%;max-width:60em;overflow-x:auto;padding:1rem}@media(min-width: 1200px){.bd-main .bd-content .bd-article-container .bd-article{padding-top:1.5rem;padding-left:2rem}}.bd-footer{width:100%;border-top:1px solid var(--pst-color-border)}.bd-footer .bd-footer__inner{display:flex;flex-grow:1;padding:1rem;margin:auto}.bd-footer .footer-items__start,.bd-footer .footer-items__center,.bd-footer .footer-items__end{display:flex;flex-direction:column;gap:.5rem;justify-content:center;flex-grow:1}.bd-footer .footer-items__center{text-align:center}.bd-footer .footer-items__end{text-align:end}.bd-footer .footer-item p{margin-bottom:0}.bd-footer-article{margin-top:auto}.bd-footer-article .footer-article-items{display:flex;flex-direction:column}.bd-footer-content .footer-content-items{display:flex;flex-direction:column;margin-top:auto}.bd-header{position:sticky;top:0;z-index:1030;background:var(--pst-color-on-background) !important;box-shadow:0 .125rem .25rem 0 var(--pst-color-shadow);width:100%;padding:0;max-width:100vw;justify-content:center}.bd-header .bd-header__inner{display:flex;align-items:center;height:fit-content;padding-left:1rem;padding-right:1rem}.bd-header .navbar-item{height:var(--pst-header-height);max-height:var(--pst-header-height);display:flex;align-items:center}.bd-header .navbar-header-items{display:none;flex-shrink:1}@media(min-width: 960px){.bd-header .navbar-header-items{display:flex;flex-grow:1;padding:0 0 0 .5rem}}.bd-header .navbar-header-items__end,.bd-header .navbar-header-items__center,.bd-header .navbar-header-items__start{display:flex;align-items:center;flex-flow:wrap;row-gap:0}.bd-header .navbar-header-items__end,.bd-header .navbar-header-items__center{column-gap:1rem}.bd-header .navbar-header-items__start{flex-shrink:0;margin-right:auto;gap:.5rem}.bd-header .navbar-header-items__end{justify-content:end}.bd-header .navbar-nav{display:flex}@media(min-width: 960px){.bd-header .navbar-nav{align-items:center}}.bd-header .navbar-nav li a.nav-link{color:var(--pst-color-text-muted);text-decoration:none}.bd-header .navbar-nav li a.nav-link:hover{color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none}.bd-header .navbar-nav li a.nav-link:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-nav>.current>.nav-link{font-weight:600;color:var(--pst-color-primary);border-bottom:max(3px, .1875rem, .12em) solid var(--pst-color-primary)}.bd-header .navbar-nav .dropdown button{display:unset;color:var(--pst-color-text-muted);border:none}.bd-header .navbar-nav .dropdown button:hover{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none;color:var(--pst-color-link-hover)}.bd-header .navbar-nav .dropdown button:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-nav .dropdown .dropdown-menu{z-index:1070;border:1px solid var(--pst-color-border);box-shadow:0 0 .3rem .1rem var(--pst-color-shadow);background-color:var(--pst-color-on-background);padding:.5rem 0;margin:.5rem 0;min-width:20rem}.bd-header .navbar-nav .dropdown .dropdown-menu .dropdown-item{padding:.25rem 1.5rem}.bd-header .navbar-nav .dropdown .dropdown-menu .dropdown-item:focus:not(:hover):not(:active){background-color:inherit}.bd-header .navbar-nav .dropdown .dropdown-menu:not(.show){display:none}@media(min-width: 960px){.navbar-center-items .navbar-item{display:inline-block}}.nav-link{transition:none}.nav-link:hover{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none;color:var(--pst-color-link-hover)}.nav-link.nav-external:after{font:var(--fa-font-solid);content:var(--pst-icon-external-link);font-size:.75em;margin-left:.3em}.bd-navbar-elements li.nav-item i{font-size:.7rem;padding-left:2px;vertical-align:middle}.bd-header label.sidebar-toggle{display:flex;cursor:pointer;font-size:var(--pst-font-size-icon);align-items:center;color:var(--pst-color-muted);margin-bottom:0;padding-bottom:.25rem}.bd-header label.primary-toggle{margin-right:1rem}@media(min-width: 960px){.bd-header label.primary-toggle{display:none}}.bd-header label.secondary-toggle{margin-left:1rem}@media(min-width: 1200px){.bd-header label.secondary-toggle{display:none}}.bd-header label:hover{color:var(--pst-color-link-hover);box-shadow:0px max(3px, .1875rem, .12em) 0px var(--pst-color-link-hover)}.bd-header label:focus-visible{outline:2px solid var(--pst-color-accent)}.bd-header .navbar-header-items{display:none}@media(min-width: 960px){.bd-header .navbar-header-items{display:inherit}}.navbar-persistent--mobile{margin-left:auto}@media(min-width: 960px){.navbar-persistent--mobile{display:none}}.navbar-persistent--container{display:none}@media(min-width: 960px){.navbar-persistent--container{display:flex}}.header-article__inner{display:flex;padding:0 .5rem}.header-article__inner .header-article-item{min-height:var(--pst-header-article-height);height:var(--pst-header-article-height)}.header-article__inner .header-article-items__start,.header-article__inner .header-article-items__end{display:flex;align-items:start;gap:.5rem}.header-article__inner .header-article-items__end{margin-left:auto}.bd-sidebar-primary{display:flex;flex-direction:column;gap:1rem;max-height:calc(100vh - var(--pst-header-height));position:sticky;top:var(--pst-header-height);flex:0 0 auto;width:25%;padding:2rem 1rem 1rem 1rem;border-right:1px solid var(--pst-color-border);background-color:var(--pst-color-background);overflow-y:auto;font-size:var(--pst-sidebar-font-size-mobile)}@media(min-width: 960px){.bd-sidebar-primary{font-size:var(--pst-sidebar-font-size)}}.bd-sidebar-primary .nav-link{font-size:var(--pst-sidebar-font-size-mobile)}.bd-sidebar-primary.no-sidebar{border-right:0}@media(min-width: 960px){.bd-sidebar-primary.hide-on-wide{display:none}}.bd-sidebar-primary h1,.bd-sidebar-primary h2,.bd-sidebar-primary h3,.bd-sidebar-primary h4{color:var(--pst-color-text-base)}.bd-sidebar-primary .sidebar-primary-items__start .sidebar-primary-item,.bd-sidebar-primary .sidebar-primary-items__end .sidebar-primary-item{padding:.5rem 0}.bd-sidebar-primary .sidebar-header-items{display:flex;flex-direction:column}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__title{font-weight:var(--pst-sidebar-header-font-weight);font-size:var(--pst-sidebar-header-font-size);color:var(--pst-color-text-base);margin-bottom:.5rem}.bd-sidebar-primary .sidebar-header-items .nav-item.dropdown button{display:none}.bd-sidebar-primary .sidebar-header-items .nav-item.dropdown .dropdown-menu{display:flex;flex-direction:column;padding:0;margin:0;border:none;background-color:inherit;font-size:inherit}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__center{display:flex;flex-direction:column}.bd-sidebar-primary .sidebar-header-items .sidebar-header-items__end{display:flex;align-items:center;gap:.5rem}@media(min-width: 960px){.bd-sidebar-primary .sidebar-header-items{display:none}}.bd-sidebar-primary .sidebar-primary-items__start{border-top:1px solid var(--pst-color-border)}@media(min-width: 960px){.bd-sidebar-primary .sidebar-primary-items__start{border-top:none}}.bd-sidebar-primary .sidebar-primary-items__end{margin-top:auto;margin-bottom:1em}.bd-sidebar-primary .list-caption{list-style:none;padding-left:0px}.bd-sidebar-primary li{position:relative}.bd-sidebar-primary li.has-children>.reference{padding-right:30px}.bd-sidebar-primary label.toctree-toggle{position:absolute;top:0;right:0;height:30px;width:30px;cursor:pointer;display:flex;justify-content:center;align-items:center}.bd-sidebar-primary label.toctree-toggle:hover{background:var(--pst-color-surface)}.bd-sidebar-primary label.toctree-toggle i{display:inline-block;font-size:.75rem;text-align:center}.bd-sidebar-primary label.toctree-toggle i:hover{color:var(--pst-color-primary)}.bd-sidebar-primary .label-parts{width:100%;height:100%}.bd-sidebar-primary .label-parts:hover{background:none}.bd-sidebar-primary .label-parts i{width:30px;position:absolute;top:.3em;right:0em}nav.bd-links{margin-right:-1rem}@media(min-width: 960px){nav.bd-links{display:block}}nav.bd-links ul{list-style:none}nav.bd-links ul ul{padding:0 0 0 1rem}nav.bd-links li>a{display:block;padding:.25rem .65rem;color:var(--pst-color-text-muted);text-decoration:none;box-shadow:none}nav.bd-links li>a:hover{text-decoration:underline;background-color:rgba(0,0,0,0);color:var(--pst-color-link-hover);text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none}nav.bd-links li>a:active{color:var(--pst-color-link-hover)}nav.bd-links li>a.reference.external:after{font:var(--fa-font-solid);content:var(--pst-icon-external-link);font-size:.75em;margin-left:.3em}nav.bd-links .current>a{font-weight:600;color:var(--pst-color-primary);box-shadow:inset max(3px, .1875rem, .12em) 0px 0px var(--pst-color-primary);background-color:rgba(0,0,0,0)}nav.bd-links p.bd-links__title{font-size:var(--pst-sidebar-header-font-size);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}nav.bd-links p.caption{font-weight:var(--pst-sidebar-header-font-weight);position:relative;margin-top:1.25rem;margin-bottom:.5rem;color:var(--pst-color-text-base);font-size:var(--pst-sidebar-font-size-mobile)}nav.bd-links p.caption:first-child{margin-top:0}@media(min-width: 960px){nav.bd-links p.caption{font-size:var(--pst-sidebar-font-size)}}.bd-sidebar-secondary{display:flex;order:2;flex-shrink:0;flex-direction:column;position:sticky;top:var(--pst-header-height);max-height:calc(100vh - var(--pst-header-height));padding:2rem 1rem 1rem 1rem;width:var(--pst-sidebar-secondary);font-size:var(--pst-sidebar-font-size-mobile);background-color:var(--pst-color-background);overflow-y:auto}@media(min-width: 1200px){.bd-sidebar-secondary{font-size:var(--pst-sidebar-font-size)}}.sidebar-secondary-item{padding:.5rem .5rem}@media(min-width: 1200px){.sidebar-secondary-item{border-left:1px solid var(--pst-color-border);padding-left:1rem}}.sidebar-secondary-item i{padding-right:.5rem}input.sidebar-toggle{display:none}label.overlay{background-color:#000;opacity:.5;height:0;width:0;position:fixed;top:0;left:0;transition:opacity 200ms ease-out;z-index:1050}input#__primary:checked+label.overlay.overlay-primary,input#__secondary:checked+label.overlay.overlay-secondary{height:100vh;width:100vw}input#__primary:checked~.bd-container .bd-sidebar-primary{visibility:visible;margin-left:0}input#__secondary:checked~.bd-container .bd-sidebar-secondary{visibility:visible;margin-right:0}@media(min-width: 960px){label.sidebar-toggle.primary-toggle{display:none}input#__primary:checked+label.overlay.overlay-primary{height:0;width:0}.bd-sidebar-primary{margin-left:0;visibility:visible}}@media(max-width: 959.98px){.bd-sidebar-primary{position:fixed;top:0;z-index:1055;height:100vh;max-height:100vh;width:75%;flex-grow:.75;max-width:350px;transition:visibility 200ms ease-out,margin 200ms ease-out;visibility:hidden;margin-left:-75%;left:0}}@media(max-width: 1199.98px){.bd-sidebar-secondary{position:fixed;top:0;z-index:1055;height:100vh;max-height:100vh;width:75%;flex-grow:.75;max-width:350px;transition:visibility 200ms ease-out,margin 200ms ease-out;visibility:hidden;margin-right:-75%;right:0}}ul.bd-breadcrumbs{list-style:none;padding-left:0;display:flex;flex-wrap:wrap;font-size:.8rem}ul.bd-breadcrumbs li.breadcrumb-item{display:flex;align-items:baseline;font-weight:bold}ul.bd-breadcrumbs li.breadcrumb-item a{color:var(--pst-color-text-muted);text-decoration:none}ul.bd-breadcrumbs li.breadcrumb-item a:hover{color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none}ul.bd-breadcrumbs li.breadcrumb-item a:focus-visible{outline:2px solid var(--pst-color-accent)}ul.bd-breadcrumbs li.breadcrumb-item:not(.breadcrumb-home):before{font:var(--fa-font-solid);font-size:.8rem;content:var(--pst-breadcrumb-divider);color:var(--pst-color-text-muted);padding:0 .5rem}.navbar-icon-links{display:flex;flex-direction:row;column-gap:1rem;flex-wrap:wrap}.navbar-icon-links li.nav-item a.nav-link{padding-left:0;padding-right:0}.navbar-icon-links li.nav-item a.nav-link:hover{color:var(--pst-color-link-hover);box-shadow:0px max(3px, .1875rem, .12em) 0px var(--pst-color-link-hover)}.navbar-icon-links a span{display:flex;align-items:center}.navbar-icon-links i.fa-brands,.navbar-icon-links i.fa-regular,.navbar-icon-links i.fa-solid{vertical-align:middle;font-style:normal;font-size:var(--pst-font-size-icon)}.navbar-icon-links i.fa-square-twitter:before{color:#55acee}.navbar-icon-links i.fa-square-gitlab:before{color:#548}.navbar-icon-links i.fa-bitbucket:before{color:#0052cc}.navbar-icon-links img.icon-link-image{height:1.5em;border-radius:.2rem}.navbar-brand{position:relative;height:var(--pst-header-height);max-height:var(--pst-header-height);padding:.5rem 0;width:auto;margin:0;display:flex;flex-shrink:0;align-items:center;gap:.5rem}.navbar-brand p{margin-bottom:0}.navbar-brand img{max-width:100%;height:100%;width:auto}.navbar-brand a{text-decoration:none}.navbar-brand:hover:hover{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none;color:var(--pst-color-link-hover)}.navbar-brand:visited:hover:hover{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none;color:var(--pst-color-link-hover)}.navbar-nav ul{display:block;list-style:none}.navbar-nav ul ul{padding:0 0 0 1rem}.navbar-nav li{display:flex;flex-direction:column}.navbar-nav li a{display:flex;align-items:center;height:100%;padding-top:.25rem;padding-bottom:.25rem;color:var(--pst-color-text-muted);text-decoration:none}.navbar-nav li a:hover{color:var(--pst-color-link-hover);text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none}.navbar-nav li a:focus-visible{outline:2px solid var(--pst-color-accent)}.navbar-nav .toctree-checkbox{position:absolute;display:none}.navbar-nav .toctree-checkbox~ul{display:none}.navbar-nav .toctree-checkbox~label i{transform:rotate(0deg)}.navbar-nav .toctree-checkbox:checked~ul{display:block}.navbar-nav .toctree-checkbox:checked~label i{transform:rotate(180deg)}.bd-header .navbar-nav>p.sidebar-header-items__title{display:none}.page-toc .section-nav{padding-left:0;border-bottom:none}.page-toc .section-nav ul{padding-left:1rem}.page-toc .nav-link{font-size:var(--pst-sidebar-font-size-mobile)}@media(min-width: 1200px){.page-toc .nav-link{font-size:var(--pst-sidebar-font-size)}}.page-toc .onthispage{color:var(--pst-color-text-base);font-weight:var(--pst-sidebar-header-font-weight);margin-bottom:.5rem}.prev-next-area{width:100%}.prev-next-area p{margin:0 .3em;line-height:1.3em}.prev-next-area i{font-size:1.2em}.prev-next-area a{display:flex;align-items:center;border:none;padding:10px;max-width:45%;overflow-x:hidden;color:var(--pst-color-text-muted);text-decoration:none}.prev-next-area a p.prev-next-title{word-wrap:break-word;color:var(--pst-color-link);text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;font-weight:var(--pst-admonition-font-weight-heading);font-size:1.1em}.prev-next-area a p.prev-next-title:hover{color:var(--pst-color-link-hover);text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none}.prev-next-area a p.prev-next-title:active{color:var(--pst-color-link)}.prev-next-area a p.prev-next-title:visited{color:var(--pst-color-link)}.prev-next-area a p.prev-next-title:visited:hover{color:var(--pst-color-link-hover)}.prev-next-area a p.prev-next-title:focus-visible{outline:2px solid var(--pst-color-accent)}.prev-next-area a:hover p.prev-next-title:hover{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none;color:var(--pst-color-link-hover)}.prev-next-area a:visited p.prev-next-title{color:var(--pst-color-link)}.prev-next-area a:visited p.prev-next-title:hover{color:var(--pst-color-link-hover)}.prev-next-area a .prev-next-info{flex-direction:column;margin:0 .5em}.prev-next-area a .prev-next-info .prev-next-subtitle{text-transform:capitalize}.prev-next-area a.left-prev{float:left}.prev-next-area a.right-next{float:right}.prev-next-area a.right-next div.prev-next-info{text-align:right}.bd-search{position:relative;padding-left:.5rem;gap:.5rem;background-color:var(--pst-color-background);border-radius:.25rem;border:1px solid var(--pst-color-border);color:var(--pst-color-text-base)}.bd-search:active{background-color:var(--pst-color-background);color:var(--pst-color-text-muted)}.bd-search .icon{position:absolute;color:var(--pst-color-border);left:25px}.bd-search .fa-solid.fa-magnifying-glass{position:absolute;left:calc((2.5rem - .7em)/2);color:var(--pst-color-text-muted)}.bd-search input::placeholder{color:var(--pst-color-text-muted)}.bd-search input::-webkit-search-cancel-button,.bd-search input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.bd-search .search-button__kbd-shortcut{display:flex;position:absolute;right:.5rem;color:var(--pst-color-border)}.form-control{background-color:var(--pst-color-background);color:var(--pst-color-text-base)}.form-control:focus,.form-control:focus-visible{border:none;box-shadow:none;outline:3px solid var(--pst-color-accent);background-color:var(--pst-color-background);color:var(--pst-color-text-muted)}.search-button{display:flex;align-items:center;align-content:center;color:var(--pst-color-text-muted);padding:0 0 .25rem 0;border-radius:0}.search-button:hover{color:var(--pst-color-link-hover);box-shadow:0px max(3px, .1875rem, .12em) 0px var(--pst-color-link-hover)}.search-button:focus-visible{outline:2px solid var(--pst-color-accent)}.search-button i{font-size:1.3rem}.search-button__search-container,.search-button__overlay{display:none}.search-button__wrapper.show .search-button__search-container{display:flex;position:fixed;z-index:1055;top:30%;left:50%;transform:translate(-50%, -50%);right:1rem;margin-top:.5rem;width:90%;max-width:800px}.search-button__wrapper.show .search-button__overlay{display:flex;position:fixed;z-index:1050;background-color:#000;opacity:.5;width:100%;height:100%;top:0px;left:0px}.search-button__wrapper.show form.bd-search{flex-grow:1;padding-top:0;padding-bottom:0}.search-button__wrapper.show svg,.search-button__wrapper.show input{font-size:var(--pst-font-size-icon)}.search-button-field{display:inline-flex;align-items:center;border:var(--pst-color-border) solid 1px;border-radius:1.5em;color:var(--pst-color-text-muted);padding:.5em;background-color:var(--pst-color-surface)}.search-button-field:hover{border:2px solid var(--pst-color-link-hover)}.search-button-field:focus-visible{border:2px solid var(--pst-color-accent)}.search-button-field .search-button__default-text{font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);margin-right:.5em;margin-left:.5em}.search-button-field .kbd-shortcut__modifier{font-size:.75em}.search-button-field>*{align-items:center}.search-button-field>:not(svg){display:none}@media(min-width: 960px){.search-button-field>:not(svg){display:flex}}div#searchbox p.highlight-link{margin:1rem 0;width:fit-content;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow) !important}@media(min-width: 1200px){div#searchbox p.highlight-link{margin-left:2rem}}div#searchbox p.highlight-link a{border-radius:.25rem;font-size:1.25rem;padding:.75rem;background-color:var(--pst-color-primary);color:var(--pst-color-primary-text);text-decoration:none;transition:box-shadow .25s ease-out}div#searchbox p.highlight-link a:hover{box-shadow:inset 0px 0px 50px 50px rgba(0,0,0,.25)}div#searchbox p.highlight-link a:before{content:var(--pst-icon-search-minus);color:unset;font:var(--fa-font-solid);margin-right:.5rem}.theme-switch-button{margin:0 -0.5rem;padding:0;color:var(--pst-color-text-muted);border-radius:0}.theme-switch-button:focus-visible{outline:2px solid var(--pst-color-accent)}.theme-switch-button span{display:none;padding:.5em}.theme-switch-button span:hover{color:var(--pst-color-link-hover);box-shadow:0px max(3px, .1875rem, .12em) 0px var(--pst-color-link-hover)}.theme-switch-button span:active{text-decoration:none;color:var(--pst-color-link-hover)}html[data-mode=auto] .theme-switch-button span[data-mode=auto]{display:flex}html[data-mode=light] .theme-switch-button span[data-mode=light]{display:flex}html[data-mode=dark] .theme-switch-button span[data-mode=dark]{display:flex}button.btn.version-switcher__button{border-color:var(--pst-color-border);color:var(--pst-color-text-base);margin-bottom:1em}@media(min-width: 960px){button.btn.version-switcher__button{margin-bottom:unset}}button.btn.version-switcher__button:hover{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none;color:var(--pst-color-link-hover)}button.btn.version-switcher__button:focus-visible{outline:2px solid var(--pst-color-accent)}button.btn.version-switcher__button:active{color:var(--pst-color-text-base);border-color:var(--pst-color-border)}.version-switcher__menu{border-color:var(--pst-color-border);border-radius:var(--bs-dropdown-border-radius)}.version-switcher__menu a.list-group-item{background-color:var(--pst-color-on-background);color:var(--pst-color-text-base);padding:.75rem 1.25rem}.version-switcher__menu a.list-group-item:not(:last-child){border-bottom:1px solid var(--pst-color-border)}.version-switcher__menu a.list-group-item:hover{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none;color:var(--pst-color-link-hover)}.version-switcher__menu a.list-group-item:hover{background-color:var(--pst-color-surface)}.version-switcher__menu a.list-group-item.active{font-weight:600;color:var(--pst-color-primary);box-shadow:inset max(3px, .1875rem, .12em) 0px 0px var(--pst-color-primary);position:relative;z-index:1}.version-switcher__menu a.list-group-item.active span:before{content:\"\";width:100%;height:100%;position:absolute;z-index:-1;left:0;top:0}button.version-switcher__button,.version-switcher__menu{font-size:1.1em;z-index:1055}@media(min-width: 960px){button.version-switcher__button,.version-switcher__menu{font-size:unset}}nav.page-toc{margin-bottom:1rem}.bd-toc .nav .nav,.list-caption .nav{display:none}.bd-toc .nav .nav.visible,.list-caption .nav.visible{display:block}.bd-toc .nav>.active>ul,.list-caption>.active>ul{display:block}.toc-entry{display:block}.toc-entry a>code{color:var(--pst-color-text-muted)}.toc-entry a.nav-link{display:block;padding:.125rem 0;padding-left:1rem;margin-left:-1rem;color:var(--pst-color-text-muted);text-decoration:none}.toc-entry a.nav-link:hover{text-decoration:underline;background-color:rgba(0,0,0,0);color:var(--pst-color-link-hover);text-decoration-thickness:max(3px, .1875rem, .12em);text-decoration-skip-ink:none;text-decoration-skip:none}.toc-entry a.nav-link:active{color:var(--pst-color-link-hover)}.toc-entry a.nav-link.active{font-weight:600;color:var(--pst-color-primary);box-shadow:inset max(3px, .1875rem, .12em) 0px 0px var(--pst-color-primary);background-color:rgba(0,0,0,0)}.toc-entry a.nav-link.active:hover{color:var(--pst-color-link-hover)}div.versionadded,div.versionchanged,div.deprecated{vertical-align:middle;margin:1.5625em auto;padding:0 .6rem 0 .6rem;overflow:hidden;page-break-inside:avoid;border-left:.2rem solid;border-color:var(--pst-color-info);border-radius:.25rem;background-color:var(--pst-color-on-background);box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow) !important;position:relative}div.versionadded>p,div.versionchanged>p,div.deprecated>p{margin-bottom:.6rem;margin-top:.6rem}div.versionadded{border-color:var(--pst-color-success);background-color:var(--pst-color-success-bg)}div.versionchanged{border-color:var(--pst-color-warning);background-color:var(--pst-color-warning-bg)}div.deprecated{border-color:var(--pst-color-danger);background-color:var(--pst-color-danger-bg)}span.versionmodified{font-weight:600}span.versionmodified:before{margin-right:.6rem;color:var(--pst-color-info);font:var(--fa-font-solid);content:var(--pst-icon-versionmodified-default)}span.versionmodified.added:before{color:var(--pst-color-success);content:var(--pst-icon-versionmodified-added)}span.versionmodified.changed:before{color:var(--pst-color-warning);content:var(--pst-icon-versionmodified-changed)}span.versionmodified.deprecated:before{color:var(--pst-color-danger);content:var(--pst-icon-versionmodified-deprecated)}.sidebar-indices-items{display:flex;flex-direction:column;border-top:1px solid var(--pst-color-border)}@media(min-width: 960px){.sidebar-indices-items{border-top:none}}.sidebar-indices-items .sidebar-indices-items__title{font-weight:var(--pst-sidebar-header-font-weight);font-size:var(--pst-sidebar-header-font-size);color:var(--pst-color-text-base);margin-bottom:.5rem}.sidebar-indices-items ul.indices-link{margin-right:-1rem;list-style:none;padding:0}.sidebar-indices-items ul.indices-link li>a{display:block;padding:.25rem 0;color:var(--pst-color-text-muted)}.sidebar-indices-items ul.indices-link li>a:hover{color:var(--pst-color-primary);text-decoration:none;background-color:rgba(0,0,0,0)}.bd-sidebar-primary div#rtd-footer-container{position:sticky;bottom:-1rem;margin:-1rem}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge{position:unset;font-size:.9em;font-family:var(--pst-font-family-base);max-width:unset}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .rst-current-version{display:flex;align-items:center;gap:.2rem;height:2.5rem;transition:background-color .2s ease-out;background-color:var(--pst-color-background);color:var(--pst-color-success);border-top:1px solid var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-book{color:var(--pst-color-text-muted);margin-right:auto}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-book::after{color:var(--pst-color-text-base);content:\"Read The Docs\";font-family:var(--pst-font-family-base);font-weight:var(--pst-admonition-font-weight-heading)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge .fa.fa-caret-down{color:var(--pst-color-text-muted)}.bd-sidebar-primary div#rtd-footer-container .rst-versions.rst-badge.shift-up .rst-current-version{border-bottom:1px solid var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions{background-color:var(--pst-color-surface);color:var(--pst-color-text-base)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions dl dd a{color:var(--pst-color-text-muted)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions hr{background-color:var(--pst-color-border)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions small a{color:var(--pst-color-link)}.bd-sidebar-primary div#rtd-footer-container .rst-other-versions input{padding-left:.5rem;border:1px solid var(--pst-color-border);background-color:var(--pst-color-surface)}div.admonition,.admonition{margin:1.5625em auto;padding:0 .6rem .8rem .6rem;overflow:hidden;page-break-inside:avoid;border-left:.2rem solid;border-color:var(--pst-color-info);border-radius:.25rem;background-color:var(--pst-color-on-background);box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow) !important}div.admonition *:last-child,.admonition *:last-child{margin-bottom:0}div.admonition p.admonition-title~*,.admonition p.admonition-title~*{margin-left:1.4rem;margin-right:1.4rem}div.admonition>ol,div.admonition>ul,.admonition>ol,.admonition>ul{margin-left:1em}div.admonition>.admonition-title,.admonition>.admonition-title{margin:0 -0.6rem;padding:.4rem .6rem .4rem 2rem;font-weight:var(--pst-admonition-font-weight-heading);position:relative;z-index:1}div.admonition>.admonition-title:before,.admonition>.admonition-title:before{content:\"\";width:100%;height:100%;position:absolute;left:0;top:0;background-color:var(--pst-color-info-bg);z-index:-1;pointer-events:none}div.admonition>.admonition-title:after,.admonition>.admonition-title:after{position:absolute;left:.5rem;width:1rem;height:1rem;color:var(--pst-color-info);font:var(--fa-font-solid);line-height:inherit;content:var(--pst-icon-admonition-default);opacity:1}div.admonition>.admonition-title+*,.admonition>.admonition-title+*{margin-top:.4em}div.admonition.attention,.admonition.attention{border-color:var(--pst-color-attention)}div.admonition.attention>.admonition-title:before,.admonition.attention>.admonition-title:before{background-color:var(--pst-color-attention-bg)}div.admonition.attention>.admonition-title:after,.admonition.attention>.admonition-title:after{color:var(--pst-color-attention);content:var(--pst-icon-admonition-attention)}div.admonition.caution,.admonition.caution{border-color:var(--pst-color-warning)}div.admonition.caution>.admonition-title:before,.admonition.caution>.admonition-title:before{background-color:var(--pst-color-warning-bg)}div.admonition.caution>.admonition-title:after,.admonition.caution>.admonition-title:after{color:var(--pst-color-warning);content:var(--pst-icon-admonition-caution)}div.admonition.warning,.admonition.warning{border-color:var(--pst-color-warning)}div.admonition.warning>.admonition-title:before,.admonition.warning>.admonition-title:before{background-color:var(--pst-color-warning-bg)}div.admonition.warning>.admonition-title:after,.admonition.warning>.admonition-title:after{color:var(--pst-color-warning);content:var(--pst-icon-admonition-warning)}div.admonition.danger,.admonition.danger{border-color:var(--pst-color-danger)}div.admonition.danger>.admonition-title:before,.admonition.danger>.admonition-title:before{background-color:var(--pst-color-danger-bg)}div.admonition.danger>.admonition-title:after,.admonition.danger>.admonition-title:after{color:var(--pst-color-danger);content:var(--pst-icon-admonition-danger)}div.admonition.error,.admonition.error{border-color:var(--pst-color-danger)}div.admonition.error>.admonition-title:before,.admonition.error>.admonition-title:before{background-color:var(--pst-color-danger-bg)}div.admonition.error>.admonition-title:after,.admonition.error>.admonition-title:after{color:var(--pst-color-danger);content:var(--pst-icon-admonition-error)}div.admonition.hint,.admonition.hint{border-color:var(--pst-color-success)}div.admonition.hint>.admonition-title:before,.admonition.hint>.admonition-title:before{background-color:var(--pst-color-success-bg)}div.admonition.hint>.admonition-title:after,.admonition.hint>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-hint)}div.admonition.tip,.admonition.tip{border-color:var(--pst-color-success)}div.admonition.tip>.admonition-title:before,.admonition.tip>.admonition-title:before{background-color:var(--pst-color-success-bg)}div.admonition.tip>.admonition-title:after,.admonition.tip>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-tip)}div.admonition.important,.admonition.important{border-color:var(--pst-color-attention)}div.admonition.important>.admonition-title:before,.admonition.important>.admonition-title:before{background-color:var(--pst-color-attention-bg)}div.admonition.important>.admonition-title:after,.admonition.important>.admonition-title:after{color:var(--pst-color-attention);content:var(--pst-icon-admonition-important)}div.admonition.note,.admonition.note{border-color:var(--pst-color-info)}div.admonition.note>.admonition-title:before,.admonition.note>.admonition-title:before{background-color:var(--pst-color-info-bg)}div.admonition.note>.admonition-title:after,.admonition.note>.admonition-title:after{color:var(--pst-color-info);content:var(--pst-icon-admonition-note)}div.admonition.seealso,.admonition.seealso{border-color:var(--pst-color-success)}div.admonition.seealso>.admonition-title:before,.admonition.seealso>.admonition-title:before{background-color:var(--pst-color-success-bg)}div.admonition.seealso>.admonition-title:after,.admonition.seealso>.admonition-title:after{color:var(--pst-color-success);content:var(--pst-icon-admonition-seealso)}div.admonition.admonition-todo,.admonition.admonition-todo{border-color:var(--pst-color-secondary)}div.admonition.admonition-todo>.admonition-title:before,.admonition.admonition-todo>.admonition-title:before{background-color:var(--pst-color-secondary-bg)}div.admonition.admonition-todo>.admonition-title:after,.admonition.admonition-todo>.admonition-title:after{color:var(--pst-color-secondary);content:var(--pst-icon-admonition-todo)}div.admonition.sidebar,.admonition.sidebar{max-width:40%;float:right;clear:both;margin-left:.5rem;margin-top:0;border-width:0 0 0 .2rem}div.admonition.sidebar.attention,div.admonition.sidebar.important,.admonition.sidebar.attention,.admonition.sidebar.important{border-color:var(--pst-color-attention)}div.admonition.sidebar.caution,div.admonition.sidebar.warning,.admonition.sidebar.caution,.admonition.sidebar.warning{border-color:var(--pst-color-warning)}div.admonition.sidebar.danger,div.admonition.sidebar.error,.admonition.sidebar.danger,.admonition.sidebar.error{border-color:var(--pst-color-danger)}div.admonition.sidebar.hint,div.admonition.sidebar.tip,div.admonition.sidebar.seealso,.admonition.sidebar.hint,.admonition.sidebar.tip,.admonition.sidebar.seealso{border-color:var(--pst-color-success)}div.admonition.sidebar.note,div.admonition.sidebar.todo,.admonition.sidebar.note,.admonition.sidebar.todo{border-color:var(--pst-color-info)}div.admonition.sidebar p.admonition-title~*,.admonition.sidebar p.admonition-title~*{margin-left:0rem;margin-right:0rem}div.topic,div.topic.contents,nav.contents,aside.topic{display:flex;flex-direction:column;background-color:var(--pst-color-surface);border-color:var(--pst-color-border);border-radius:.25rem;padding:1rem 1.25rem;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow) !important}div.topic .topic-title,div.topic.contents .topic-title,nav.contents .topic-title,aside.topic .topic-title{margin:0 0 .5rem 0}div.topic p,div.topic.contents p,nav.contents p,aside.topic p{color:var(--pst-color-on-surface) !important}div.topic ul.simple,div.topic.contents ul.simple,nav.contents ul.simple,aside.topic ul.simple{padding-left:1rem}div.topic ul.simple ul,div.topic.contents ul.simple ul,nav.contents ul.simple ul,aside.topic ul.simple ul{padding-left:2em}aside.sidebar{border:1px solid var(--pst-color-border);background-color:var(--pst-color-surface);border-radius:.25rem;margin-left:.5rem;padding:0}aside.sidebar>*:last-child{padding-bottom:1rem}aside.sidebar p.sidebar-title{position:relative;margin-bottom:0;padding-top:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--pst-color-border);font-family:var(--pst-font-family-heading);font-weight:var(--pst-admonition-font-weight-heading)}aside.sidebar>*:not(.sidebar-title):first-child,aside.sidebar>p.sidebar-title+*{margin-top:1rem}aside.sidebar>*{padding-left:1rem;padding-right:1rem}p.rubric{display:flex;flex-direction:column}.seealso dd{margin-top:0;margin-bottom:0}table.field-list{border-collapse:separate;border-spacing:10px;margin-left:1px}table.field-list th.field-name{padding:1px 8px 1px 5px;white-space:nowrap;background-color:var(--pst-color-surface)}table.field-list td.field-body p{font-style:italic}table.field-list td.field-body p>strong{font-style:normal}table.field-list td.field-body blockquote{border-left:none;margin:0em 0em .3em;padding-left:30px}.table.autosummary td:first-child{white-space:nowrap}.sig{font-family:var(--pst-font-family-monospace)}.sig-inline.c-texpr,.sig-inline.cpp-texpr{font-family:unset}.sig.c .k,.sig.c .kt,.sig.cpp .k,.sig.cpp .kt{color:var(--pst-color-text-base)}.sig.c .m,.sig.cpp .m{color:var(--pst-color-text-base)}.sig.c .s,.sig.c .sc,.sig.cpp .s,.sig.cpp .sc{color:var(--pst-color-text-base)}.sig-name{color:var(--pst-color-inline-code)}.sig-param .o,.sig-param .default_value{color:var(--pst-color-text-muted);font-weight:normal}dt:target,span.highlighted{background-color:var(--pst-color-target)}.viewcode-back{font-family:var(--pst-font-family-base)}.viewcode-block:target{border-top:1px solid var(--pst-color-border);border-bottom:1px solid var(--pst-color-border);position:relative;background-color:var(--pst-color-target)}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd{margin-left:2rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd>dl.simple>dt{display:flex}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dl.field-list{display:grid;grid-template-columns:unset}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt.field-odd,dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dt.field-even{margin-top:.2rem;margin-bottom:.1rem;background-color:var(--pst-color-surface)}div[class*=highlight-],div.highlight,div.literal-block-wrapper{display:flex;flex-direction:column;width:unset;border-radius:.25rem}div.literal-block-wrapper{border:1px solid var(--pst-color-border);border-radius:.25rem}div.literal-block-wrapper div.code-block-caption{margin:0;border-bottom:1px solid var(--pst-color-border);padding:.5rem;font-size:1rem;font-weight:var(--pst-font-weight-caption)}div.literal-block-wrapper div.code-block-caption a.headerlink{font-size:inherit}div.literal-block-wrapper div[class*=highlight-]{margin:0;border-radius:0}div.literal-block-wrapper div[class*=highlight-] pre{border:none;box-shadow:none}code.literal{padding:.1rem .25rem;background-color:var(--pst-color-surface);border:1px solid var(--pst-color-border);border-radius:.25rem}a>code{color:var(--pst-color-inline-code-links)}html[data-theme=light] .highlight .nf{color:#0078a1 !important}span.linenos{opacity:.8 !important}figure a.headerlink{position:absolute;font-size:inherit}figure:hover a.headerlink{visibility:visible}figure figcaption{font-family:var(--pst-font-family-heading);font-weight:var(--pst-font-weight-caption);color:var(--pst-color-text-muted);margin-left:auto;margin-right:auto}figure figcaption table.table{width:fit-content;margin-left:auto;margin-right:auto}dt.label>span.brackets:not(:only-child):before{content:\"[\"}dt.label>span.brackets:not(:only-child):after{content:\"]\"}a.footnote-reference{vertical-align:super;font-size:small}aside.footnote{margin-bottom:.5rem}aside.footnote:last-child{margin-bottom:1rem}aside.footnote span.label,aside.footnote span.backrefs{font-weight:bold}aside.footnote:target{background-color:var(--pst-color-target)}table.highlighttable td.linenos,span.linenos,div.doctest>div.highlight span.gp{user-select:none;-webkit-user-select:text;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}dd{margin-top:3px;margin-bottom:10px;margin-left:30px}ol,ul{padding-inline-start:2rem}ol li>p:first-child,ul li>p:first-child{margin-bottom:.25rem;margin-top:.25rem}blockquote{padding:1em 1em;color:var(--pst-color-text-muted);border-left:.25em solid var(--pst-color-border);border-radius:.25rem;position:relative}blockquote p{color:var(--pst-color-text-base)}blockquote .line-block{margin:0 0}blockquote p:last-child{margin-bottom:0}blockquote:before{content:\"\";width:100%;height:100%;position:absolute;left:0;top:0;background-color:var(--pst-color-on-background);z-index:-1;pointer-events:none}blockquote:before{z-index:-1}span.guilabel{border:1px solid var(--pst-color-info);color:var(--pst-color-info);font-size:80%;font-weight:700;border-radius:4px;padding:2.4px 6px;margin:auto 2px;position:relative}span.guilabel:before{content:\"\";width:100%;height:100%;position:absolute;left:0;top:0;background-color:var(--pst-color-info-bg);z-index:-1;pointer-events:none}a.reference.download:before{content:var(--pst-icon-download);font:var(--fa-font-solid);font-size:.8em;padding:0 .25em;color:var(--pst-color-text-muted)}table{display:table;overflow:auto;margin-left:auto;margin-right:auto}table.table-right{margin-right:0}table.table-left{margin-left:0}table caption{text-align:center;caption-side:top;color:var(--pst-color-text-muted)}th.text-align\\:left,td.text-align\\:left{text-align:left}th.text-align\\:right,td.text-align\\:right{text-align:right}th.text-align\\:center,td.text-align\\:center{text-align:center}.table{--bs-table-bg: transparent}.toctree-wrapper p.caption{font-size:1.5em;margin-bottom:0em}.toctree-wrapper>ul{padding-left:0}.toctree-wrapper li[class^=toctree-l]{list-style:none;margin-bottom:.2em}.toctree-wrapper li[class^=toctree-l]>a{list-style:none;font-size:1.1em}.toctree-wrapper li[class^=toctree-l]>ul{list-style:none;padding-inline-start:1.5em}.toctree-wrapper .toctree-l1>a{font-size:1.3em}div.topic.contents ul.simple,nav.contents ul.simple{list-style:none;padding-left:0}span.math,div.math{align-items:center;display:flex;max-width:100%;overflow:hidden}span.math{display:inline-flex}div.math{gap:.5em;flex-direction:row-reverse}div.math span.eqno a.headerlink{position:relative;font-size:1em}div.math mjx-container{flex-grow:1;padding-bottom:.2rem;overflow:auto}div.math mjx-container mjx-assistive-mml{height:0}.ablog-sidebar-item h2,.ablog-sidebar-item h3{font-size:var(--pst-sidebar-header-font-size);margin-top:.5rem}.ablog-sidebar-item h2 a,.ablog-sidebar-item h3 a{color:var(--pst-color-text-base)}.ablog-sidebar-item ul{list-style:none;padding-left:0;overflow-y:hidden;display:flex;flex-direction:column;gap:.5em;margin-bottom:0}.ablog-sidebar-item ul.ablog-cloud{flex-direction:row;flex-flow:wrap;gap:.5rem}.ablog-sidebar-item ul.ablog-cloud li{display:flex;align-items:center}.ablog__prev-next{font-size:1.2em;display:flex;padding:1rem 0}.ablog__prev-next>span{display:flex;max-width:45%}.ablog__prev-next>span a{display:flex;align-items:center;margin-left:auto;gap:1rem;line-height:1.5rem}.ablog__prev-next>span a i:before{color:var(--pst-color-text-base)}.ablog__prev-next span.ablog__prev i.fa-arrow-circle-left:before{content:var(--pst-icon-angle-left)}.ablog__prev-next span.ablog__spacer{display:none}.ablog__prev-next span.ablog__next{margin-left:auto;text-align:right}.ablog__prev-next span.ablog__next i.fa-arrow-circle-right:before{content:var(--pst-icon-angle-right)}.ablog__collection,.postlist{padding-left:0}.ablog__collection .ablog-post,.postlist .ablog-post{list-style:none}.ablog__collection .ablog-post .ablog-archive,.postlist .ablog-post .ablog-archive{display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;list-style:none;font-size:.75rem;padding-left:0}.ablog__collection .ablog-post .ablog-post-title,.postlist .ablog-post .ablog-post-title{margin-top:0;font-size:1.25rem}.ablog__collection .ablog-post .ablog-post-title a,.postlist .ablog-post .ablog-post-title a{font-weight:bold}.ablog__collection .ablog-post .ablog-post-expand,.postlist .ablog-post .ablog-post-expand{margin-bottom:.5rem}.docutils.container{padding-left:unset;padding-right:unset;margin-left:unset;margin-right:unset;max-width:unset;width:unset}div.highlight button.copybtn{display:flex;align-items:center;justify-content:center;background-color:unset;border:none;background-color:var(--pst-color-surface)}div.highlight button.copybtn:not(.success){color:var(--pst-color-muted)}div.highlight button.copybtn:hover:not(.success){color:var(--pst-color-text);background-color:var(--pst-color-shadow)}div.highlight button.copybtn.o-tooltip--left:after{color:var(--pst-color-text);background-color:var(--pst-color-surface)}#ethical-ad-placement .ethical-sidebar a,#ethical-ad-placement .ethical-sidebar a:visited,#ethical-ad-placement .ethical-sidebar a:hover,#ethical-ad-placement .ethical-sidebar a:active,#ethical-ad-placement .ethical-footer a,#ethical-ad-placement .ethical-footer a:visited,#ethical-ad-placement .ethical-footer a:hover,#ethical-ad-placement .ethical-footer a:active{color:var(--pst-color-text-base)}#ethical-ad-placement .ethical-sidebar,#ethical-ad-placement .ethical-footer{background-color:var(--pst-color-background);border:1px solid var(--pst-color-border);border-radius:5px;color:var(--pst-color-text-base);font-size:14px;line-height:20px}.bd-content div.jupyter_container{border:none;background-color:unset;box-shadow:none}.bd-content div.jupyter_container div.output,.bd-content div.jupyter_container div.highlight{border-radius:.25rem}.bd-content div.jupyter_container div.highlight{background-color:var(--pst-color-surface)}.bd-content div.jupyter_container .cell_input,.bd-content div.jupyter_container .cell_output{border-radius:.25rem}.bd-content div.jupyter_container .cell_input pre,.bd-content div.jupyter_container .cell_output pre{padding:1rem}.xr-wrap[hidden]{display:block !important}:root{--pst-teal-50: #f4fbfc;--pst-teal-100: #e9f6f8;--pst-teal-200: #d0ecf1;--pst-teal-300: #abdde6;--pst-teal-400: #3fb1c5;--pst-teal-500: #0a7d91;--pst-teal-600: #085d6c;--pst-teal-700: #064752;--pst-teal-800: #042c33;--pst-teal-900: #021b1f;--pst-violet-50: #f4eefb;--pst-violet-100: #e0c7ff;--pst-violet-200: #d5b4fd;--pst-violet-300: #b780ff;--pst-violet-400: #9c5ffd;--pst-violet-500: #8045e5;--pst-violet-600: #6432bd;--pst-violet-700: #4b258f;--pst-violet-800: #341a61;--pst-violet-900: #1e0e39;--pst-gray-50: #f9f9fa;--pst-gray-100: #f3f4f5;--pst-gray-200: #e5e7ea;--pst-gray-300: #d1d5da;--pst-gray-400: #9ca4af;--pst-gray-500: #677384;--pst-gray-600: #48566b;--pst-gray-700: #29313d;--pst-gray-800: #222832;--pst-gray-900: #14181e;--pst-pink-50: #fcf8fd;--pst-pink-100: #fcf0fa;--pst-pink-200: #f8dff5;--pst-pink-300: #f3c7ee;--pst-pink-400: #e47fd7;--pst-pink-500: #c132af;--pst-pink-600: #912583;--pst-pink-700: #6e1c64;--pst-pink-800: #46123f;--pst-pink-900: #2b0b27;--pst-foundation-white: #ffffff;--pst-foundation-black: #14181e}html:not([data-theme]){--pst-color-primary: #0a7d91;--pst-color-primary-bg: #d0ecf1;--pst-color-secondary: #8045e5;--pst-color-secondary-bg: #e0c7ff;--pst-color-accent: #c132af;--pst-color-accent-bg: #f8dff5;--pst-color-info: #276be9;--pst-color-info-bg: #dce7fc;--pst-color-warning: #f66a0a;--pst-color-warning-bg: #f8e3d0;--pst-color-success: #00843f;--pst-color-success-bg: #d6ece1;--pst-color-attention: var(--pst-color-warning);--pst-color-attention-bg: var(--pst-color-warning-bg);--pst-color-danger: #d72d47;--pst-color-danger-bg: #f9e1e4;--pst-color-text-base: #222832;--pst-color-text-muted: #48566b;--pst-color-heading-color: #ffffff;--pst-color-shadow: rgba(0, 0, 0, 0.1);--pst-color-border: #d1d5da;--pst-color-border-muted: rgba(23, 23, 26, 0.2);--pst-color-inline-code: #912583;--pst-color-inline-code-links: #085d6c;--pst-color-target: #f3cf95;--pst-color-background: #ffffff;--pst-color-on-background: #ffffff;--pst-color-surface: #f3f4f5;--pst-color-on-surface: #222832}html:not([data-theme]){--pst-color-link: var(--pst-color-primary);--pst-color-link-hover: var(--pst-color-secondary)}html:not([data-theme]) .only-dark,html:not([data-theme]) .only-dark~figcaption{display:none !important}html[data-theme=light]{--pst-color-primary: #0a7d91;--pst-color-primary-bg: #d0ecf1;--pst-color-secondary: #8045e5;--pst-color-secondary-bg: #e0c7ff;--pst-color-accent: #c132af;--pst-color-accent-bg: #f8dff5;--pst-color-info: #276be9;--pst-color-info-bg: #dce7fc;--pst-color-warning: #f66a0a;--pst-color-warning-bg: #f8e3d0;--pst-color-success: #00843f;--pst-color-success-bg: #d6ece1;--pst-color-attention: var(--pst-color-warning);--pst-color-attention-bg: var(--pst-color-warning-bg);--pst-color-danger: #d72d47;--pst-color-danger-bg: #f9e1e4;--pst-color-text-base: #222832;--pst-color-text-muted: #48566b;--pst-color-heading-color: #ffffff;--pst-color-shadow: rgba(0, 0, 0, 0.1);--pst-color-border: #d1d5da;--pst-color-border-muted: rgba(23, 23, 26, 0.2);--pst-color-inline-code: #912583;--pst-color-inline-code-links: #085d6c;--pst-color-target: #f3cf95;--pst-color-background: #ffffff;--pst-color-on-background: #ffffff;--pst-color-surface: #f3f4f5;--pst-color-on-surface: #222832;color-scheme:light}html[data-theme=light]{--pst-color-link: var(--pst-color-primary);--pst-color-link-hover: var(--pst-color-secondary)}html[data-theme=light] .only-dark,html[data-theme=light] .only-dark~figcaption{display:none !important}html[data-theme=dark]{--pst-color-primary: #3fb1c5;--pst-color-primary-bg: #042c33;--pst-color-secondary: #9c5ffd;--pst-color-secondary-bg: #341a61;--pst-color-accent: #e47fd7;--pst-color-accent-bg: #46123f;--pst-color-info: #79a3f2;--pst-color-info-bg: #06245d;--pst-color-warning: #ff9245;--pst-color-warning-bg: #652a02;--pst-color-success: #5fb488;--pst-color-success-bg: #002f17;--pst-color-attention: var(--pst-color-warning);--pst-color-attention-bg: var(--pst-color-warning-bg);--pst-color-danger: #e78894;--pst-color-danger-bg: #4e111b;--pst-color-text-base: #ced6dd;--pst-color-text-muted: #9ca4af;--pst-color-heading-color: #14181e;--pst-color-shadow: rgba(0, 0, 0, 0.2);--pst-color-border: #48566b;--pst-color-border-muted: #29313d;--pst-color-inline-code: #f3c7ee;--pst-color-inline-code-links: #3fb1c5;--pst-color-target: #675c04;--pst-color-background: #14181e;--pst-color-on-background: #222832;--pst-color-surface: #29313d;--pst-color-on-surface: #f3f4f5;color-scheme:dark}html[data-theme=dark]{--pst-color-link: var(--pst-color-primary);--pst-color-link-hover: var(--pst-color-secondary)}html[data-theme=dark] .only-light,html[data-theme=dark] .only-light~figcaption{display:none !important}html[data-theme=dark] img:not(.only-dark):not(.dark-light){filter:brightness(0.8) contrast(1.2)}html[data-theme=dark] .bd-content img:not(.only-dark):not(.dark-light){background:#fff;border-radius:.25rem}html[data-theme=dark] .MathJax_SVG *{fill:var(--pst-color-text-base)}.pst-color-primary{color:var(--pst-color-primary)}.pst-color-secondary{color:var(--pst-color-secondary)}.pst-color-accent{color:var(--pst-color-accent)}.pst-color-info{color:var(--pst-color-info)}.pst-color-warning{color:var(--pst-color-warning)}.pst-color-success{color:var(--pst-color-success)}.pst-color-attention{color:var(--pst-color-attention)}.pst-color-danger{color:var(--pst-color-danger)}.pst-color-text-base{color:var(--pst-color-text-base)}.pst-color-text-muted{color:var(--pst-color-text-muted)}.pst-color-heading-color{color:var(--pst-color-heading-color)}.pst-color-shadow{color:var(--pst-color-shadow)}.pst-color-border{color:var(--pst-color-border)}.pst-color-border-muted{color:var(--pst-color-border-muted)}.pst-color-inline-code{color:var(--pst-color-inline-code)}.pst-color-inline-code-links{color:var(--pst-color-inline-code-links)}.pst-color-target{color:var(--pst-color-target)}.pst-color-background{color:var(--pst-color-background)}.pst-color-on-background{color:var(--pst-color-on-background)}.pst-color-surface{color:var(--pst-color-surface)}.pst-color-on-surface{color:var(--pst-color-on-surface)}html[data-theme=light]{--pst-color-primary: rgb(10, 125, 145);--pst-color-primary-text: #ffffff;--pst-color-primary-highlight: #053f49;--sd-color-primary: var(--pst-color-primary);--sd-color-primary-text: var(--pst-color-primary-text);--sd-color-primary-highlight: var(--pst-color-primary-highlight);--sd-color-primary-bg: #d0ecf1;--sd-color-primary-bg-text: #14181e;--pst-color-secondary: rgb(128, 69, 229);--pst-color-secondary-text: #ffffff;--pst-color-secondary-highlight: #591bc2;--sd-color-secondary: var(--pst-color-secondary);--sd-color-secondary-text: var(--pst-color-secondary-text);--sd-color-secondary-highlight: var(--pst-color-secondary-highlight);--sd-color-secondary-bg: #e0c7ff;--sd-color-secondary-bg-text: #14181e;--pst-color-success: #00843f;--pst-color-success-text: #ffffff;--pst-color-success-highlight: #00381a;--sd-color-success: var(--pst-color-success);--sd-color-success-text: var(--pst-color-success-text);--sd-color-success-highlight: var(--pst-color-success-highlight);--sd-color-success-bg: #d6ece1;--sd-color-success-bg-text: #14181e;--pst-color-info: #276be9;--pst-color-info-text: #ffffff;--pst-color-info-highlight: #124ab1;--sd-color-info: var(--pst-color-info);--sd-color-info-text: var(--pst-color-info-text);--sd-color-info-highlight: var(--pst-color-info-highlight);--sd-color-info-bg: #dce7fc;--sd-color-info-bg-text: #14181e;--pst-color-warning: #f66a0a;--pst-color-warning-text: #14181e;--pst-color-warning-highlight: #ad4a06;--sd-color-warning: var(--pst-color-warning);--sd-color-warning-text: var(--pst-color-warning-text);--sd-color-warning-highlight: var(--pst-color-warning-highlight);--sd-color-warning-bg: #f8e3d0;--sd-color-warning-bg-text: #14181e;--pst-color-danger: #d72d47;--pst-color-danger-text: #ffffff;--pst-color-danger-highlight: #9a1d30;--sd-color-danger: var(--pst-color-danger);--sd-color-danger-text: var(--pst-color-danger-text);--sd-color-danger-highlight: var(--pst-color-danger-highlight);--sd-color-danger-bg: #f9e1e4;--sd-color-danger-bg-text: #14181e;--pst-color-light: #f3f4f5;--pst-color-light-text: #14181e;--pst-color-light-highlight: #c9ced2;--sd-color-light: var(--pst-color-light);--sd-color-light-text: var(--pst-color-light-text);--sd-color-light-highlight: var(--pst-color-light-highlight);--sd-color-light-bg: #f7f7f8;--sd-color-light-bg-text: #14181e;--pst-color-muted: #29313d;--pst-color-muted-text: #ffffff;--pst-color-muted-highlight: #0a0c0f;--sd-color-muted: var(--pst-color-muted);--sd-color-muted-text: var(--pst-color-muted-text);--sd-color-muted-highlight: var(--pst-color-muted-highlight);--sd-color-muted-bg: #5a6c86;--sd-color-muted-bg-text: #ffffff;--pst-color-dark: #222832;--pst-color-dark-text: #ffffff;--pst-color-dark-highlight: #030404;--sd-color-dark: var(--pst-color-dark);--sd-color-dark-text: var(--pst-color-dark-text);--sd-color-dark-highlight: var(--pst-color-dark-highlight);--pst-color-black: #14181e;--pst-color-black-text: #ffffff;--pst-color-black-highlight: black;--sd-color-black: var(--pst-color-black);--sd-color-black-text: var(--pst-color-black-text);--sd-color-black-highlight: var(--pst-color-black-highlight);--pst-color-white: #ffffff;--pst-color-white-text: #14181e;--pst-color-white-highlight: #d9d9d9;--sd-color-white: var(--pst-color-white);--sd-color-white-text: var(--pst-color-white-text);--sd-color-white-highlight: var(--pst-color-white-highlight)}html[data-theme=dark]{--pst-color-primary: rgb(63, 177, 197);--pst-color-primary-text: #14181e;--pst-color-primary-highlight: #2b7e8d;--sd-color-primary: var(--pst-color-primary);--sd-color-primary-text: var(--pst-color-primary-text);--sd-color-primary-highlight: var(--pst-color-primary-highlight);--sd-color-primary-bg: #042c33;--sd-color-primary-bg-text: #ffffff;--pst-color-secondary: rgb(156, 95, 253);--pst-color-secondary-text: #14181e;--pst-color-secondary-highlight: #6d13fc;--sd-color-secondary: var(--pst-color-secondary);--sd-color-secondary-text: var(--pst-color-secondary-text);--sd-color-secondary-highlight: var(--pst-color-secondary-highlight);--sd-color-secondary-bg: #341a61;--sd-color-secondary-bg-text: #ffffff;--pst-color-success: #5fb488;--pst-color-success-text: #14181e;--pst-color-success-highlight: #3f8762;--sd-color-success: var(--pst-color-success);--sd-color-success-text: var(--pst-color-success-text);--sd-color-success-highlight: var(--pst-color-success-highlight);--sd-color-success-bg: #002f17;--sd-color-success-bg-text: #ffffff;--pst-color-info: #79a3f2;--pst-color-info-text: #14181e;--pst-color-info-highlight: #3373eb;--sd-color-info: var(--pst-color-info);--sd-color-info-text: var(--pst-color-info-text);--sd-color-info-highlight: var(--pst-color-info-highlight);--sd-color-info-bg: #06245d;--sd-color-info-bg-text: #ffffff;--pst-color-warning: #ff9245;--pst-color-warning-text: #14181e;--pst-color-warning-highlight: #f86600;--sd-color-warning: var(--pst-color-warning);--sd-color-warning-text: var(--pst-color-warning-text);--sd-color-warning-highlight: var(--pst-color-warning-highlight);--sd-color-warning-bg: #652a02;--sd-color-warning-bg-text: #ffffff;--pst-color-danger: #e78894;--pst-color-danger-text: #14181e;--pst-color-danger-highlight: #da485b;--sd-color-danger: var(--pst-color-danger);--sd-color-danger-text: var(--pst-color-danger-text);--sd-color-danger-highlight: var(--pst-color-danger-highlight);--sd-color-danger-bg: #4e111b;--sd-color-danger-bg-text: #ffffff;--pst-color-light: #f3f4f5;--pst-color-light-text: #14181e;--pst-color-light-highlight: #c9ced2;--sd-color-light: var(--pst-color-light);--sd-color-light-text: var(--pst-color-light-text);--sd-color-light-highlight: var(--pst-color-light-highlight);--sd-color-light-bg: #a3abb2;--sd-color-light-bg-text: #14181e;--pst-color-muted: #f3f4f5;--pst-color-muted-text: #14181e;--pst-color-muted-highlight: #c9ced2;--sd-color-muted: var(--pst-color-muted);--sd-color-muted-text: var(--pst-color-muted-text);--sd-color-muted-highlight: var(--pst-color-muted-highlight);--sd-color-muted-bg: #1d222b;--sd-color-muted-bg-text: #ffffff;--pst-color-dark: #222832;--pst-color-dark-text: #ffffff;--pst-color-dark-highlight: #030404;--sd-color-dark: var(--pst-color-dark);--sd-color-dark-text: var(--pst-color-dark-text);--sd-color-dark-highlight: var(--pst-color-dark-highlight);--pst-color-black: #14181e;--pst-color-black-text: #ffffff;--pst-color-black-highlight: black;--sd-color-black: var(--pst-color-black);--sd-color-black-text: var(--pst-color-black-text);--sd-color-black-highlight: var(--pst-color-black-highlight);--pst-color-white: #ffffff;--pst-color-white-text: #14181e;--pst-color-white-highlight: #d9d9d9;--sd-color-white: var(--pst-color-white);--sd-color-white-text: var(--pst-color-white-text);--sd-color-white-highlight: var(--pst-color-white-highlight)}html[data-theme=light]{--sd-color-card-border: var(--pst-color-border)}html[data-theme=dark]{--sd-color-card-border: var(--pst-color-border)}html[data-theme=light] .sd-shadow-xs,html[data-theme=light] .sd-shadow-sm,html[data-theme=light] .sd-shadow-md,html[data-theme=light] .sd-shadow-lg{box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow) !important}.bd-content .sd-card{border:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-header{background-color:var(--pst-color-panel-background);border-bottom:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-footer{background-color:var(--pst-color-panel-background);border-top:1px solid var(--pst-color-border)}.bd-content .sd-card .sd-card-body{background-color:var(--pst-color-panel-background)}.bd-content .sd-tab-set>input:checked+label{border-color:rgba(0,0,0,0) rgba(0,0,0,0) var(--pst-color-primary);color:var(--pst-color-primary)}.bd-content .sd-tab-set>input:not(:checked)+label:hover{border-color:var(--pst-color-secondary);color:var(--pst-color-secondary)}.bd-content .sd-tab-set>label{color:var(--pst-color-text-muted);border-top:.125rem solid rgba(0,0,0,0);padding-top:.5em}html .bd-content .sd-tab-set>label:hover{color:var(--pst-color-secondary);border-color:var(--pst-color-secondary)}details.sd-dropdown{border:0px !important;box-shadow:0 .2rem .5rem var(--pst-color-shadow),0 0 .0625rem var(--pst-color-shadow) !important}details.sd-dropdown summary.sd-card-header{border:0 !important}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{border:0}details.sd-dropdown summary.sd-card-header{display:flex;align-items:center;position:relative;font-weight:600;padding-top:.5rem;padding-bottom:.5rem;--pst-sd-dropdown-color: var(--pst-gray-500);--pst-sd-dropdown-bg-color: var(--pst-color-surface);background-color:unset !important;border-left:.2rem solid var(--pst-sd-dropdown-color) !important}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-card-border)}details.sd-dropdown summary.sd-card-header.sd-bg-primary{--pst-sd-dropdown-color: var(--sd-color-primary);--pst-sd-dropdown-bg-color: var(--sd-color-primary-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-primary+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-primary);--pst-sd-dropdown-bg-color: var(--sd-color-primary-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-primary{color:var(--sd-color-primary-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-secondary{--pst-sd-dropdown-color: var(--sd-color-secondary);--pst-sd-dropdown-bg-color: var(--sd-color-secondary-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-secondary+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-secondary);--pst-sd-dropdown-bg-color: var(--sd-color-secondary-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-secondary{color:var(--sd-color-secondary-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-success{--pst-sd-dropdown-color: var(--sd-color-success);--pst-sd-dropdown-bg-color: var(--sd-color-success-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-success+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-success);--pst-sd-dropdown-bg-color: var(--sd-color-success-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-success{color:var(--sd-color-success-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-info{--pst-sd-dropdown-color: var(--sd-color-info);--pst-sd-dropdown-bg-color: var(--sd-color-info-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-info+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-info);--pst-sd-dropdown-bg-color: var(--sd-color-info-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-info{color:var(--sd-color-info-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-warning{--pst-sd-dropdown-color: var(--sd-color-warning);--pst-sd-dropdown-bg-color: var(--sd-color-warning-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-warning+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-warning);--pst-sd-dropdown-bg-color: var(--sd-color-warning-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-warning{color:var(--sd-color-warning-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-danger{--pst-sd-dropdown-color: var(--sd-color-danger);--pst-sd-dropdown-bg-color: var(--sd-color-danger-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-danger+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-danger);--pst-sd-dropdown-bg-color: var(--sd-color-danger-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-danger{color:var(--sd-color-danger-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-light{--pst-sd-dropdown-color: var(--sd-color-light);--pst-sd-dropdown-bg-color: var(--sd-color-light-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-light+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-light);--pst-sd-dropdown-bg-color: var(--sd-color-light-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-light{color:var(--sd-color-light-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-muted{--pst-sd-dropdown-color: var(--sd-color-muted);--pst-sd-dropdown-bg-color: var(--sd-color-muted-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-muted+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-muted);--pst-sd-dropdown-bg-color: var(--sd-color-muted-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-muted{color:var(--sd-color-muted-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-dark{--pst-sd-dropdown-color: var(--sd-color-dark);--pst-sd-dropdown-bg-color: var(--sd-color-dark-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-dark+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-dark);--pst-sd-dropdown-bg-color: var(--sd-color-dark-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-dark{color:var(--sd-color-dark-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-black{--pst-sd-dropdown-color: var(--sd-color-black);--pst-sd-dropdown-bg-color: var(--sd-color-black-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-black+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-black);--pst-sd-dropdown-bg-color: var(--sd-color-black-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-black{color:var(--sd-color-black-bg-text) !important}details.sd-dropdown summary.sd-card-header.sd-bg-white{--pst-sd-dropdown-color: var(--sd-color-white);--pst-sd-dropdown-bg-color: var(--sd-color-white-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-white+div.sd-summary-content{--pst-sd-dropdown-color: var(--sd-color-white);--pst-sd-dropdown-bg-color: var(--sd-color-white-bg)}details.sd-dropdown summary.sd-card-header.sd-bg-text-white{color:var(--sd-color-white-bg-text) !important}details.sd-dropdown summary.sd-card-header:before{content:\"\";width:100%;height:100%;position:absolute;left:0;top:0;background-color:var(--pst-sd-dropdown-bg-color);z-index:-1;pointer-events:none}details.sd-dropdown summary.sd-card-header+div.sd-summary-content{border-left:.2rem solid var(--pst-sd-dropdown-color) !important;border-bottom-left-radius:calc(.25rem - 1px);background-color:var(--pst-color-on-background)}details.sd-dropdown summary.sd-card-header span.sd-summary-icon{display:inline-flex;align-items:center;color:var(--pst-sd-dropdown-color) !important}details.sd-dropdown summary.sd-card-header span.sd-summary-icon svg{opacity:1}details.sd-dropdown summary.sd-card-header .sd-summary-up,details.sd-dropdown summary.sd-card-header .sd-summary-down{top:.7rem}.bd-content .admonition button.toggle-button{color:inherit}.bd-content details.toggle-details summary{border-left:3px solid var(--pst-color-primary)}html div.rendered_html html .jp-RenderedHTMLCommon table{table-layout:auto}html[data-theme=dark] .bd-content .nboutput .output_area.rendered_html{color:var(--pst-color-on-background);background-color:var(--pst-color-text-base);border-radius:.25rem;padding:.5rem}html[data-theme=dark] .bd-content .nboutput .output_area.stderr{background:var(--pst-color-danger)}div.nblast.container{margin-bottom:1rem}div.cell_output .output{max-width:100%;overflow-x:auto}html[data-theme=dark] .bd-content div.cell_output img,html[data-theme=dark] .bd-content div.cell_output .text_html{color:var(--pst-color-on-background);background-color:var(--pst-color-text-base);border-radius:.25rem;padding:.5rem}.bd-content div.cell_input{display:flex;flex-direction:column;justify-content:stretch}.bd-content div.cell_input,.bd-content div.output{border-radius:.25rem}.bd-content div.output table{table-layout:auto}html[data-theme=dark] .bd-content img.leaflet-tile.leaflet-tile-loaded{border-radius:0;padding:0}.bd-search-container div#search-results>h2{font-size:var(--pst-font-size-icon);margin-top:0}.bd-search-container div#search-results p.search-summary{color:var(--pst-color-text-muted)}.bd-search-container ul.search{margin:0;list-style:none}.bd-search-container ul.search li{background-image:none;padding:1rem 0;margin:1rem 0;border-top:1px solid var(--pst-color-text-muted)}.bd-search-container ul.search li>a{font-size:1.2em}.bd-search-container ul.search li div.context,.bd-search-container ul.search li p.context{color:var(--pst-color-text-base);margin:.5em 0 0 0}.bd-search-container ul.search li div.context a:before,.bd-search-container ul.search li p.context a:before{content:\"#\";padding-right:.2em;color:var(--pst-color-text-muted)}","html {\n /*****************************************************************************\n * Overall Layout Variables\n */\n\n // Header height will impact the top offset for many sections\n // Article header is 66% of Header\n --pst-header-height: 4rem;\n --pst-header-article-height: calc(var(--pst-header-height) * 2 / 3);\n --pst-sidebar-secondary: 17rem;\n}\n\n/*******************************************************************************\n* Breakpoints that trigger UI changes\n*\n* Note that media-breakpoint-down begins at the next highest level!\n* So we should choose a media-breakpoint-down one *lower* than when we want to start\n* example: media-breakpoint-up(md) and media-breakpoint-down(sm) trigger at the same time\n* ref: https://github.com/twbs/bootstrap/issues/31214\n*/\n$breakpoint-sidebar-primary: lg; // When we collapse the primary sidebar\n$breakpoint-sidebar-secondary: xl; // When we collapse the secondary sidebar\n$breakpoint-page-width: 88rem; // taken from sphinx-basic-ng, which we are ultimately going to inherit\n\n/*******************************************************************************\n* Define the animation behaviour\n*/\n$animation-time: 200ms;\n\n/*******************************************************************************\n* UI shaping and padding\n*/\n$admonition-border-radius: 0.25rem;\n","html {\n /*****************************************************************************\n * Font features used in this theme\n */\n\n // base font size - applied at body/html level\n --pst-font-size-base: 1rem;\n\n // heading font sizes based on bootstrap sizing\n --pst-font-size-h1: 2.5rem;\n --pst-font-size-h2: 2rem;\n --pst-font-size-h3: 1.75rem;\n --pst-font-size-h4: 1.5rem;\n --pst-font-size-h5: 1.25rem;\n --pst-font-size-h6: 1.1rem;\n\n // smaller than heading font sizes\n --pst-font-size-milli: 0.9rem;\n\n // Sidebar styles\n --pst-sidebar-font-size: 0.9rem;\n --pst-sidebar-font-size-mobile: 1.1rem;\n --pst-sidebar-header-font-size: 1.2rem;\n --pst-sidebar-header-font-weight: 600;\n\n // Admonition styles\n --pst-admonition-font-weight-heading: 600;\n\n // Font weights\n --pst-font-weight-caption: 300;\n --pst-font-weight-heading: 400;\n\n // Font family\n // These are adapted from https://systemfontstack.com/ */\n --pst-font-family-base-system: -apple-system, BlinkMacSystemFont, Segoe UI,\n \"Helvetica Neue\", Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji,\n Segoe UI Symbol;\n --pst-font-family-monospace-system: \"SFMono-Regular\", Menlo, Consolas, Monaco,\n Liberation Mono, Lucida Console, monospace;\n\n --pst-font-family-base: var(--pst-font-family-base-system);\n --pst-font-family-heading: var(--pst-font-family-base-system);\n --pst-font-family-monospace: var(--pst-font-family-monospace-system);\n}\n","html {\n /*****************************************************************************\n * Icon\n */\n\n // Font size across all icons\n --pst-font-size-icon: 1.5rem;\n\n // Font Awesome default icons\n --pst-icon-check-circle: \"\\f058\"; // fa-solid fa-circle-check\n --pst-icon-info-circle: \"\\f05a\"; // fa-solid fa-circle-info\n --pst-icon-exclamation-triangle: \"\\f071\"; // fa-solid fa-triangle-exclamation\n --pst-icon-exclamation-circle: \"\\f06a\"; // fa-solid fa-circle-exclamation\n --pst-icon-times-circle: \"\\f057\"; // fa-solid fa-circle-xmark\n --pst-icon-lightbulb: \"\\f0eb\"; // fa-solid fa-lightbulb\n --pst-icon-download: \"\\f019\"; // fa-solid fa-download\n --pst-icon-angle-left: \"\\f104\"; // fa-solid fa-angle-left\n --pst-icon-angle-right: \"\\f105\"; // fa-solid fa-angle-right\n --pst-icon-external-link: \"\\f35d\"; // fa-solid fa-up-right-from-square\n --pst-icon-search-minus: \"\\f010\"; // fa-solid fa-magnifying-glass-minus\n --pst-icon-github: \"\\f09b\"; // fa-brands fa-github\n --pst-icon-gitlab: \"\\f296\"; // fa-brands fa-gitlab\n --pst-icon-share: \"\\f064\"; // fa-solid fa-share\n --pst-icon-bell: \"\\f0f3\"; // fa-solid fa-bell\n --pst-icon-pencil: \"\\f303\"; // fa-solid fa-pencil\n\n // Bootstrap icons\n --pst-breadcrumb-divider: \"\\f105\";\n}\n","html {\n /*****************************************************************************\n * Admonitions\n **/\n\n --pst-icon-admonition-default: var(--pst-icon-bell);\n --pst-icon-admonition-note: var(--pst-icon-info-circle);\n --pst-icon-admonition-attention: var(--pst-icon-exclamation-circle);\n --pst-icon-admonition-caution: var(--pst-icon-exclamation-triangle);\n --pst-icon-admonition-warning: var(--pst-icon-exclamation-triangle);\n --pst-icon-admonition-danger: var(--pst-icon-exclamation-triangle);\n --pst-icon-admonition-error: var(--pst-icon-times-circle);\n --pst-icon-admonition-hint: var(--pst-icon-lightbulb);\n --pst-icon-admonition-tip: var(--pst-icon-lightbulb);\n --pst-icon-admonition-important: var(--pst-icon-exclamation-circle);\n --pst-icon-admonition-seealso: var(--pst-icon-share);\n --pst-icon-admonition-todo: var(--pst-icon-pencil);\n}\n","html {\n /*****************************************************************************\n * versionmodified\n **/\n\n --pst-icon-versionmodified-default: var(--pst-icon-exclamation-circle);\n --pst-icon-versionmodified-added: var(--pst-icon-exclamation-circle);\n --pst-icon-versionmodified-changed: var(--pst-icon-exclamation-circle);\n --pst-icon-versionmodified-deprecated: var(--pst-icon-exclamation-circle);\n}\n","html {\n font-size: var(--pst-font-size-base);\n scroll-padding-top: calc(var(--pst-header-height) + 1rem);\n}\n\nbody {\n background-color: var(--pst-color-background);\n font-family: var(--pst-font-family-base);\n font-weight: 400;\n line-height: 1.65;\n color: var(--pst-color-text-base);\n min-height: 100vh;\n display: flex;\n flex-direction: column;\n\n // hack to avoid the black background on some browser including Safari\n &::-webkit-scrollbar-track {\n background: var(--pst-color-background);\n }\n}\n\np {\n margin-bottom: 1.15rem;\n font-size: 1em;\n color: var(--pst-color-text-base);\n\n /* section header in docstring pages */\n &.rubric {\n border-bottom: 1px solid var(--pst-color-border);\n }\n\n &.centered {\n text-align: center;\n }\n}\n\na {\n @include link-style-default;\n\n // The # anchor that appears on hover over headings\n &.headerlink {\n color: var(--pst-color-secondary);\n opacity: 0.7;\n font-size: 0.8em;\n padding: 0 4px 0 4px;\n margin-left: 0.2em;\n text-decoration: none;\n transition: all 0.2s ease-out;\n user-select: none;\n\n &:hover {\n opacity: 1;\n }\n }\n\n // set up a icon next to the shorten links from github and gitlab\n &.github,\n &.gitlab {\n &::before {\n color: var(--pst-color-text-muted);\n font: var(--fa-font-brands);\n margin-right: 0.25rem;\n }\n }\n\n &.github::before {\n content: var(--pst-icon-github);\n }\n\n &.gitlab::before {\n content: var(--pst-icon-gitlab);\n }\n}\n\n.heading-style {\n margin: 2.75rem 0 1.05rem;\n font-family: var(--pst-font-family-heading);\n font-weight: var(--pst-font-weight-heading);\n line-height: 1.15;\n}\n\nh1 {\n @extend .heading-style;\n margin-top: 0;\n font-size: var(--pst-font-size-h1);\n color: var(--pst-heading-color);\n}\n\nh2 {\n @extend .heading-style;\n font-size: var(--pst-font-size-h2);\n color: var(--pst-heading-color);\n}\n\nh3 {\n @extend .heading-style;\n font-size: var(--pst-font-size-h3);\n color: var(--pst-heading-color);\n}\n\nh4 {\n @extend .heading-style;\n font-size: var(--pst-font-size-h4);\n color: var(--pst-heading-color);\n}\n\nh5 {\n @extend .heading-style;\n font-size: var(--pst-font-size-h5);\n color: var(--pst-color-text-base);\n}\n\nh6 {\n @extend .heading-style;\n font-size: var(--pst-font-size-h6);\n color: var(--pst-color-text-base);\n}\n\nsmall,\n.text_small {\n font-size: var(--pst-font-size-milli);\n}\n\nhr {\n border: 0;\n border-top: 1px solid var(--pst-color-border);\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: var(--pst-font-family-monospace);\n}\n\nkbd {\n // use theme negative\n background-color: var(--pst-color-on-background);\n color: var(--pst-color-text-muted);\n\n // Compound keyboard elements will have nested kbd in them, so this prevents double lines\n &:not(.compound) {\n border: 1px solid var(--pst-color-border);\n margin: 0 0.1rem;\n padding: 0.1rem 0.4rem;\n box-shadow: 1px 1px 1px var(--pst-color-shadow);\n }\n}\n\ncode {\n color: var(--pst-color-inline-code);\n}\n\npre {\n margin: 1.5em 0 1.5em 0;\n padding: 1rem;\n background-color: var(--pst-color-surface);\n color: var(--pst-color-text-base);\n line-height: 1.2em;\n border: 1px solid var(--pst-color-border);\n border-radius: $admonition-border-radius;\n\n .linenos {\n // minimum opacity to make the line numbers WCAG AA conformant\n opacity: 0.8;\n padding-right: 10px;\n }\n}\n\n// the back to top btn\n#pst-back-to-top {\n z-index: $zindex-tooltip;\n position: fixed;\n display: none;\n top: 80vh;\n left: 50vw;\n transform: translate(-50%);\n color: var(--pst-color-secondary-text);\n background-color: var(--pst-color-secondary);\n border: none;\n}\n","/**\n * Consistent styling for links\n **/\n\n// Define some useful variables for links styling consistency\n//\n// Thickness of the underline for links\n// the default will be either:\n// - 1px\n// - 0.0625rem if it's thicker than 1px because the user has changed the text\n// size in their browser\n$link-underline-thickness: unquote(\"max(1px, .0625rem)\") !default;\n// Offset of link underlines from text baseline\n// The default is 3px expressed as ems, as calculated against the default body\n// font size (on desktop).\n$link-underline-offset: 0.1578em !default;\n// Thickness of link underlines in hover state\n// The default for each link will be the thickest of the following:\n// - 3px\n// - 0.1875rem, if it's thicker than 3px because the user has changed the text\n// size in their browser\n// - 0.12em (relative to the link's text size)\n$link-hover-decoration-thickness: unquote(\"max(3px, .1875rem, .12em)\") !default;\n\n// Ensures links have an underline decoration by default - needed to meet\n// WCAG SC 1.4.1\n@mixin link-decoration {\n text-decoration: underline;\n\n @if $link-underline-thickness {\n text-decoration-thickness: $link-underline-thickness;\n }\n\n @if $link-underline-offset {\n text-underline-offset: $link-underline-offset;\n }\n}\n\n// Ensures links have an underline decoration on hover - distinct from the\n// default behaviour\n@mixin link-decoration-hover {\n @if $link-hover-decoration-thickness {\n text-decoration-thickness: $link-hover-decoration-thickness;\n // Disable ink skipping on underlines on hover. Browsers haven't\n // standardised on this part of the spec yet, so set both properties\n text-decoration-skip-ink: none; // Chromium, Firefox\n text-decoration-skip: none; // Safari\n }\n}\n\n// Simple hover style - can be used alone or in conjunction with other mixins\n// Add the text underline and change in thickness on hover\n@mixin link-style-hover {\n &:hover {\n @include link-decoration;\n @include link-decoration-hover;\n color: var(--pst-color-link-hover);\n }\n}\n\n// Default link styles\n//\n// Defines: default unvisited, visited, hover, and active.\n// TODO: @trallard to improve focus styles in subsequent PR\n@mixin link-style-default {\n // So that really long links don't spill out of their container\n word-wrap: break-word;\n\n color: var(--pst-color-link);\n @include link-decoration;\n\n &:hover {\n color: var(--pst-color-link-hover);\n @include link-decoration-hover;\n }\n\n // TODO: @trallard to add active styles in subsequent PR\n &:active {\n color: var(--pst-color-link);\n }\n\n // Visited should still be hoverable\n &:visited {\n color: var(--pst-color-link);\n &:hover {\n color: var(--pst-color-link-hover);\n }\n }\n @include focus-indicator;\n}\n\n// Text link styles\n//\n// Makes links use the muted text colour and removes the underline.\n// Use this mixin for navigation bar links.\n@mixin link-style-text {\n color: var(--pst-color-text-muted);\n text-decoration: none;\n\n &:hover {\n color: var(--pst-color-link-hover);\n @include link-decoration;\n @include link-decoration-hover;\n }\n @include focus-indicator;\n}\n\n// Sidebar and TOC links\n//\n// Makes links use the muted text colour and removes the underline.\n// Use this mixin for navigation the primary sidebar and table of contents.\n// Active and hover should work together rather than one overriding the other.\n@mixin link-sidebar {\n color: var(--pst-color-text-muted);\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n background-color: transparent;\n color: var(--pst-color-link-hover);\n @include link-decoration-hover;\n }\n\n // TODO: @trallard to update active styles in subsequent PR\n &:active {\n color: var(--pst-color-link-hover);\n }\n}\n\n// Sidebar current page link styles\n//\n// Adds a vertical line on the left hand side of the link to indicate that\n// it's the current page. Note this is distinct from an active state.\n// Used on the primary sidebar and the TOC.\n// We want the side box shadow to have the same thickness as the hover underline\n@mixin link-sidebar-current {\n font-weight: 600;\n color: var(--pst-color-primary);\n @if $link-hover-decoration-thickness {\n box-shadow: inset\n $link-hover-decoration-thickness\n 0px\n 0px\n var(--pst-color-primary);\n }\n}\n\n// Navigation bar current page link styles\n//\n// Adds a bottom underline, this leaves enough space for the hover state without\n// cluttering the navbar.\n// We want the side box shadow to have the same thickness as the hover underline\n@mixin link-navbar-current {\n font-weight: 600;\n color: var(--pst-color-primary);\n @if $link-hover-decoration-thickness {\n border-bottom: $link-hover-decoration-thickness\n solid\n var(--pst-color-primary);\n }\n}\n\n// Navigation bar icon links hover styles\n//\n// Adds a bottom box-shadow - since there is no text we cannot use text-decoration\n// We want the side box shadow to have the same thickness as the hover underline\n@mixin icon-navbar-hover {\n &:hover {\n color: var(--pst-color-link-hover);\n @if $link-hover-decoration-thickness {\n box-shadow: 0px\n $link-hover-decoration-thickness\n 0px\n var(--pst-color-link-hover);\n }\n }\n}\n\n// Focus indicator\n@mixin focus-indicator {\n &:focus-visible {\n outline: 2px solid var(--pst-color-accent);\n }\n}\n","// Variables\n//\n// Variables should follow the `$component-state-property-size` formula for\n// consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.\n\n// Color system\n\n// scss-docs-start gray-color-variables\n$white: #fff !default;\n$gray-100: #f8f9fa !default;\n$gray-200: #e9ecef !default;\n$gray-300: #dee2e6 !default;\n$gray-400: #ced4da !default;\n$gray-500: #adb5bd !default;\n$gray-600: #6c757d !default;\n$gray-700: #495057 !default;\n$gray-800: #343a40 !default;\n$gray-900: #212529 !default;\n$black: #000 !default;\n// scss-docs-end gray-color-variables\n\n// fusv-disable\n// scss-docs-start gray-colors-map\n$grays: (\n \"100\": $gray-100,\n \"200\": $gray-200,\n \"300\": $gray-300,\n \"400\": $gray-400,\n \"500\": $gray-500,\n \"600\": $gray-600,\n \"700\": $gray-700,\n \"800\": $gray-800,\n \"900\": $gray-900\n) !default;\n// scss-docs-end gray-colors-map\n// fusv-enable\n\n// scss-docs-start color-variables\n$blue: #0d6efd !default;\n$indigo: #6610f2 !default;\n$purple: #6f42c1 !default;\n$pink: #d63384 !default;\n$red: #dc3545 !default;\n$orange: #fd7e14 !default;\n$yellow: #ffc107 !default;\n$green: #198754 !default;\n$teal: #20c997 !default;\n$cyan: #0dcaf0 !default;\n// scss-docs-end color-variables\n\n// scss-docs-start colors-map\n$colors: (\n \"blue\": $blue,\n \"indigo\": $indigo,\n \"purple\": $purple,\n \"pink\": $pink,\n \"red\": $red,\n \"orange\": $orange,\n \"yellow\": $yellow,\n \"green\": $green,\n \"teal\": $teal,\n \"cyan\": $cyan,\n \"black\": $black,\n \"white\": $white,\n \"gray\": $gray-600,\n \"gray-dark\": $gray-800\n) !default;\n// scss-docs-end colors-map\n\n// The contrast ratio to reach against white, to determine if color changes from \"light\" to \"dark\". Acceptable values for WCAG 2.0 are 3, 4.5 and 7.\n// See https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast\n$min-contrast-ratio: 4.5 !default;\n\n// Customize the light and dark text colors for use in our color contrast function.\n$color-contrast-dark: $black !default;\n$color-contrast-light: $white !default;\n\n// fusv-disable\n$blue-100: tint-color($blue, 80%) !default;\n$blue-200: tint-color($blue, 60%) !default;\n$blue-300: tint-color($blue, 40%) !default;\n$blue-400: tint-color($blue, 20%) !default;\n$blue-500: $blue !default;\n$blue-600: shade-color($blue, 20%) !default;\n$blue-700: shade-color($blue, 40%) !default;\n$blue-800: shade-color($blue, 60%) !default;\n$blue-900: shade-color($blue, 80%) !default;\n\n$indigo-100: tint-color($indigo, 80%) !default;\n$indigo-200: tint-color($indigo, 60%) !default;\n$indigo-300: tint-color($indigo, 40%) !default;\n$indigo-400: tint-color($indigo, 20%) !default;\n$indigo-500: $indigo !default;\n$indigo-600: shade-color($indigo, 20%) !default;\n$indigo-700: shade-color($indigo, 40%) !default;\n$indigo-800: shade-color($indigo, 60%) !default;\n$indigo-900: shade-color($indigo, 80%) !default;\n\n$purple-100: tint-color($purple, 80%) !default;\n$purple-200: tint-color($purple, 60%) !default;\n$purple-300: tint-color($purple, 40%) !default;\n$purple-400: tint-color($purple, 20%) !default;\n$purple-500: $purple !default;\n$purple-600: shade-color($purple, 20%) !default;\n$purple-700: shade-color($purple, 40%) !default;\n$purple-800: shade-color($purple, 60%) !default;\n$purple-900: shade-color($purple, 80%) !default;\n\n$pink-100: tint-color($pink, 80%) !default;\n$pink-200: tint-color($pink, 60%) !default;\n$pink-300: tint-color($pink, 40%) !default;\n$pink-400: tint-color($pink, 20%) !default;\n$pink-500: $pink !default;\n$pink-600: shade-color($pink, 20%) !default;\n$pink-700: shade-color($pink, 40%) !default;\n$pink-800: shade-color($pink, 60%) !default;\n$pink-900: shade-color($pink, 80%) !default;\n\n$red-100: tint-color($red, 80%) !default;\n$red-200: tint-color($red, 60%) !default;\n$red-300: tint-color($red, 40%) !default;\n$red-400: tint-color($red, 20%) !default;\n$red-500: $red !default;\n$red-600: shade-color($red, 20%) !default;\n$red-700: shade-color($red, 40%) !default;\n$red-800: shade-color($red, 60%) !default;\n$red-900: shade-color($red, 80%) !default;\n\n$orange-100: tint-color($orange, 80%) !default;\n$orange-200: tint-color($orange, 60%) !default;\n$orange-300: tint-color($orange, 40%) !default;\n$orange-400: tint-color($orange, 20%) !default;\n$orange-500: $orange !default;\n$orange-600: shade-color($orange, 20%) !default;\n$orange-700: shade-color($orange, 40%) !default;\n$orange-800: shade-color($orange, 60%) !default;\n$orange-900: shade-color($orange, 80%) !default;\n\n$yellow-100: tint-color($yellow, 80%) !default;\n$yellow-200: tint-color($yellow, 60%) !default;\n$yellow-300: tint-color($yellow, 40%) !default;\n$yellow-400: tint-color($yellow, 20%) !default;\n$yellow-500: $yellow !default;\n$yellow-600: shade-color($yellow, 20%) !default;\n$yellow-700: shade-color($yellow, 40%) !default;\n$yellow-800: shade-color($yellow, 60%) !default;\n$yellow-900: shade-color($yellow, 80%) !default;\n\n$green-100: tint-color($green, 80%) !default;\n$green-200: tint-color($green, 60%) !default;\n$green-300: tint-color($green, 40%) !default;\n$green-400: tint-color($green, 20%) !default;\n$green-500: $green !default;\n$green-600: shade-color($green, 20%) !default;\n$green-700: shade-color($green, 40%) !default;\n$green-800: shade-color($green, 60%) !default;\n$green-900: shade-color($green, 80%) !default;\n\n$teal-100: tint-color($teal, 80%) !default;\n$teal-200: tint-color($teal, 60%) !default;\n$teal-300: tint-color($teal, 40%) !default;\n$teal-400: tint-color($teal, 20%) !default;\n$teal-500: $teal !default;\n$teal-600: shade-color($teal, 20%) !default;\n$teal-700: shade-color($teal, 40%) !default;\n$teal-800: shade-color($teal, 60%) !default;\n$teal-900: shade-color($teal, 80%) !default;\n\n$cyan-100: tint-color($cyan, 80%) !default;\n$cyan-200: tint-color($cyan, 60%) !default;\n$cyan-300: tint-color($cyan, 40%) !default;\n$cyan-400: tint-color($cyan, 20%) !default;\n$cyan-500: $cyan !default;\n$cyan-600: shade-color($cyan, 20%) !default;\n$cyan-700: shade-color($cyan, 40%) !default;\n$cyan-800: shade-color($cyan, 60%) !default;\n$cyan-900: shade-color($cyan, 80%) !default;\n\n$blues: (\n \"blue-100\": $blue-100,\n \"blue-200\": $blue-200,\n \"blue-300\": $blue-300,\n \"blue-400\": $blue-400,\n \"blue-500\": $blue-500,\n \"blue-600\": $blue-600,\n \"blue-700\": $blue-700,\n \"blue-800\": $blue-800,\n \"blue-900\": $blue-900\n) !default;\n\n$indigos: (\n \"indigo-100\": $indigo-100,\n \"indigo-200\": $indigo-200,\n \"indigo-300\": $indigo-300,\n \"indigo-400\": $indigo-400,\n \"indigo-500\": $indigo-500,\n \"indigo-600\": $indigo-600,\n \"indigo-700\": $indigo-700,\n \"indigo-800\": $indigo-800,\n \"indigo-900\": $indigo-900\n) !default;\n\n$purples: (\n \"purple-100\": $purple-100,\n \"purple-200\": $purple-200,\n \"purple-300\": $purple-300,\n \"purple-400\": $purple-400,\n \"purple-500\": $purple-500,\n \"purple-600\": $purple-600,\n \"purple-700\": $purple-700,\n \"purple-800\": $purple-800,\n \"purple-900\": $purple-900\n) !default;\n\n$pinks: (\n \"pink-100\": $pink-100,\n \"pink-200\": $pink-200,\n \"pink-300\": $pink-300,\n \"pink-400\": $pink-400,\n \"pink-500\": $pink-500,\n \"pink-600\": $pink-600,\n \"pink-700\": $pink-700,\n \"pink-800\": $pink-800,\n \"pink-900\": $pink-900\n) !default;\n\n$reds: (\n \"red-100\": $red-100,\n \"red-200\": $red-200,\n \"red-300\": $red-300,\n \"red-400\": $red-400,\n \"red-500\": $red-500,\n \"red-600\": $red-600,\n \"red-700\": $red-700,\n \"red-800\": $red-800,\n \"red-900\": $red-900\n) !default;\n\n$oranges: (\n \"orange-100\": $orange-100,\n \"orange-200\": $orange-200,\n \"orange-300\": $orange-300,\n \"orange-400\": $orange-400,\n \"orange-500\": $orange-500,\n \"orange-600\": $orange-600,\n \"orange-700\": $orange-700,\n \"orange-800\": $orange-800,\n \"orange-900\": $orange-900\n) !default;\n\n$yellows: (\n \"yellow-100\": $yellow-100,\n \"yellow-200\": $yellow-200,\n \"yellow-300\": $yellow-300,\n \"yellow-400\": $yellow-400,\n \"yellow-500\": $yellow-500,\n \"yellow-600\": $yellow-600,\n \"yellow-700\": $yellow-700,\n \"yellow-800\": $yellow-800,\n \"yellow-900\": $yellow-900\n) !default;\n\n$greens: (\n \"green-100\": $green-100,\n \"green-200\": $green-200,\n \"green-300\": $green-300,\n \"green-400\": $green-400,\n \"green-500\": $green-500,\n \"green-600\": $green-600,\n \"green-700\": $green-700,\n \"green-800\": $green-800,\n \"green-900\": $green-900\n) !default;\n\n$teals: (\n \"teal-100\": $teal-100,\n \"teal-200\": $teal-200,\n \"teal-300\": $teal-300,\n \"teal-400\": $teal-400,\n \"teal-500\": $teal-500,\n \"teal-600\": $teal-600,\n \"teal-700\": $teal-700,\n \"teal-800\": $teal-800,\n \"teal-900\": $teal-900\n) !default;\n\n$cyans: (\n \"cyan-100\": $cyan-100,\n \"cyan-200\": $cyan-200,\n \"cyan-300\": $cyan-300,\n \"cyan-400\": $cyan-400,\n \"cyan-500\": $cyan-500,\n \"cyan-600\": $cyan-600,\n \"cyan-700\": $cyan-700,\n \"cyan-800\": $cyan-800,\n \"cyan-900\": $cyan-900\n) !default;\n// fusv-enable\n\n// scss-docs-start theme-color-variables\n$primary: $blue !default;\n$secondary: $gray-600 !default;\n$success: $green !default;\n$info: $cyan !default;\n$warning: $yellow !default;\n$danger: $red !default;\n$light: $gray-100 !default;\n$dark: $gray-900 !default;\n// scss-docs-end theme-color-variables\n\n// scss-docs-start theme-colors-map\n$theme-colors: (\n \"primary\": $primary,\n \"secondary\": $secondary,\n \"success\": $success,\n \"info\": $info,\n \"warning\": $warning,\n \"danger\": $danger,\n \"light\": $light,\n \"dark\": $dark\n) !default;\n// scss-docs-end theme-colors-map\n\n// scss-docs-start theme-text-variables\n$primary-text-emphasis: shade-color($primary, 60%) !default;\n$secondary-text-emphasis: shade-color($secondary, 60%) !default;\n$success-text-emphasis: shade-color($success, 60%) !default;\n$info-text-emphasis: shade-color($info, 60%) !default;\n$warning-text-emphasis: shade-color($warning, 60%) !default;\n$danger-text-emphasis: shade-color($danger, 60%) !default;\n$light-text-emphasis: $gray-700 !default;\n$dark-text-emphasis: $gray-700 !default;\n// scss-docs-end theme-text-variables\n\n// scss-docs-start theme-bg-subtle-variables\n$primary-bg-subtle: tint-color($primary, 80%) !default;\n$secondary-bg-subtle: tint-color($secondary, 80%) !default;\n$success-bg-subtle: tint-color($success, 80%) !default;\n$info-bg-subtle: tint-color($info, 80%) !default;\n$warning-bg-subtle: tint-color($warning, 80%) !default;\n$danger-bg-subtle: tint-color($danger, 80%) !default;\n$light-bg-subtle: mix($gray-100, $white) !default;\n$dark-bg-subtle: $gray-400 !default;\n// scss-docs-end theme-bg-subtle-variables\n\n// scss-docs-start theme-border-subtle-variables\n$primary-border-subtle: tint-color($primary, 60%) !default;\n$secondary-border-subtle: tint-color($secondary, 60%) !default;\n$success-border-subtle: tint-color($success, 60%) !default;\n$info-border-subtle: tint-color($info, 60%) !default;\n$warning-border-subtle: tint-color($warning, 60%) !default;\n$danger-border-subtle: tint-color($danger, 60%) !default;\n$light-border-subtle: $gray-200 !default;\n$dark-border-subtle: $gray-500 !default;\n// scss-docs-end theme-border-subtle-variables\n\n// Characters which are escaped by the escape-svg function\n$escaped-characters: (\n (\"<\", \"%3c\"),\n (\">\", \"%3e\"),\n (\"#\", \"%23\"),\n (\"(\", \"%28\"),\n (\")\", \"%29\"),\n) !default;\n\n// Options\n//\n// Quickly modify global styling by enabling or disabling optional features.\n\n$enable-caret: true !default;\n$enable-rounded: true !default;\n$enable-shadows: false !default;\n$enable-gradients: false !default;\n$enable-transitions: true !default;\n$enable-reduced-motion: true !default;\n$enable-smooth-scroll: true !default;\n$enable-grid-classes: true !default;\n$enable-container-classes: true !default;\n$enable-cssgrid: false !default;\n$enable-button-pointers: true !default;\n$enable-rfs: true !default;\n$enable-validation-icons: true !default;\n$enable-negative-margins: false !default;\n$enable-deprecation-messages: true !default;\n$enable-important-utilities: true !default;\n\n$enable-dark-mode: true !default;\n$color-mode-type: data !default; // `data` or `media-query`\n\n// Prefix for :root CSS variables\n\n$variable-prefix: bs- !default; // Deprecated in v5.2.0 for the shorter `$prefix`\n$prefix: $variable-prefix !default;\n\n// Gradient\n//\n// The gradient which is added to components if `$enable-gradients` is `true`\n// This gradient is also added to elements with `.bg-gradient`\n// scss-docs-start variable-gradient\n$gradient: linear-gradient(180deg, rgba($white, .15), rgba($white, 0)) !default;\n// scss-docs-end variable-gradient\n\n// Spacing\n//\n// Control the default styling of most Bootstrap elements by modifying these\n// variables. Mostly focused on spacing.\n// You can add more entries to the $spacers map, should you need more variation.\n\n// scss-docs-start spacer-variables-maps\n$spacer: 1rem !default;\n$spacers: (\n 0: 0,\n 1: $spacer * .25,\n 2: $spacer * .5,\n 3: $spacer,\n 4: $spacer * 1.5,\n 5: $spacer * 3,\n) !default;\n// scss-docs-end spacer-variables-maps\n\n// Position\n//\n// Define the edge positioning anchors of the position utilities.\n\n// scss-docs-start position-map\n$position-values: (\n 0: 0,\n 50: 50%,\n 100: 100%\n) !default;\n// scss-docs-end position-map\n\n// Body\n//\n// Settings for the `` element.\n\n$body-text-align: null !default;\n$body-color: $gray-900 !default;\n$body-bg: $white !default;\n\n$body-secondary-color: rgba($body-color, .75) !default;\n$body-secondary-bg: $gray-200 !default;\n\n$body-tertiary-color: rgba($body-color, .5) !default;\n$body-tertiary-bg: $gray-100 !default;\n\n$body-emphasis-color: $black !default;\n\n// Links\n//\n// Style anchor elements.\n\n$link-color: $primary !default;\n$link-decoration: underline !default;\n$link-shade-percentage: 20% !default;\n$link-hover-color: shift-color($link-color, $link-shade-percentage) !default;\n$link-hover-decoration: null !default;\n\n$stretched-link-pseudo-element: after !default;\n$stretched-link-z-index: 1 !default;\n\n// Icon links\n// scss-docs-start icon-link-variables\n$icon-link-gap: .375rem !default;\n$icon-link-underline-offset: .25em !default;\n$icon-link-icon-size: 1em !default;\n$icon-link-icon-transition: .2s ease-in-out transform !default;\n$icon-link-icon-transform: translate3d(.25em, 0, 0) !default;\n// scss-docs-end icon-link-variables\n\n// Paragraphs\n//\n// Style p element.\n\n$paragraph-margin-bottom: 1rem !default;\n\n\n// Grid breakpoints\n//\n// Define the minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries.\n\n// scss-docs-start grid-breakpoints\n$grid-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px,\n xxl: 1400px\n) !default;\n// scss-docs-end grid-breakpoints\n\n@include _assert-ascending($grid-breakpoints, \"$grid-breakpoints\");\n@include _assert-starts-at-zero($grid-breakpoints, \"$grid-breakpoints\");\n\n\n// Grid containers\n//\n// Define the maximum width of `.container` for different screen sizes.\n\n// scss-docs-start container-max-widths\n$container-max-widths: (\n sm: 540px,\n md: 720px,\n lg: 960px,\n xl: 1140px,\n xxl: 1320px\n) !default;\n// scss-docs-end container-max-widths\n\n@include _assert-ascending($container-max-widths, \"$container-max-widths\");\n\n\n// Grid columns\n//\n// Set the number of columns and specify the width of the gutters.\n\n$grid-columns: 12 !default;\n$grid-gutter-width: 1.5rem !default;\n$grid-row-columns: 6 !default;\n\n// Container padding\n\n$container-padding-x: $grid-gutter-width !default;\n\n\n// Components\n//\n// Define common padding and border radius sizes and more.\n\n// scss-docs-start border-variables\n$border-width: 1px !default;\n$border-widths: (\n 1: 1px,\n 2: 2px,\n 3: 3px,\n 4: 4px,\n 5: 5px\n) !default;\n$border-style: solid !default;\n$border-color: $gray-300 !default;\n$border-color-translucent: rgba($black, .175) !default;\n// scss-docs-end border-variables\n\n// scss-docs-start border-radius-variables\n$border-radius: .375rem !default;\n$border-radius-sm: .25rem !default;\n$border-radius-lg: .5rem !default;\n$border-radius-xl: 1rem !default;\n$border-radius-xxl: 2rem !default;\n$border-radius-pill: 50rem !default;\n// scss-docs-end border-radius-variables\n// fusv-disable\n$border-radius-2xl: $border-radius-xxl !default; // Deprecated in v5.3.0\n// fusv-enable\n\n// scss-docs-start box-shadow-variables\n$box-shadow: 0 .5rem 1rem rgba($black, .15) !default;\n$box-shadow-sm: 0 .125rem .25rem rgba($black, .075) !default;\n$box-shadow-lg: 0 1rem 3rem rgba($black, .175) !default;\n$box-shadow-inset: inset 0 1px 2px rgba($black, .075) !default;\n// scss-docs-end box-shadow-variables\n\n$component-active-color: $white !default;\n$component-active-bg: $primary !default;\n\n// scss-docs-start focus-ring-variables\n$focus-ring-width: .25rem !default;\n$focus-ring-opacity: .25 !default;\n$focus-ring-color: rgba($primary, $focus-ring-opacity) !default;\n$focus-ring-blur: 0 !default;\n$focus-ring-box-shadow: 0 0 $focus-ring-blur $focus-ring-width $focus-ring-color !default;\n// scss-docs-end focus-ring-variables\n\n// scss-docs-start caret-variables\n$caret-width: .3em !default;\n$caret-vertical-align: $caret-width * .85 !default;\n$caret-spacing: $caret-width * .85 !default;\n// scss-docs-end caret-variables\n\n$transition-base: all .2s ease-in-out !default;\n$transition-fade: opacity .15s linear !default;\n// scss-docs-start collapse-transition\n$transition-collapse: height .35s ease !default;\n$transition-collapse-width: width .35s ease !default;\n// scss-docs-end collapse-transition\n\n// stylelint-disable function-disallowed-list\n// scss-docs-start aspect-ratios\n$aspect-ratios: (\n \"1x1\": 100%,\n \"4x3\": calc(3 / 4 * 100%),\n \"16x9\": calc(9 / 16 * 100%),\n \"21x9\": calc(9 / 21 * 100%)\n) !default;\n// scss-docs-end aspect-ratios\n// stylelint-enable function-disallowed-list\n\n// Typography\n//\n// Font, line-height, and color for body text, headings, and more.\n\n// scss-docs-start font-variables\n// stylelint-disable value-keyword-case\n$font-family-sans-serif: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Noto Sans\", \"Liberation Sans\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\" !default;\n$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !default;\n// stylelint-enable value-keyword-case\n$font-family-base: var(--#{$prefix}font-sans-serif) !default;\n$font-family-code: var(--#{$prefix}font-monospace) !default;\n\n// $font-size-root affects the value of `rem`, which is used for as well font sizes, paddings, and margins\n// $font-size-base affects the font size of the body text\n$font-size-root: null !default;\n$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`\n$font-size-sm: $font-size-base * .875 !default;\n$font-size-lg: $font-size-base * 1.25 !default;\n\n$font-weight-lighter: lighter !default;\n$font-weight-light: 300 !default;\n$font-weight-normal: 400 !default;\n$font-weight-medium: 500 !default;\n$font-weight-semibold: 600 !default;\n$font-weight-bold: 700 !default;\n$font-weight-bolder: bolder !default;\n\n$font-weight-base: $font-weight-normal !default;\n\n$line-height-base: 1.5 !default;\n$line-height-sm: 1.25 !default;\n$line-height-lg: 2 !default;\n\n$h1-font-size: $font-size-base * 2.5 !default;\n$h2-font-size: $font-size-base * 2 !default;\n$h3-font-size: $font-size-base * 1.75 !default;\n$h4-font-size: $font-size-base * 1.5 !default;\n$h5-font-size: $font-size-base * 1.25 !default;\n$h6-font-size: $font-size-base !default;\n// scss-docs-end font-variables\n\n// scss-docs-start font-sizes\n$font-sizes: (\n 1: $h1-font-size,\n 2: $h2-font-size,\n 3: $h3-font-size,\n 4: $h4-font-size,\n 5: $h5-font-size,\n 6: $h6-font-size\n) !default;\n// scss-docs-end font-sizes\n\n// scss-docs-start headings-variables\n$headings-margin-bottom: $spacer * .5 !default;\n$headings-font-family: null !default;\n$headings-font-style: null !default;\n$headings-font-weight: 500 !default;\n$headings-line-height: 1.2 !default;\n$headings-color: inherit !default;\n// scss-docs-end headings-variables\n\n// scss-docs-start display-headings\n$display-font-sizes: (\n 1: 5rem,\n 2: 4.5rem,\n 3: 4rem,\n 4: 3.5rem,\n 5: 3rem,\n 6: 2.5rem\n) !default;\n\n$display-font-family: null !default;\n$display-font-style: null !default;\n$display-font-weight: 300 !default;\n$display-line-height: $headings-line-height !default;\n// scss-docs-end display-headings\n\n// scss-docs-start type-variables\n$lead-font-size: $font-size-base * 1.25 !default;\n$lead-font-weight: 300 !default;\n\n$small-font-size: .875em !default;\n\n$sub-sup-font-size: .75em !default;\n\n// fusv-disable\n$text-muted: var(--#{$prefix}secondary-color) !default; // Deprecated in 5.3.0\n// fusv-enable\n\n$initialism-font-size: $small-font-size !default;\n\n$blockquote-margin-y: $spacer !default;\n$blockquote-font-size: $font-size-base * 1.25 !default;\n$blockquote-footer-color: $gray-600 !default;\n$blockquote-footer-font-size: $small-font-size !default;\n\n$hr-margin-y: $spacer !default;\n$hr-color: inherit !default;\n\n// fusv-disable\n$hr-bg-color: null !default; // Deprecated in v5.2.0\n$hr-height: null !default; // Deprecated in v5.2.0\n// fusv-enable\n\n$hr-border-color: null !default; // Allows for inherited colors\n$hr-border-width: var(--#{$prefix}border-width) !default;\n$hr-opacity: .25 !default;\n\n// scss-docs-start vr-variables\n$vr-border-width: var(--#{$prefix}border-width) !default;\n// scss-docs-end vr-variables\n\n$legend-margin-bottom: .5rem !default;\n$legend-font-size: 1.5rem !default;\n$legend-font-weight: null !default;\n\n$dt-font-weight: $font-weight-bold !default;\n\n$list-inline-padding: .5rem !default;\n\n$mark-padding: .1875em !default;\n$mark-color: $body-color !default;\n$mark-bg: $yellow-100 !default;\n// scss-docs-end type-variables\n\n\n// Tables\n//\n// Customizes the `.table` component with basic values, each used across all table variations.\n\n// scss-docs-start table-variables\n$table-cell-padding-y: .5rem !default;\n$table-cell-padding-x: .5rem !default;\n$table-cell-padding-y-sm: .25rem !default;\n$table-cell-padding-x-sm: .25rem !default;\n\n$table-cell-vertical-align: top !default;\n\n$table-color: var(--#{$prefix}emphasis-color) !default;\n$table-bg: var(--#{$prefix}body-bg) !default;\n$table-accent-bg: transparent !default;\n\n$table-th-font-weight: null !default;\n\n$table-striped-color: $table-color !default;\n$table-striped-bg-factor: .05 !default;\n$table-striped-bg: rgba(var(--#{$prefix}emphasis-color-rgb), $table-striped-bg-factor) !default;\n\n$table-active-color: $table-color !default;\n$table-active-bg-factor: .1 !default;\n$table-active-bg: rgba(var(--#{$prefix}emphasis-color-rgb), $table-active-bg-factor) !default;\n\n$table-hover-color: $table-color !default;\n$table-hover-bg-factor: .075 !default;\n$table-hover-bg: rgba(var(--#{$prefix}emphasis-color-rgb), $table-hover-bg-factor) !default;\n\n$table-border-factor: .2 !default;\n$table-border-width: var(--#{$prefix}border-width) !default;\n$table-border-color: var(--#{$prefix}border-color) !default;\n\n$table-striped-order: odd !default;\n$table-striped-columns-order: even !default;\n\n$table-group-separator-color: currentcolor !default;\n\n$table-caption-color: var(--#{$prefix}secondary-color) !default;\n\n$table-bg-scale: -80% !default;\n// scss-docs-end table-variables\n\n// scss-docs-start table-loop\n$table-variants: (\n \"primary\": shift-color($primary, $table-bg-scale),\n \"secondary\": shift-color($secondary, $table-bg-scale),\n \"success\": shift-color($success, $table-bg-scale),\n \"info\": shift-color($info, $table-bg-scale),\n \"warning\": shift-color($warning, $table-bg-scale),\n \"danger\": shift-color($danger, $table-bg-scale),\n \"light\": $light,\n \"dark\": $dark,\n) !default;\n// scss-docs-end table-loop\n\n\n// Buttons + Forms\n//\n// Shared variables that are reassigned to `$input-` and `$btn-` specific variables.\n\n// scss-docs-start input-btn-variables\n$input-btn-padding-y: .375rem !default;\n$input-btn-padding-x: .75rem !default;\n$input-btn-font-family: null !default;\n$input-btn-font-size: $font-size-base !default;\n$input-btn-line-height: $line-height-base !default;\n\n$input-btn-focus-width: $focus-ring-width !default;\n$input-btn-focus-color-opacity: $focus-ring-opacity !default;\n$input-btn-focus-color: $focus-ring-color !default;\n$input-btn-focus-blur: $focus-ring-blur !default;\n$input-btn-focus-box-shadow: $focus-ring-box-shadow !default;\n\n$input-btn-padding-y-sm: .25rem !default;\n$input-btn-padding-x-sm: .5rem !default;\n$input-btn-font-size-sm: $font-size-sm !default;\n\n$input-btn-padding-y-lg: .5rem !default;\n$input-btn-padding-x-lg: 1rem !default;\n$input-btn-font-size-lg: $font-size-lg !default;\n\n$input-btn-border-width: var(--#{$prefix}border-width) !default;\n// scss-docs-end input-btn-variables\n\n\n// Buttons\n//\n// For each of Bootstrap's buttons, define text, background, and border color.\n\n// scss-docs-start btn-variables\n$btn-color: var(--#{$prefix}body-color) !default;\n$btn-padding-y: $input-btn-padding-y !default;\n$btn-padding-x: $input-btn-padding-x !default;\n$btn-font-family: $input-btn-font-family !default;\n$btn-font-size: $input-btn-font-size !default;\n$btn-line-height: $input-btn-line-height !default;\n$btn-white-space: null !default; // Set to `nowrap` to prevent text wrapping\n\n$btn-padding-y-sm: $input-btn-padding-y-sm !default;\n$btn-padding-x-sm: $input-btn-padding-x-sm !default;\n$btn-font-size-sm: $input-btn-font-size-sm !default;\n\n$btn-padding-y-lg: $input-btn-padding-y-lg !default;\n$btn-padding-x-lg: $input-btn-padding-x-lg !default;\n$btn-font-size-lg: $input-btn-font-size-lg !default;\n\n$btn-border-width: $input-btn-border-width !default;\n\n$btn-font-weight: $font-weight-normal !default;\n$btn-box-shadow: inset 0 1px 0 rgba($white, .15), 0 1px 1px rgba($black, .075) !default;\n$btn-focus-width: $input-btn-focus-width !default;\n$btn-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$btn-disabled-opacity: .65 !default;\n$btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;\n\n$btn-link-color: var(--#{$prefix}link-color) !default;\n$btn-link-hover-color: var(--#{$prefix}link-hover-color) !default;\n$btn-link-disabled-color: $gray-600 !default;\n$btn-link-focus-shadow-rgb: to-rgb(mix(color-contrast($link-color), $link-color, 15%)) !default;\n\n// Allows for customizing button radius independently from global border radius\n$btn-border-radius: var(--#{$prefix}border-radius) !default;\n$btn-border-radius-sm: var(--#{$prefix}border-radius-sm) !default;\n$btn-border-radius-lg: var(--#{$prefix}border-radius-lg) !default;\n\n$btn-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$btn-hover-bg-shade-amount: 15% !default;\n$btn-hover-bg-tint-amount: 15% !default;\n$btn-hover-border-shade-amount: 20% !default;\n$btn-hover-border-tint-amount: 10% !default;\n$btn-active-bg-shade-amount: 20% !default;\n$btn-active-bg-tint-amount: 20% !default;\n$btn-active-border-shade-amount: 25% !default;\n$btn-active-border-tint-amount: 10% !default;\n// scss-docs-end btn-variables\n\n\n// Forms\n\n// scss-docs-start form-text-variables\n$form-text-margin-top: .25rem !default;\n$form-text-font-size: $small-font-size !default;\n$form-text-font-style: null !default;\n$form-text-font-weight: null !default;\n$form-text-color: var(--#{$prefix}secondary-color) !default;\n// scss-docs-end form-text-variables\n\n// scss-docs-start form-label-variables\n$form-label-margin-bottom: .5rem !default;\n$form-label-font-size: null !default;\n$form-label-font-style: null !default;\n$form-label-font-weight: null !default;\n$form-label-color: null !default;\n// scss-docs-end form-label-variables\n\n// scss-docs-start form-input-variables\n$input-padding-y: $input-btn-padding-y !default;\n$input-padding-x: $input-btn-padding-x !default;\n$input-font-family: $input-btn-font-family !default;\n$input-font-size: $input-btn-font-size !default;\n$input-font-weight: $font-weight-base !default;\n$input-line-height: $input-btn-line-height !default;\n\n$input-padding-y-sm: $input-btn-padding-y-sm !default;\n$input-padding-x-sm: $input-btn-padding-x-sm !default;\n$input-font-size-sm: $input-btn-font-size-sm !default;\n\n$input-padding-y-lg: $input-btn-padding-y-lg !default;\n$input-padding-x-lg: $input-btn-padding-x-lg !default;\n$input-font-size-lg: $input-btn-font-size-lg !default;\n\n$input-bg: var(--#{$prefix}body-bg) !default;\n$input-disabled-color: null !default;\n$input-disabled-bg: var(--#{$prefix}secondary-bg) !default;\n$input-disabled-border-color: null !default;\n\n$input-color: var(--#{$prefix}body-color) !default;\n$input-border-color: var(--#{$prefix}border-color) !default;\n$input-border-width: $input-btn-border-width !default;\n$input-box-shadow: var(--#{$prefix}box-shadow-inset) !default;\n\n$input-border-radius: var(--#{$prefix}border-radius) !default;\n$input-border-radius-sm: var(--#{$prefix}border-radius-sm) !default;\n$input-border-radius-lg: var(--#{$prefix}border-radius-lg) !default;\n\n$input-focus-bg: $input-bg !default;\n$input-focus-border-color: tint-color($component-active-bg, 50%) !default;\n$input-focus-color: $input-color !default;\n$input-focus-width: $input-btn-focus-width !default;\n$input-focus-box-shadow: $input-btn-focus-box-shadow !default;\n\n$input-placeholder-color: var(--#{$prefix}secondary-color) !default;\n$input-plaintext-color: var(--#{$prefix}body-color) !default;\n\n$input-height-border: calc(#{$input-border-width} * 2) !default; // stylelint-disable-line function-disallowed-list\n\n$input-height-inner: add($input-line-height * 1em, $input-padding-y * 2) !default;\n$input-height-inner-half: add($input-line-height * .5em, $input-padding-y) !default;\n$input-height-inner-quarter: add($input-line-height * .25em, $input-padding-y * .5) !default;\n\n$input-height: add($input-line-height * 1em, add($input-padding-y * 2, $input-height-border, false)) !default;\n$input-height-sm: add($input-line-height * 1em, add($input-padding-y-sm * 2, $input-height-border, false)) !default;\n$input-height-lg: add($input-line-height * 1em, add($input-padding-y-lg * 2, $input-height-border, false)) !default;\n\n$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$form-color-width: 3rem !default;\n// scss-docs-end form-input-variables\n\n// scss-docs-start form-check-variables\n$form-check-input-width: 1em !default;\n$form-check-min-height: $font-size-base * $line-height-base !default;\n$form-check-padding-start: $form-check-input-width + .5em !default;\n$form-check-margin-bottom: .125rem !default;\n$form-check-label-color: null !default;\n$form-check-label-cursor: null !default;\n$form-check-transition: null !default;\n\n$form-check-input-active-filter: brightness(90%) !default;\n\n$form-check-input-bg: $input-bg !default;\n$form-check-input-border: var(--#{$prefix}border-width) solid var(--#{$prefix}border-color) !default;\n$form-check-input-border-radius: .25em !default;\n$form-check-radio-border-radius: 50% !default;\n$form-check-input-focus-border: $input-focus-border-color !default;\n$form-check-input-focus-box-shadow: $focus-ring-box-shadow !default;\n\n$form-check-input-checked-color: $component-active-color !default;\n$form-check-input-checked-bg-color: $component-active-bg !default;\n$form-check-input-checked-border-color: $form-check-input-checked-bg-color !default;\n$form-check-input-checked-bg-image: url(\"data:image/svg+xml,\") !default;\n$form-check-radio-checked-bg-image: url(\"data:image/svg+xml,\") !default;\n\n$form-check-input-indeterminate-color: $component-active-color !default;\n$form-check-input-indeterminate-bg-color: $component-active-bg !default;\n$form-check-input-indeterminate-border-color: $form-check-input-indeterminate-bg-color !default;\n$form-check-input-indeterminate-bg-image: url(\"data:image/svg+xml,\") !default;\n\n$form-check-input-disabled-opacity: .5 !default;\n$form-check-label-disabled-opacity: $form-check-input-disabled-opacity !default;\n$form-check-btn-check-disabled-opacity: $btn-disabled-opacity !default;\n\n$form-check-inline-margin-end: 1rem !default;\n// scss-docs-end form-check-variables\n\n// scss-docs-start form-switch-variables\n$form-switch-color: rgba($black, .25) !default;\n$form-switch-width: 2em !default;\n$form-switch-padding-start: $form-switch-width + .5em !default;\n$form-switch-bg-image: url(\"data:image/svg+xml,\") !default;\n$form-switch-border-radius: $form-switch-width !default;\n$form-switch-transition: background-position .15s ease-in-out !default;\n\n$form-switch-focus-color: $input-focus-border-color !default;\n$form-switch-focus-bg-image: url(\"data:image/svg+xml,\") !default;\n\n$form-switch-checked-color: $component-active-color !default;\n$form-switch-checked-bg-image: url(\"data:image/svg+xml,\") !default;\n$form-switch-checked-bg-position: right center !default;\n// scss-docs-end form-switch-variables\n\n// scss-docs-start input-group-variables\n$input-group-addon-padding-y: $input-padding-y !default;\n$input-group-addon-padding-x: $input-padding-x !default;\n$input-group-addon-font-weight: $input-font-weight !default;\n$input-group-addon-color: $input-color !default;\n$input-group-addon-bg: var(--#{$prefix}tertiary-bg) !default;\n$input-group-addon-border-color: $input-border-color !default;\n// scss-docs-end input-group-variables\n\n// scss-docs-start form-select-variables\n$form-select-padding-y: $input-padding-y !default;\n$form-select-padding-x: $input-padding-x !default;\n$form-select-font-family: $input-font-family !default;\n$form-select-font-size: $input-font-size !default;\n$form-select-indicator-padding: $form-select-padding-x * 3 !default; // Extra padding for background-image\n$form-select-font-weight: $input-font-weight !default;\n$form-select-line-height: $input-line-height !default;\n$form-select-color: $input-color !default;\n$form-select-bg: $input-bg !default;\n$form-select-disabled-color: null !default;\n$form-select-disabled-bg: $input-disabled-bg !default;\n$form-select-disabled-border-color: $input-disabled-border-color !default;\n$form-select-bg-position: right $form-select-padding-x center !default;\n$form-select-bg-size: 16px 12px !default; // In pixels because image dimensions\n$form-select-indicator-color: $gray-800 !default;\n$form-select-indicator: url(\"data:image/svg+xml,\") !default;\n\n$form-select-feedback-icon-padding-end: $form-select-padding-x * 2.5 + $form-select-indicator-padding !default;\n$form-select-feedback-icon-position: center right $form-select-indicator-padding !default;\n$form-select-feedback-icon-size: $input-height-inner-half $input-height-inner-half !default;\n\n$form-select-border-width: $input-border-width !default;\n$form-select-border-color: $input-border-color !default;\n$form-select-border-radius: $input-border-radius !default;\n$form-select-box-shadow: var(--#{$prefix}box-shadow-inset) !default;\n\n$form-select-focus-border-color: $input-focus-border-color !default;\n$form-select-focus-width: $input-focus-width !default;\n$form-select-focus-box-shadow: 0 0 0 $form-select-focus-width $input-btn-focus-color !default;\n\n$form-select-padding-y-sm: $input-padding-y-sm !default;\n$form-select-padding-x-sm: $input-padding-x-sm !default;\n$form-select-font-size-sm: $input-font-size-sm !default;\n$form-select-border-radius-sm: $input-border-radius-sm !default;\n\n$form-select-padding-y-lg: $input-padding-y-lg !default;\n$form-select-padding-x-lg: $input-padding-x-lg !default;\n$form-select-font-size-lg: $input-font-size-lg !default;\n$form-select-border-radius-lg: $input-border-radius-lg !default;\n\n$form-select-transition: $input-transition !default;\n// scss-docs-end form-select-variables\n\n// scss-docs-start form-range-variables\n$form-range-track-width: 100% !default;\n$form-range-track-height: .5rem !default;\n$form-range-track-cursor: pointer !default;\n$form-range-track-bg: var(--#{$prefix}secondary-bg) !default;\n$form-range-track-border-radius: 1rem !default;\n$form-range-track-box-shadow: var(--#{$prefix}box-shadow-inset) !default;\n\n$form-range-thumb-width: 1rem !default;\n$form-range-thumb-height: $form-range-thumb-width !default;\n$form-range-thumb-bg: $component-active-bg !default;\n$form-range-thumb-border: 0 !default;\n$form-range-thumb-border-radius: 1rem !default;\n$form-range-thumb-box-shadow: 0 .1rem .25rem rgba($black, .1) !default;\n$form-range-thumb-focus-box-shadow: 0 0 0 1px $body-bg, $input-focus-box-shadow !default;\n$form-range-thumb-focus-box-shadow-width: $input-focus-width !default; // For focus box shadow issue in Edge\n$form-range-thumb-active-bg: tint-color($component-active-bg, 70%) !default;\n$form-range-thumb-disabled-bg: var(--#{$prefix}secondary-color) !default;\n$form-range-thumb-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n// scss-docs-end form-range-variables\n\n// scss-docs-start form-file-variables\n$form-file-button-color: $input-color !default;\n$form-file-button-bg: var(--#{$prefix}tertiary-bg) !default;\n$form-file-button-hover-bg: var(--#{$prefix}secondary-bg) !default;\n// scss-docs-end form-file-variables\n\n// scss-docs-start form-floating-variables\n$form-floating-height: add(3.5rem, $input-height-border) !default;\n$form-floating-line-height: 1.25 !default;\n$form-floating-padding-x: $input-padding-x !default;\n$form-floating-padding-y: 1rem !default;\n$form-floating-input-padding-t: 1.625rem !default;\n$form-floating-input-padding-b: .625rem !default;\n$form-floating-label-height: 1.5em !default;\n$form-floating-label-opacity: .65 !default;\n$form-floating-label-transform: scale(.85) translateY(-.5rem) translateX(.15rem) !default;\n$form-floating-label-disabled-color: $gray-600 !default;\n$form-floating-transition: opacity .1s ease-in-out, transform .1s ease-in-out !default;\n// scss-docs-end form-floating-variables\n\n// Form validation\n\n// scss-docs-start form-feedback-variables\n$form-feedback-margin-top: $form-text-margin-top !default;\n$form-feedback-font-size: $form-text-font-size !default;\n$form-feedback-font-style: $form-text-font-style !default;\n$form-feedback-valid-color: $success !default;\n$form-feedback-invalid-color: $danger !default;\n\n$form-feedback-icon-valid-color: $form-feedback-valid-color !default;\n$form-feedback-icon-valid: url(\"data:image/svg+xml,\") !default;\n$form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;\n$form-feedback-icon-invalid: url(\"data:image/svg+xml,\") !default;\n// scss-docs-end form-feedback-variables\n\n// scss-docs-start form-validation-colors\n$form-valid-color: $form-feedback-valid-color !default;\n$form-valid-border-color: $form-feedback-valid-color !default;\n$form-invalid-color: $form-feedback-invalid-color !default;\n$form-invalid-border-color: $form-feedback-invalid-color !default;\n// scss-docs-end form-validation-colors\n\n// scss-docs-start form-validation-states\n$form-validation-states: (\n \"valid\": (\n \"color\": var(--#{$prefix}form-valid-color),\n \"icon\": $form-feedback-icon-valid,\n \"tooltip-color\": #fff,\n \"tooltip-bg-color\": var(--#{$prefix}success),\n \"focus-box-shadow\": 0 0 $input-btn-focus-blur $input-focus-width rgba(var(--#{$prefix}success-rgb), $input-btn-focus-color-opacity),\n \"border-color\": var(--#{$prefix}form-valid-border-color),\n ),\n \"invalid\": (\n \"color\": var(--#{$prefix}form-invalid-color),\n \"icon\": $form-feedback-icon-invalid,\n \"tooltip-color\": #fff,\n \"tooltip-bg-color\": var(--#{$prefix}danger),\n \"focus-box-shadow\": 0 0 $input-btn-focus-blur $input-focus-width rgba(var(--#{$prefix}danger-rgb), $input-btn-focus-color-opacity),\n \"border-color\": var(--#{$prefix}form-invalid-border-color),\n )\n) !default;\n// scss-docs-end form-validation-states\n\n// Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n\n// scss-docs-start zindex-stack\n$zindex-dropdown: 1000 !default;\n$zindex-sticky: 1020 !default;\n$zindex-fixed: 1030 !default;\n$zindex-offcanvas-backdrop: 1040 !default;\n$zindex-offcanvas: 1045 !default;\n$zindex-modal-backdrop: 1050 !default;\n$zindex-modal: 1055 !default;\n$zindex-popover: 1070 !default;\n$zindex-tooltip: 1080 !default;\n$zindex-toast: 1090 !default;\n// scss-docs-end zindex-stack\n\n// scss-docs-start zindex-levels-map\n$zindex-levels: (\n n1: -1,\n 0: 0,\n 1: 1,\n 2: 2,\n 3: 3\n) !default;\n// scss-docs-end zindex-levels-map\n\n\n// Navs\n\n// scss-docs-start nav-variables\n$nav-link-padding-y: .5rem !default;\n$nav-link-padding-x: 1rem !default;\n$nav-link-font-size: null !default;\n$nav-link-font-weight: null !default;\n$nav-link-color: var(--#{$prefix}link-color) !default;\n$nav-link-hover-color: var(--#{$prefix}link-hover-color) !default;\n$nav-link-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out !default;\n$nav-link-disabled-color: var(--#{$prefix}secondary-color) !default;\n$nav-link-focus-box-shadow: $focus-ring-box-shadow !default;\n\n$nav-tabs-border-color: var(--#{$prefix}border-color) !default;\n$nav-tabs-border-width: var(--#{$prefix}border-width) !default;\n$nav-tabs-border-radius: var(--#{$prefix}border-radius) !default;\n$nav-tabs-link-hover-border-color: var(--#{$prefix}secondary-bg) var(--#{$prefix}secondary-bg) $nav-tabs-border-color !default;\n$nav-tabs-link-active-color: var(--#{$prefix}emphasis-color) !default;\n$nav-tabs-link-active-bg: var(--#{$prefix}body-bg) !default;\n$nav-tabs-link-active-border-color: var(--#{$prefix}border-color) var(--#{$prefix}border-color) $nav-tabs-link-active-bg !default;\n\n$nav-pills-border-radius: var(--#{$prefix}border-radius) !default;\n$nav-pills-link-active-color: $component-active-color !default;\n$nav-pills-link-active-bg: $component-active-bg !default;\n\n$nav-underline-gap: 1rem !default;\n$nav-underline-border-width: .125rem !default;\n$nav-underline-link-active-color: var(--#{$prefix}emphasis-color) !default;\n// scss-docs-end nav-variables\n\n\n// Navbar\n\n// scss-docs-start navbar-variables\n$navbar-padding-y: $spacer * .5 !default;\n$navbar-padding-x: null !default;\n\n$navbar-nav-link-padding-x: .5rem !default;\n\n$navbar-brand-font-size: $font-size-lg !default;\n// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link\n$nav-link-height: $font-size-base * $line-height-base + $nav-link-padding-y * 2 !default;\n$navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;\n$navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) * .5 !default;\n$navbar-brand-margin-end: 1rem !default;\n\n$navbar-toggler-padding-y: .25rem !default;\n$navbar-toggler-padding-x: .75rem !default;\n$navbar-toggler-font-size: $font-size-lg !default;\n$navbar-toggler-border-radius: $btn-border-radius !default;\n$navbar-toggler-focus-width: $btn-focus-width !default;\n$navbar-toggler-transition: box-shadow .15s ease-in-out !default;\n\n$navbar-light-color: rgba(var(--#{$prefix}emphasis-color-rgb), .65) !default;\n$navbar-light-hover-color: rgba(var(--#{$prefix}emphasis-color-rgb), .8) !default;\n$navbar-light-active-color: rgba(var(--#{$prefix}emphasis-color-rgb), 1) !default;\n$navbar-light-disabled-color: rgba(var(--#{$prefix}emphasis-color-rgb), .3) !default;\n$navbar-light-icon-color: rgba($body-color, .75) !default;\n$navbar-light-toggler-icon-bg: url(\"data:image/svg+xml,\") !default;\n$navbar-light-toggler-border-color: rgba(var(--#{$prefix}emphasis-color-rgb), .15) !default;\n$navbar-light-brand-color: $navbar-light-active-color !default;\n$navbar-light-brand-hover-color: $navbar-light-active-color !default;\n// scss-docs-end navbar-variables\n\n// scss-docs-start navbar-dark-variables\n$navbar-dark-color: rgba($white, .55) !default;\n$navbar-dark-hover-color: rgba($white, .75) !default;\n$navbar-dark-active-color: $white !default;\n$navbar-dark-disabled-color: rgba($white, .25) !default;\n$navbar-dark-icon-color: $navbar-dark-color !default;\n$navbar-dark-toggler-icon-bg: url(\"data:image/svg+xml,\") !default;\n$navbar-dark-toggler-border-color: rgba($white, .1) !default;\n$navbar-dark-brand-color: $navbar-dark-active-color !default;\n$navbar-dark-brand-hover-color: $navbar-dark-active-color !default;\n// scss-docs-end navbar-dark-variables\n\n\n// Dropdowns\n//\n// Dropdown menu container and contents.\n\n// scss-docs-start dropdown-variables\n$dropdown-min-width: 10rem !default;\n$dropdown-padding-x: 0 !default;\n$dropdown-padding-y: .5rem !default;\n$dropdown-spacer: .125rem !default;\n$dropdown-font-size: $font-size-base !default;\n$dropdown-color: var(--#{$prefix}body-color) !default;\n$dropdown-bg: var(--#{$prefix}body-bg) !default;\n$dropdown-border-color: var(--#{$prefix}border-color-translucent) !default;\n$dropdown-border-radius: var(--#{$prefix}border-radius) !default;\n$dropdown-border-width: var(--#{$prefix}border-width) !default;\n$dropdown-inner-border-radius: calc(#{$dropdown-border-radius} - #{$dropdown-border-width}) !default; // stylelint-disable-line function-disallowed-list\n$dropdown-divider-bg: $dropdown-border-color !default;\n$dropdown-divider-margin-y: $spacer * .5 !default;\n$dropdown-box-shadow: var(--#{$prefix}box-shadow) !default;\n\n$dropdown-link-color: var(--#{$prefix}body-color) !default;\n$dropdown-link-hover-color: $dropdown-link-color !default;\n$dropdown-link-hover-bg: var(--#{$prefix}tertiary-bg) !default;\n\n$dropdown-link-active-color: $component-active-color !default;\n$dropdown-link-active-bg: $component-active-bg !default;\n\n$dropdown-link-disabled-color: var(--#{$prefix}tertiary-color) !default;\n\n$dropdown-item-padding-y: $spacer * .25 !default;\n$dropdown-item-padding-x: $spacer !default;\n\n$dropdown-header-color: $gray-600 !default;\n$dropdown-header-padding-x: $dropdown-item-padding-x !default;\n$dropdown-header-padding-y: $dropdown-padding-y !default;\n// fusv-disable\n$dropdown-header-padding: $dropdown-header-padding-y $dropdown-header-padding-x !default; // Deprecated in v5.2.0\n// fusv-enable\n// scss-docs-end dropdown-variables\n\n// scss-docs-start dropdown-dark-variables\n$dropdown-dark-color: $gray-300 !default;\n$dropdown-dark-bg: $gray-800 !default;\n$dropdown-dark-border-color: $dropdown-border-color !default;\n$dropdown-dark-divider-bg: $dropdown-divider-bg !default;\n$dropdown-dark-box-shadow: null !default;\n$dropdown-dark-link-color: $dropdown-dark-color !default;\n$dropdown-dark-link-hover-color: $white !default;\n$dropdown-dark-link-hover-bg: rgba($white, .15) !default;\n$dropdown-dark-link-active-color: $dropdown-link-active-color !default;\n$dropdown-dark-link-active-bg: $dropdown-link-active-bg !default;\n$dropdown-dark-link-disabled-color: $gray-500 !default;\n$dropdown-dark-header-color: $gray-500 !default;\n// scss-docs-end dropdown-dark-variables\n\n\n// Pagination\n\n// scss-docs-start pagination-variables\n$pagination-padding-y: .375rem !default;\n$pagination-padding-x: .75rem !default;\n$pagination-padding-y-sm: .25rem !default;\n$pagination-padding-x-sm: .5rem !default;\n$pagination-padding-y-lg: .75rem !default;\n$pagination-padding-x-lg: 1.5rem !default;\n\n$pagination-font-size: $font-size-base !default;\n\n$pagination-color: var(--#{$prefix}link-color) !default;\n$pagination-bg: var(--#{$prefix}body-bg) !default;\n$pagination-border-radius: var(--#{$prefix}border-radius) !default;\n$pagination-border-width: var(--#{$prefix}border-width) !default;\n$pagination-margin-start: calc(#{$pagination-border-width} * -1) !default; // stylelint-disable-line function-disallowed-list\n$pagination-border-color: var(--#{$prefix}border-color) !default;\n\n$pagination-focus-color: var(--#{$prefix}link-hover-color) !default;\n$pagination-focus-bg: var(--#{$prefix}secondary-bg) !default;\n$pagination-focus-box-shadow: $focus-ring-box-shadow !default;\n$pagination-focus-outline: 0 !default;\n\n$pagination-hover-color: var(--#{$prefix}link-hover-color) !default;\n$pagination-hover-bg: var(--#{$prefix}tertiary-bg) !default;\n$pagination-hover-border-color: var(--#{$prefix}border-color) !default; // Todo in v6: remove this?\n\n$pagination-active-color: $component-active-color !default;\n$pagination-active-bg: $component-active-bg !default;\n$pagination-active-border-color: $component-active-bg !default;\n\n$pagination-disabled-color: var(--#{$prefix}secondary-color) !default;\n$pagination-disabled-bg: var(--#{$prefix}secondary-bg) !default;\n$pagination-disabled-border-color: var(--#{$prefix}border-color) !default;\n\n$pagination-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$pagination-border-radius-sm: var(--#{$prefix}border-radius-sm) !default;\n$pagination-border-radius-lg: var(--#{$prefix}border-radius-lg) !default;\n// scss-docs-end pagination-variables\n\n\n// Placeholders\n\n// scss-docs-start placeholders\n$placeholder-opacity-max: .5 !default;\n$placeholder-opacity-min: .2 !default;\n// scss-docs-end placeholders\n\n// Cards\n\n// scss-docs-start card-variables\n$card-spacer-y: $spacer !default;\n$card-spacer-x: $spacer !default;\n$card-title-spacer-y: $spacer * .5 !default;\n$card-title-color: null !default;\n$card-subtitle-color: null !default;\n$card-border-width: var(--#{$prefix}border-width) !default;\n$card-border-color: var(--#{$prefix}border-color-translucent) !default;\n$card-border-radius: var(--#{$prefix}border-radius) !default;\n$card-box-shadow: null !default;\n$card-inner-border-radius: subtract($card-border-radius, $card-border-width) !default;\n$card-cap-padding-y: $card-spacer-y * .5 !default;\n$card-cap-padding-x: $card-spacer-x !default;\n$card-cap-bg: rgba(var(--#{$prefix}body-color-rgb), .03) !default;\n$card-cap-color: null !default;\n$card-height: null !default;\n$card-color: null !default;\n$card-bg: var(--#{$prefix}body-bg) !default;\n$card-img-overlay-padding: $spacer !default;\n$card-group-margin: $grid-gutter-width * .5 !default;\n// scss-docs-end card-variables\n\n// Accordion\n\n// scss-docs-start accordion-variables\n$accordion-padding-y: 1rem !default;\n$accordion-padding-x: 1.25rem !default;\n$accordion-color: var(--#{$prefix}body-color) !default;\n$accordion-bg: var(--#{$prefix}body-bg) !default;\n$accordion-border-width: var(--#{$prefix}border-width) !default;\n$accordion-border-color: var(--#{$prefix}border-color) !default;\n$accordion-border-radius: var(--#{$prefix}border-radius) !default;\n$accordion-inner-border-radius: subtract($accordion-border-radius, $accordion-border-width) !default;\n\n$accordion-body-padding-y: $accordion-padding-y !default;\n$accordion-body-padding-x: $accordion-padding-x !default;\n\n$accordion-button-padding-y: $accordion-padding-y !default;\n$accordion-button-padding-x: $accordion-padding-x !default;\n$accordion-button-color: var(--#{$prefix}body-color) !default;\n$accordion-button-bg: var(--#{$prefix}accordion-bg) !default;\n$accordion-transition: $btn-transition, border-radius .15s ease !default;\n$accordion-button-active-bg: var(--#{$prefix}primary-bg-subtle) !default;\n$accordion-button-active-color: var(--#{$prefix}primary-text-emphasis) !default;\n\n$accordion-button-focus-border-color: $input-focus-border-color !default;\n$accordion-button-focus-box-shadow: $btn-focus-box-shadow !default;\n\n$accordion-icon-width: 1.25rem !default;\n$accordion-icon-color: $body-color !default;\n$accordion-icon-active-color: $primary-text-emphasis !default;\n$accordion-icon-transition: transform .2s ease-in-out !default;\n$accordion-icon-transform: rotate(-180deg) !default;\n\n$accordion-button-icon: url(\"data:image/svg+xml,\") !default;\n$accordion-button-active-icon: url(\"data:image/svg+xml,\") !default;\n// scss-docs-end accordion-variables\n\n// Tooltips\n\n// scss-docs-start tooltip-variables\n$tooltip-font-size: $font-size-sm !default;\n$tooltip-max-width: 200px !default;\n$tooltip-color: var(--#{$prefix}body-bg) !default;\n$tooltip-bg: var(--#{$prefix}emphasis-color) !default;\n$tooltip-border-radius: var(--#{$prefix}border-radius) !default;\n$tooltip-opacity: .9 !default;\n$tooltip-padding-y: $spacer * .25 !default;\n$tooltip-padding-x: $spacer * .5 !default;\n$tooltip-margin: null !default; // TODO: remove this in v6\n\n$tooltip-arrow-width: .8rem !default;\n$tooltip-arrow-height: .4rem !default;\n// fusv-disable\n$tooltip-arrow-color: null !default; // Deprecated in Bootstrap 5.2.0 for CSS variables\n// fusv-enable\n// scss-docs-end tooltip-variables\n\n// Form tooltips must come after regular tooltips\n// scss-docs-start tooltip-feedback-variables\n$form-feedback-tooltip-padding-y: $tooltip-padding-y !default;\n$form-feedback-tooltip-padding-x: $tooltip-padding-x !default;\n$form-feedback-tooltip-font-size: $tooltip-font-size !default;\n$form-feedback-tooltip-line-height: null !default;\n$form-feedback-tooltip-opacity: $tooltip-opacity !default;\n$form-feedback-tooltip-border-radius: $tooltip-border-radius !default;\n// scss-docs-end tooltip-feedback-variables\n\n\n// Popovers\n\n// scss-docs-start popover-variables\n$popover-font-size: $font-size-sm !default;\n$popover-bg: var(--#{$prefix}body-bg) !default;\n$popover-max-width: 276px !default;\n$popover-border-width: var(--#{$prefix}border-width) !default;\n$popover-border-color: var(--#{$prefix}border-color-translucent) !default;\n$popover-border-radius: var(--#{$prefix}border-radius-lg) !default;\n$popover-inner-border-radius: calc(#{$popover-border-radius} - #{$popover-border-width}) !default; // stylelint-disable-line function-disallowed-list\n$popover-box-shadow: var(--#{$prefix}box-shadow) !default;\n\n$popover-header-font-size: $font-size-base !default;\n$popover-header-bg: var(--#{$prefix}secondary-bg) !default;\n$popover-header-color: $headings-color !default;\n$popover-header-padding-y: .5rem !default;\n$popover-header-padding-x: $spacer !default;\n\n$popover-body-color: var(--#{$prefix}body-color) !default;\n$popover-body-padding-y: $spacer !default;\n$popover-body-padding-x: $spacer !default;\n\n$popover-arrow-width: 1rem !default;\n$popover-arrow-height: .5rem !default;\n// scss-docs-end popover-variables\n\n// fusv-disable\n// Deprecated in Bootstrap 5.2.0 for CSS variables\n$popover-arrow-color: $popover-bg !default;\n$popover-arrow-outer-color: var(--#{$prefix}border-color-translucent) !default;\n// fusv-enable\n\n\n// Toasts\n\n// scss-docs-start toast-variables\n$toast-max-width: 350px !default;\n$toast-padding-x: .75rem !default;\n$toast-padding-y: .5rem !default;\n$toast-font-size: .875rem !default;\n$toast-color: null !default;\n$toast-background-color: rgba(var(--#{$prefix}body-bg-rgb), .85) !default;\n$toast-border-width: var(--#{$prefix}border-width) !default;\n$toast-border-color: var(--#{$prefix}border-color-translucent) !default;\n$toast-border-radius: var(--#{$prefix}border-radius) !default;\n$toast-box-shadow: var(--#{$prefix}box-shadow) !default;\n$toast-spacing: $container-padding-x !default;\n\n$toast-header-color: var(--#{$prefix}secondary-color) !default;\n$toast-header-background-color: rgba(var(--#{$prefix}body-bg-rgb), .85) !default;\n$toast-header-border-color: $toast-border-color !default;\n// scss-docs-end toast-variables\n\n\n// Badges\n\n// scss-docs-start badge-variables\n$badge-font-size: .75em !default;\n$badge-font-weight: $font-weight-bold !default;\n$badge-color: $white !default;\n$badge-padding-y: .35em !default;\n$badge-padding-x: .65em !default;\n$badge-border-radius: var(--#{$prefix}border-radius) !default;\n// scss-docs-end badge-variables\n\n\n// Modals\n\n// scss-docs-start modal-variables\n$modal-inner-padding: $spacer !default;\n\n$modal-footer-margin-between: .5rem !default;\n\n$modal-dialog-margin: .5rem !default;\n$modal-dialog-margin-y-sm-up: 1.75rem !default;\n\n$modal-title-line-height: $line-height-base !default;\n\n$modal-content-color: null !default;\n$modal-content-bg: var(--#{$prefix}body-bg) !default;\n$modal-content-border-color: var(--#{$prefix}border-color-translucent) !default;\n$modal-content-border-width: var(--#{$prefix}border-width) !default;\n$modal-content-border-radius: var(--#{$prefix}border-radius-lg) !default;\n$modal-content-inner-border-radius: subtract($modal-content-border-radius, $modal-content-border-width) !default;\n$modal-content-box-shadow-xs: var(--#{$prefix}box-shadow-sm) !default;\n$modal-content-box-shadow-sm-up: var(--#{$prefix}box-shadow) !default;\n\n$modal-backdrop-bg: $black !default;\n$modal-backdrop-opacity: .5 !default;\n\n$modal-header-border-color: var(--#{$prefix}border-color) !default;\n$modal-header-border-width: $modal-content-border-width !default;\n$modal-header-padding-y: $modal-inner-padding !default;\n$modal-header-padding-x: $modal-inner-padding !default;\n$modal-header-padding: $modal-header-padding-y $modal-header-padding-x !default; // Keep this for backwards compatibility\n\n$modal-footer-bg: null !default;\n$modal-footer-border-color: $modal-header-border-color !default;\n$modal-footer-border-width: $modal-header-border-width !default;\n\n$modal-sm: 300px !default;\n$modal-md: 500px !default;\n$modal-lg: 800px !default;\n$modal-xl: 1140px !default;\n\n$modal-fade-transform: translate(0, -50px) !default;\n$modal-show-transform: none !default;\n$modal-transition: transform .3s ease-out !default;\n$modal-scale-transform: scale(1.02) !default;\n// scss-docs-end modal-variables\n\n\n// Alerts\n//\n// Define alert colors, border radius, and padding.\n\n// scss-docs-start alert-variables\n$alert-padding-y: $spacer !default;\n$alert-padding-x: $spacer !default;\n$alert-margin-bottom: 1rem !default;\n$alert-border-radius: var(--#{$prefix}border-radius) !default;\n$alert-link-font-weight: $font-weight-bold !default;\n$alert-border-width: var(--#{$prefix}border-width) !default;\n$alert-dismissible-padding-r: $alert-padding-x * 3 !default; // 3x covers width of x plus default padding on either side\n// scss-docs-end alert-variables\n\n// fusv-disable\n$alert-bg-scale: -80% !default; // Deprecated in v5.2.0, to be removed in v6\n$alert-border-scale: -70% !default; // Deprecated in v5.2.0, to be removed in v6\n$alert-color-scale: 40% !default; // Deprecated in v5.2.0, to be removed in v6\n// fusv-enable\n\n// Progress bars\n\n// scss-docs-start progress-variables\n$progress-height: 1rem !default;\n$progress-font-size: $font-size-base * .75 !default;\n$progress-bg: var(--#{$prefix}secondary-bg) !default;\n$progress-border-radius: var(--#{$prefix}border-radius) !default;\n$progress-box-shadow: var(--#{$prefix}box-shadow-inset) !default;\n$progress-bar-color: $white !default;\n$progress-bar-bg: $primary !default;\n$progress-bar-animation-timing: 1s linear infinite !default;\n$progress-bar-transition: width .6s ease !default;\n// scss-docs-end progress-variables\n\n\n// List group\n\n// scss-docs-start list-group-variables\n$list-group-color: var(--#{$prefix}body-color) !default;\n$list-group-bg: var(--#{$prefix}body-bg) !default;\n$list-group-border-color: var(--#{$prefix}border-color) !default;\n$list-group-border-width: var(--#{$prefix}border-width) !default;\n$list-group-border-radius: var(--#{$prefix}border-radius) !default;\n\n$list-group-item-padding-y: $spacer * .5 !default;\n$list-group-item-padding-x: $spacer !default;\n// fusv-disable\n$list-group-item-bg-scale: -80% !default; // Deprecated in v5.3.0\n$list-group-item-color-scale: 40% !default; // Deprecated in v5.3.0\n// fusv-enable\n\n$list-group-hover-bg: var(--#{$prefix}tertiary-bg) !default;\n$list-group-active-color: $component-active-color !default;\n$list-group-active-bg: $component-active-bg !default;\n$list-group-active-border-color: $list-group-active-bg !default;\n\n$list-group-disabled-color: var(--#{$prefix}secondary-color) !default;\n$list-group-disabled-bg: $list-group-bg !default;\n\n$list-group-action-color: var(--#{$prefix}secondary-color) !default;\n$list-group-action-hover-color: var(--#{$prefix}emphasis-color) !default;\n\n$list-group-action-active-color: var(--#{$prefix}body-color) !default;\n$list-group-action-active-bg: var(--#{$prefix}secondary-bg) !default;\n// scss-docs-end list-group-variables\n\n\n// Image thumbnails\n\n// scss-docs-start thumbnail-variables\n$thumbnail-padding: .25rem !default;\n$thumbnail-bg: var(--#{$prefix}body-bg) !default;\n$thumbnail-border-width: var(--#{$prefix}border-width) !default;\n$thumbnail-border-color: var(--#{$prefix}border-color) !default;\n$thumbnail-border-radius: var(--#{$prefix}border-radius) !default;\n$thumbnail-box-shadow: var(--#{$prefix}box-shadow-sm) !default;\n// scss-docs-end thumbnail-variables\n\n\n// Figures\n\n// scss-docs-start figure-variables\n$figure-caption-font-size: $small-font-size !default;\n$figure-caption-color: var(--#{$prefix}secondary-color) !default;\n// scss-docs-end figure-variables\n\n\n// Breadcrumbs\n\n// scss-docs-start breadcrumb-variables\n$breadcrumb-font-size: null !default;\n$breadcrumb-padding-y: 0 !default;\n$breadcrumb-padding-x: 0 !default;\n$breadcrumb-item-padding-x: .5rem !default;\n$breadcrumb-margin-bottom: 1rem !default;\n$breadcrumb-bg: null !default;\n$breadcrumb-divider-color: var(--#{$prefix}secondary-color) !default;\n$breadcrumb-active-color: var(--#{$prefix}secondary-color) !default;\n$breadcrumb-divider: quote(\"/\") !default;\n$breadcrumb-divider-flipped: $breadcrumb-divider !default;\n$breadcrumb-border-radius: null !default;\n// scss-docs-end breadcrumb-variables\n\n// Carousel\n\n// scss-docs-start carousel-variables\n$carousel-control-color: $white !default;\n$carousel-control-width: 15% !default;\n$carousel-control-opacity: .5 !default;\n$carousel-control-hover-opacity: .9 !default;\n$carousel-control-transition: opacity .15s ease !default;\n\n$carousel-indicator-width: 30px !default;\n$carousel-indicator-height: 3px !default;\n$carousel-indicator-hit-area-height: 10px !default;\n$carousel-indicator-spacer: 3px !default;\n$carousel-indicator-opacity: .5 !default;\n$carousel-indicator-active-bg: $white !default;\n$carousel-indicator-active-opacity: 1 !default;\n$carousel-indicator-transition: opacity .6s ease !default;\n\n$carousel-caption-width: 70% !default;\n$carousel-caption-color: $white !default;\n$carousel-caption-padding-y: 1.25rem !default;\n$carousel-caption-spacer: 1.25rem !default;\n\n$carousel-control-icon-width: 2rem !default;\n\n$carousel-control-prev-icon-bg: url(\"data:image/svg+xml,\") !default;\n$carousel-control-next-icon-bg: url(\"data:image/svg+xml,\") !default;\n\n$carousel-transition-duration: .6s !default;\n$carousel-transition: transform $carousel-transition-duration ease-in-out !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)\n// scss-docs-end carousel-variables\n\n// scss-docs-start carousel-dark-variables\n$carousel-dark-indicator-active-bg: $black !default;\n$carousel-dark-caption-color: $black !default;\n$carousel-dark-control-icon-filter: invert(1) grayscale(100) !default;\n// scss-docs-end carousel-dark-variables\n\n\n// Spinners\n\n// scss-docs-start spinner-variables\n$spinner-width: 2rem !default;\n$spinner-height: $spinner-width !default;\n$spinner-vertical-align: -.125em !default;\n$spinner-border-width: .25em !default;\n$spinner-animation-speed: .75s !default;\n\n$spinner-width-sm: 1rem !default;\n$spinner-height-sm: $spinner-width-sm !default;\n$spinner-border-width-sm: .2em !default;\n// scss-docs-end spinner-variables\n\n\n// Close\n\n// scss-docs-start close-variables\n$btn-close-width: 1em !default;\n$btn-close-height: $btn-close-width !default;\n$btn-close-padding-x: .25em !default;\n$btn-close-padding-y: $btn-close-padding-x !default;\n$btn-close-color: $black !default;\n$btn-close-bg: url(\"data:image/svg+xml,\") !default;\n$btn-close-focus-shadow: $focus-ring-box-shadow !default;\n$btn-close-opacity: .5 !default;\n$btn-close-hover-opacity: .75 !default;\n$btn-close-focus-opacity: 1 !default;\n$btn-close-disabled-opacity: .25 !default;\n$btn-close-white-filter: invert(1) grayscale(100%) brightness(200%) !default;\n// scss-docs-end close-variables\n\n\n// Offcanvas\n\n// scss-docs-start offcanvas-variables\n$offcanvas-padding-y: $modal-inner-padding !default;\n$offcanvas-padding-x: $modal-inner-padding !default;\n$offcanvas-horizontal-width: 400px !default;\n$offcanvas-vertical-height: 30vh !default;\n$offcanvas-transition-duration: .3s !default;\n$offcanvas-border-color: $modal-content-border-color !default;\n$offcanvas-border-width: $modal-content-border-width !default;\n$offcanvas-title-line-height: $modal-title-line-height !default;\n$offcanvas-bg-color: var(--#{$prefix}body-bg) !default;\n$offcanvas-color: var(--#{$prefix}body-color) !default;\n$offcanvas-box-shadow: $modal-content-box-shadow-xs !default;\n$offcanvas-backdrop-bg: $modal-backdrop-bg !default;\n$offcanvas-backdrop-opacity: $modal-backdrop-opacity !default;\n// scss-docs-end offcanvas-variables\n\n// Code\n\n$code-font-size: $small-font-size !default;\n$code-color: $pink !default;\n\n$kbd-padding-y: .1875rem !default;\n$kbd-padding-x: .375rem !default;\n$kbd-font-size: $code-font-size !default;\n$kbd-color: var(--#{$prefix}body-bg) !default;\n$kbd-bg: var(--#{$prefix}body-color) !default;\n$nested-kbd-font-weight: null !default; // Deprecated in v5.2.0, removing in v6\n\n$pre-color: null !default;\n","/***\n * Rules for the UX/UI of skip navigation link btn. \n *It's only visible to people\n * navigating with keyboard for accessibility purposes\n * ref: https://www.youtube.com/watch?v=VUR0I5mqq7I\n ***/\n\n.skip-link {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n text-align: center;\n background-color: var(--pst-color-warning);\n // Ensure we are using a WCAG conformant colour\n color: var(--pst-color-warning-text) !important;\n padding: 0.5rem;\n z-index: $zindex-modal;\n border-bottom: 1px solid var(--pst-color-border);\n\n // This shows / hides the button\n transform: translateY(-100%);\n transition: transform 150ms ease-in-out;\n &:focus {\n transform: translateY(0%);\n // ensure this is visible\n outline: 3px solid $foundation-black;\n }\n}\n",".bd-container {\n flex-grow: 1;\n display: flex;\n justify-content: center;\n\n .bd-container__inner {\n display: flex;\n }\n}\n\n.bd-page-width {\n width: 100%;\n @include media-breakpoint-up(lg) {\n max-width: $breakpoint-page-width;\n }\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl xxl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @if not $n {\n @error \"breakpoint `#{$name}` not found in `#{$breakpoints}`\";\n }\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $next: breakpoint-next($name, $breakpoints);\n $max: breakpoint-max($next, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($next, $breakpoints) {\n @content;\n }\n }\n}\n",".bd-header-version-warning,\n.bd-header-announcement {\n min-height: 3rem;\n width: 100%;\n display: flex;\n position: relative;\n align-items: center;\n justify-content: center;\n text-align: center;\n padding: 0.5rem 12.5%; // Horizontal padding so the width is 75%\n // One breakpoint less than $breakpoint-sidebar-primary. See variables/_layout.scss for more info.\n @include media-breakpoint-down(lg) {\n // Announcements can take a bit more width on mobile\n padding: 0.5rem 2%;\n }\n\n p {\n font-weight: bold;\n margin: 0;\n }\n\n &:after {\n position: absolute;\n width: 100%;\n height: 100%;\n left: 0;\n top: 0;\n content: \"\";\n z-index: -1; // So it doesn't hover over the content\n }\n\n &:empty {\n display: none;\n }\n\n // Ensure there is enough contrast against the background\n a {\n color: var(--pst-color-inline-code-links);\n }\n}\n\n// Bg color is now defined in the theme color palette - using our secondary color\n.bd-header-announcement {\n &:after {\n background-color: var(--pst-color-secondary-bg);\n }\n}\n\n.bd-header-version-warning {\n &:after {\n background-color: var(--pst-color-danger-bg);\n }\n}\n","/**\n * Main content area\n */\n.bd-main {\n flex-grow: 1;\n flex-direction: column;\n display: flex;\n min-width: 0;\n\n .bd-content {\n display: flex;\n justify-content: center;\n height: 100%;\n .bd-article-container {\n justify-content: start;\n display: flex;\n flex-direction: column;\n // Max-width is slightly more than the W3 since our docs often have images.\n // We shoot for about 100 characters per line instead of 80.\n // ref: https://www.w3.org/WAI/tutorials/page-structure/styling/#line-length\n width: 100%;\n max-width: 60em;\n overflow-x: auto; // Prevent wide content from pushing off the secondary sidebar\n padding: 1rem;\n .bd-article {\n // Give a bit more verticle spacing on wide screens\n @include media-breakpoint-up($breakpoint-sidebar-secondary) {\n padding-top: 1.5rem;\n padding-left: 2rem;\n }\n }\n }\n }\n}\n",".bd-footer {\n width: 100%;\n border-top: 1px solid var(--pst-color-border);\n\n .bd-footer__inner {\n display: flex;\n flex-grow: 1;\n padding: 1rem;\n margin: auto;\n }\n\n .footer-items__start,\n .footer-items__center,\n .footer-items__end {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n justify-content: center;\n flex-grow: 1;\n }\n\n .footer-items__center {\n text-align: center;\n }\n\n .footer-items__end {\n text-align: end;\n }\n\n // So that paragraphs don't take up extra room\n .footer-item p {\n margin-bottom: 0;\n }\n}\n",".bd-footer-article {\n margin-top: auto;\n\n .footer-article-items {\n display: flex;\n flex-direction: column;\n }\n}\n",".bd-footer-content {\n .footer-content-items {\n display: flex;\n flex-direction: column;\n margin-top: auto;\n }\n}\n","/**\n * Header at the top of the page\n * It includes the announcement bar and the navigation bar.\n */\n\n// Styling for the Icon links can be found in components/_icon-links.scss\n\n// If we want the shadow to only point downward in the future, set\n// box-shadow to: 0 0.125rem 0.25rem -0.125rem rgba(0, 0, 0, 0.11);\n.bd-header {\n position: sticky;\n top: 0;\n z-index: $zindex-fixed;\n\n // Overrides bootstrap\n background: var(--pst-color-on-background) !important;\n box-shadow: 0 0.125rem 0.25rem 0 var(--pst-color-shadow);\n\n width: 100%;\n padding: 0;\n max-width: 100vw;\n justify-content: center;\n .bd-header__inner {\n display: flex;\n align-items: center;\n height: fit-content;\n padding-left: 1rem;\n padding-right: 1rem;\n }\n\n // These items will define the height of the header\n .navbar-item {\n height: var(--pst-header-height);\n max-height: var(--pst-header-height);\n display: flex;\n align-items: center;\n }\n\n // Hide the header items on mobile\n .navbar-header-items {\n display: none;\n flex-shrink: 1;\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n display: flex;\n flex-grow: 1;\n padding: 0 0 0 0.5rem;\n }\n }\n\n .navbar-header-items__end,\n .navbar-header-items__center,\n .navbar-header-items__start {\n display: flex;\n align-items: center;\n flex-flow: wrap;\n // In case we wrap our items to multiple rows on small screens\n row-gap: 0;\n }\n\n .navbar-header-items__end,\n .navbar-header-items__center {\n column-gap: 1rem;\n }\n\n // A little smaller because this is displayed by default on mobile\n .navbar-header-items__start {\n flex-shrink: 0;\n margin-right: auto;\n gap: 0.5rem;\n }\n\n .navbar-header-items__end {\n // End navbar items should snap to the right\n justify-content: end;\n }\n\n // Contains the navigation links within the navbar\n .navbar-nav {\n display: flex;\n\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n // Center align on wide screens so the dropdown button is centered properly\n align-items: center;\n }\n\n li a.nav-link {\n @include link-style-text;\n }\n\n // Current page is always underlined in the navbar\n > .current > .nav-link {\n @include link-navbar-current;\n }\n\n // Dropdowns for the extra links\n .dropdown {\n button {\n display: unset;\n color: var(--pst-color-text-muted);\n border: none;\n @include link-style-hover;\n @include focus-indicator;\n }\n\n .dropdown-menu {\n z-index: $zindex-popover;\n border: 1px solid var(--pst-color-border);\n box-shadow: 0 0 0.3rem 0.1rem var(--pst-color-shadow);\n background-color: var(--pst-color-on-background);\n padding: 0.5rem 0;\n margin: 0.5rem 0;\n min-width: 20rem;\n\n .dropdown-item {\n // Give the items in the dropdown some breathing room but let the hit\n // and hover area of the items extend to the edges of the menu\n padding: 0.25rem 1.5rem;\n\n // Override Bootstrap\n &:focus:not(:hover):not(:active) {\n background-color: inherit;\n }\n }\n\n // Hide the menu unless show has been clicked\n &:not(.show) {\n display: none;\n }\n }\n }\n }\n}\n\n// inline the element in the navbar as long as they fit and use display block when collapsing\n@include media-breakpoint-up($breakpoint-sidebar-primary) {\n .navbar-center-items .navbar-item {\n display: inline-block;\n }\n}\n\n.nav-link {\n @include link-style-hover;\n\n // Override Bootstrap\n transition: none;\n\n &.nav-external:after {\n font: var(--fa-font-solid);\n content: var(--pst-icon-external-link);\n font-size: 0.75em;\n margin-left: 0.3em;\n }\n}\n\n.bd-navbar-elements li.nav-item i {\n font-size: 0.7rem;\n padding-left: 2px;\n vertical-align: middle;\n}\n\n/**\n * Showing and hiding the sidebar toggle buttons and header items\n */\n\n// Hide the header items on mobile\n.bd-header {\n // Toggle labels\n label {\n &.sidebar-toggle {\n display: flex;\n cursor: pointer;\n font-size: var(--pst-font-size-icon);\n align-items: center;\n color: var(--pst-color-muted);\n margin-bottom: 0;\n padding-bottom: 0.25rem;\n }\n\n &.primary-toggle {\n margin-right: 1rem;\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n display: none;\n }\n }\n\n &.secondary-toggle {\n margin-left: 1rem;\n @include media-breakpoint-up($breakpoint-sidebar-secondary) {\n display: none;\n }\n }\n @include icon-navbar-hover;\n @include focus-indicator;\n }\n\n // Hide the navbar header items on mobile because they're in the sidebar\n .navbar-header-items {\n display: none;\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n display: inherit;\n }\n }\n}\n\n// THe elements next to the hamburger menu only show on narrow screens\n.navbar-persistent--mobile {\n margin-left: auto;\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n display: none;\n }\n}\n\n// The navbar-persistent content should only show on wide screens\n.navbar-persistent--container {\n display: none;\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n display: flex;\n }\n}\n",".header-article__inner {\n display: flex;\n padding: 0 0.5rem;\n\n // The items define the height so that it disappears if there are no items\n .header-article-item {\n min-height: var(--pst-header-article-height);\n height: var(--pst-header-article-height);\n }\n\n .header-article-items__start,\n .header-article-items__end {\n display: flex;\n align-items: start;\n gap: 0.5rem;\n }\n\n .header-article-items__end {\n margin-left: auto;\n }\n}\n","/**\n * The primary sidebar on the left.\n * e.g., between-pages navigation.\n */\n\n.bd-sidebar-primary {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n max-height: calc(100vh - var(--pst-header-height));\n position: sticky;\n top: var(--pst-header-height);\n @include make-col(3);\n\n // Borders padding and whitespace\n padding: 2rem 1rem 1rem 1rem;\n border-right: 1px solid var(--pst-color-border);\n background-color: var(--pst-color-background);\n overflow-y: auto;\n\n font-size: var(--pst-sidebar-font-size-mobile);\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n font-size: var(--pst-sidebar-font-size);\n }\n\n // override bootstrap when navlink are displayed in the sidebar\n .nav-link {\n font-size: var(--pst-sidebar-font-size-mobile);\n }\n\n &.no-sidebar {\n border-right: 0;\n }\n\n &.hide-on-wide {\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n display: none;\n }\n }\n\n // Headers shouldn't be colored in the sidebars and some extensions add headers\n h1,\n h2,\n h3,\n h4 {\n color: var(--pst-color-text-base);\n }\n\n .sidebar-primary-items__start,\n .sidebar-primary-items__end {\n .sidebar-primary-item {\n padding: 0.5rem 0;\n }\n }\n\n // Hide the sidebar header items on widescreen since they are visible in the header\n .sidebar-header-items {\n display: flex;\n flex-direction: column;\n\n .sidebar-header-items__title {\n font-weight: var(--pst-sidebar-header-font-weight);\n font-size: var(--pst-sidebar-header-font-size);\n color: var(--pst-color-text-base);\n margin-bottom: 0.5rem;\n }\n\n // The dropdown toggle for extra links just shows them all instead.\n .nav-item.dropdown {\n // On mobile, the dropdown behaves like any other link, no hiding\n button {\n display: none;\n }\n\n .dropdown-menu {\n display: flex;\n flex-direction: column;\n padding: 0;\n margin: 0;\n border: none;\n background-color: inherit;\n font-size: inherit;\n }\n }\n\n // Center header items get displayed vertically, end items are displayed horizontally\n .sidebar-header-items__center {\n display: flex;\n flex-direction: column;\n }\n\n // Positioning end items\n .sidebar-header-items__end {\n display: flex;\n align-items: center;\n gap: 0.5rem;\n }\n\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n display: none;\n }\n }\n\n .sidebar-primary-items__start {\n // Add a border on mobile to separate it from the header sidebar area\n border-top: 1px solid var(--pst-color-border);\n @include media-breakpoint-up($breakpoint-sidebar-primary) {\n border-top: none;\n }\n }\n\n .sidebar-primary-items__end {\n margin-top: auto;\n margin-bottom: 1em;\n }\n .list-caption {\n list-style: none;\n padding-left: 0px;\n }\n li {\n position: relative;\n // If it has children, add a bit more padding to wrap the content to avoid\n // overlapping with the