/* =========== Define common variables =========== */
body {
    --md-left-sider-width: 350px;
    --md-right-contents-width: 250px;
}
/* =========== Define common variables =========== */

/* =========== Render Common Style =========== */
html,body {
	width: 100%;
    height: 100%;
}
footer {
    margin-top: 28px;
}
p {
    margin: 16px 0 3px;
    line-height: 24px;
}
/* =========== Render Common Style =========== */


/* ======== Render Main Content Style ========= */
.wy-grid-for-nav.prevent-manipulation {
    overflow: hidden;
    touch-action: none;
}
.wy-nav-content-wrap {
    overflow-x: auto;
}
.wy-breadcrumbs {
    text-align: left;
}
.wy-nav-content a:visited {
    color: #2980b9;
}
.rst-content div, 
.rst-content p {
    text-align: justify;
    word-wrap: break-word;
    overflow-wrap: break-word;
}
.rst-content .line-block {
    margin-bottom: 0;
}

/* 解决 iOS 设备对完全透明（不可见）元素的交互行为设计为无响应的问题 */
.rst-content .code-block-caption .headerlink, 
.rst-content .eqno .headerlink, 
.rst-content .toctree-wrapper>p.caption .headerlink, 
.rst-content dl dt .headerlink, 
.rst-content h1 .headerlink, 
.rst-content h2 .headerlink, 
.rst-content h3 .headerlink, 
.rst-content h4 .headerlink, 
.rst-content h5 .headerlink, 
.rst-content h6 .headerlink, 
.rst-content p.caption 
.headerlink, 
.rst-content p .headerlink, 
.rst-content table>caption .headerlink {
    opacity: 0.02;
}
/* --------- Render sm-screen Style --------- */
@media screen and (min-width: 769px) {
    /* ----- left sider ----- */
    .wy-nav-side {
        width: var(--md-left-sider-width);
    }
    .wy-side-scroll,
    .wy-side-nav-search,
    .wy-menu-vertical {
        width: 100%;
    }

    /* ----- main content ----- */
    .wy-nav-content-wrap {
        margin-left: var(--md-left-sider-width);
        background:rgba(0,0,0,.05);
    }
    .wy-nav-content {
        /*width: calc(100% - var(--md-right-contents-width));*/
        max-width: 100%;
        min-width: 500px;
        margin:0;
        padding: 1.618em 3.2%;
        background:#fff;
    }
    /* ----- right contents ----- */
    .contents {
        position: fixed;
        right: 0;
        top: 0;
        width: var(--md-right-contents-width);
        height: 100%;
        overflow: auto;
        padding-left: 30px;
        background-color: #f3f3f3; 
        z-index: 999;
        /* 可以添加更多样式来改变目录栏的外观，例如背景色、宽度、间距等 */
    }

    /* 添加导航拖拽组件 */
    .resize-handle-left,
    .resize-handle-right {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 18px;
        height: 100%;
        margin-right: -2px;
        position: absolute;
        top: 0px;
        cursor: col-resize;
        color: #333;
        background-color: #d0d0d0;
    }
    /* 左侧导航拖拽组件 */
    .resize-handle-left {
        right: 1px;
    }
    /* 右侧导航拖拽组件 */
    .resize-handle-right {
        left: 0;
    }
}
/* --------- Render sm-screen Style --------- */

/* --------- Render xs-screen Style --------- */
@media screen and (max-width: 768px) {
    .resize-handle-left, 
    .resize-handle-right {
        display: none;
    }

    /* fixed top nav setting */
    .wy-nav-side.shift,
    .wy-grid-for-nav {
        top: 60px;
    }
    .wy-nav-top {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 999;
    }
    .wy-nav-top i {
        float: right;
    }

    .wy-nav-content-wrap.shift {
        position: initial;
        height: auto;
    }
}

@media screen and (max-width: 480px) {
    .wy-breadcrumbs li.wy-breadcrumbs-aside {
        display: block;
    }
}
/* --------- Render xs-screen Style --------- */
/* ======== Render Main Content Style ========= */

/* =========== Render Sider Style ============ */
/* div[role="search"] style */
/*
.wy-side-nav-search > div[role="search"] {
    text-align: center;
}

div.wy-menu,
div.wy-menu-vertical {
    text-align: left !important;
}
*/
li[class*="toctree-"] * {
    font-size: 14px !important;
}
.always-expand-toc button::before {
    content: "\f147" !important;
}

.wy-menu-vertical li[class*="toctree-"].current,
.wy-menu-vertical li[class*="toctree-"].current > a,
.wy-menu-vertical li[class*="toctree-"].current li[class*="toctree-"]>a {
    background: white;
}
.wy-menu-vertical li.current>a, .wy-menu-vertical li.on a {
    color: #004d88;
}
/* =========== Render Sider Style ============ */

/* ====== Render version selector style ====== */
.version-container {
    text-align: center;
}
#version-selector {
    width: 126px;
    margin: -6px auto 16px;
    border-radius:2px;
}
/* ====== Render version selector style ====== */


/* ============ Render Title Style ============ */
h1, h2, h3, h4, h5, h6 {
	-webkit-transition: text-shadow 0.5s linear;
	-moz-transition: text-shadow 0.5s linear;
	-ms-transition: text-shadow 0.5s linear;
	-o-transition: text-shadow 0.5s linear;
	transition: text-shadow 0.5s linear;
	margin-right: 15px;
	font-family: Arial,sans-serif;
    margin: 24px 0;
}

/* 禁止标题自动编号 */
h1::before,
h2::before,
h3::before,
h4::before,
h5::before,
h6::before {
    content: none !important;
}

.rst-content h1 {
    font-size: 38px;
    font-weight: 400;
}
.rst-content h2 {
    font-size: 32px;
	font-weight: 400;
	margin-top: 48px;
	margin-bottom: 32px;
}
.rst-content h3 {
    font-size: 28px;
	font-weight: 400;
	margin-top: 42px;
	margin-bottom: 28px;
}
.rst-content h4 {
    font-size: 24px;
	font-weight: 400;
	margin-top: 36px;
	margin-bottom: 24px;
}
.rst-content h5 {
    font-size: 20px;
	font-weight: 400;
	margin-top: 30px;
	margin-bottom: 20px;
}
.rst-content h6 {
    font-size: 18px;
	font-weight: 400;
	margin-top: 24px;
	margin-bottom: 18px;
}
/* ============ Render Title Style ============ */


/* ========= Render Image Style ========= */
figcaption, figcaption p{
    font: italic 14px arial,sans-serif;
    text-align: center !important;
}
figcaption p{
    margin-top: 0;
    padding: .5em 0;
    text-align: center !important;
}
.rst-content img{
    height: auto !important;
    cursor: pointer;
    margin-top: 10px;
    -webkit-tap-highlight-color: transparent;
}
.img-border {
    border: 1px solid #000;
}
/* ========= Render Image Style ========= */

/* ======= Render List Style ======== */
.rst-content section ol li>* {
    margin-top: 5px;
    margin-bottom: 8px;
}
.rst-content section ol li>p,
.rst-content section ol li>p:last-child,
.rst-content section ul li>p,
.rst-content section ul li>p:last-child {
    margin-top: 2px;
    margin-bottom: 2px;
}

/* ---------- Ordered Lists ---------- */
/* 一级有序列表 */
.rst-content section ol li,
.rst-content section ol.arabic li,
.rst-content section ul li ol li,
.rst-content section ul li ol.arabic li {
    list-style-type: decimal;
}
.rst-content .admonition ol li,
.rst-content .admonition ul li ol li {
    list-style-type: decimal !important;
}
/* 二级有序列表 */
.rst-content section ol li ol li,
.rst-content section ol.arabic li ol li,
.rst-content section ul li ol li ol li,
.rst-content section ul li ol.arabic li ol li {
    list-style-type: lower-latin;
}
.rst-content .admonition ol li ol li,
.rst-content .admonition ul li ol li ol li {
    list-style-type: lower-latin !important;
}
/* 三级有序列表 */
.rst-content section ol li ol li ol li,
.rst-content section ul ol li ol li ol li,
.rst-content section ol.arabic li ol li ol li,
.rst-content section ul ol.arabic li ol li ol li {
    list-style-type: lower-roman;
}
.rst-content .admonition ol li ol li ol li,
.rst-content .admonition ul ol li ol li ol li {
    list-style-type: lower-roman !important;
}
/* 四级有序列表 */
.rst-content section ol li ol li ol li ol li,
.rst-content section ul ol li ol li ol li ol li,
.rst-content section ol.arabic li ol li ol li ol li,
.rst-content section ul ol.arabic li ol li ol li ol li {
    list-style-type: lower-greek;
}
.rst-content .admonition ol li ol li ol li ol li,
.rst-content .admonition ul ol li ol li ol li ol li {
    list-style-type: lower-greek !important;
}

/* ---------- Unordered Lists ---------- */
/* 一级无序列表 */
.rst-content section ul li,
.rst-content section ol li ul li,
.rst-content section ol.arabic li ul li {
    list-style-type: disc;
}
.rst-content .admonition ul li,
.rst-content .admonition ol li ul li {
    list-style-type: disc !important;
}
/* 二级无序列表 */
.rst-content section ul li ul li,
.rst-content section ol ul li ul li,
.rst-content section ol.arabic ul li ul li {
    list-style-type: circle;
}
.rst-content .admonition ul li ul li,
.rst-content .admonition ol ul li ul li {
    list-style-type: circle !important;
}
/* 三级无序列表 */
.rst-content section ul li ul li ul li,
.rst-content section ol ul li ul li ul li,
.rst-content section ol.arabic ul li ul li ul li {
    list-style-type: square;
}
.rst-content .admonition ul li ul li ul li,
.rst-content .admonition ol ul li ul li ul li {
    list-style-type: square !important;
}
/* 四级无序列表 */
.rst-content section ul li ul li ul li ul li,
.rst-content section ol ul li ul li ul li ul li,
.rst-content section ol.arabic ul li ul li ul li ul li {
    list-style-type: none;
    position: relative;
    margin-left: 0;
    padding-left: 1em;
}
.rst-content section ul li ul li ul li ul li::before,
.rst-content section ol ul li ul li ul li ul li::before,
.rst-content section ol.arabic ul li ul li ul li ul li::before {
    content: "-";
    position: absolute;
    left: 0;
}

.rst-content section ol,
.rst-content section ol.arabic,
.rst-content section ul {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}

/* rst output list */
html.writer-html5 .rst-content dl.field-list {
    grid-template-columns: auto 1fr;
}
html.writer-html5 .rst-content dl.field-list dt,
html.writer-html5 .rst-content dl.field-list dd {
  overflow-wrap: break-word; /* 长词换行 */
  word-wrap: break-word;     /* 确保兼容性 */
  overflow: hidden;          /* 防止溢出 */
  text-overflow: ellipsis;   /* 可选：在溢出时显示省略号 */
}
html.writer-html5 .rst-content dl.field-list>dt {
    /* padding-top: 7px; */
}
/* ======= Render List Style ======== */


/* ========= Render Code Block Style ========= */
.highlight {
    background:rgba(223, 233, 243,0.4);
}
.rst-content code, .rst-content tt, code {
    white-space: normal;
    font-size: 12px;
}
.rtk-inline-code,
.rst-content code {
    border:1px solid #e1e4e5;
    background-color: rgba(223, 233, 243,0.4);
}
.rtk-inline-code {
    padding: 4px 5px;
    font-weight: 700;
}
.rst-content code {
    color: #e74c3c;
}
.rst-content code.xref {
    color: unset;
}
.rst-content div[class^=highlight], .rst-content pre.literal-block {
    margin: 1px 0 12px;
}
.rst-content dl dd {
    margin-right: 12px;
}
.rst-content dl dd p {
    margin-top: 0;
    margin-bottom: 0;
}

dl.c.unexpanded dd, dl.cpp.unexpanded dd {
    display: none;
}
.rtk-api-expansion-button {
    padding: 4px;
}
.rtk-api-expansion-button::before {
    font-family: FontAwesome, "Lato","proxima-nova","Helvetica Neue",Arial,sans-serif;
    display: inline-block;
    font-size: 1.1em;
    cursor: pointer;
}
.expanded .rtk-api-expansion-button::before {
    content: "\f0d7 \00a0";
}
.unexpanded .rtk-api-expansion-button::before {
    content: "\f0da \00a0";
}
.rst-content .guilabel {   /* 解决guilabel重叠的问题 */
    line-height: 1.3rem
}
.rst-content p>kbd.kbd {   /* 解决在平板微信中不显示kbd指令渲染效果的问题 */
    color: inherit;
    font-size: 80%;
    background-color: #fff;
    border: 1px solid #a6a6a6;
    border-radius: 4px;
    box-shadow: 0 2px grey;
    padding: 2.4px 6px;
    margin: auto 0;
}
.rst-content dl > dt.sig.sig-object.cpp:not([id]) {
    display: none;
}
.rst-content dl > dt.sig.sig-object.cpp:not([id]) + dd {
    margin-left: 0;
}
/* code copy button style */
button.copybtn {
    opacity: 1;
}
button.copybtn.o-tooltip--left:after {  /* 隐藏代码复制按钮组件自带的文字提示 */
    display: none;
}
html.writer-html4 .rst-content dl:not(.docutils)>dt, 
html.writer-html5 .rst-content dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.citation):not(.glossary):not(.simple)>dt {
    color: inherit;
}
dl.macro span.sig-name + span.pre,
dl.macro span.sig-name + span.sig-paren,
dl.macro span.sig-name + a.reference {
    margin-left: 15px;
}
dl.macro span.sig-name ~ span.pre,
dl.macro span.sig-name ~ span.sig-paren,
dl.macro span.sig-name ~ span.n,
dl.macro span.sig-name ~ p {
    font-family: SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,Courier,monospace;
    color: darkcyan;
}
/* ========= Render Code Block Style ========= */

/* =========== Render Math Style =========== */
.math {
    font-size: 14px;
}
/* =========== Render Math Style =========== */

/* ============ Render Table Style ============ */
.wy-table-responsive {
    /* width: 100%;
  	overflow: auto; */
}
.full-width-table {
    width: 100%;       /* 指定:class: full-width-table的表格宽度为全屏*/
}
table, th, td {
    border: 1px solid #e1e4e5;
}
table {
    border-collapse:collapse;
	margin: 0 auto;
	max-width: 100%;
	word-break: normal;
	margin-top: 4px;
    margin-bottom: 10px;
}
.rst-content table.docutils caption {
    line-height: 17px;       /* 修正表格标题换行时行间距过小*/
}
.wy-table-responsive table td, 
.wy-table-responsive table th {
    /* 设置单元格中的文字自动换行 */
    white-space: normal;
}
table th {
    background-color: #ecf7f8;
}
.rst-content table ul {
    margin-bottom: 0;
}
.rst-content table.docutils caption {
    padding: .5em 0;
    font-size: 14px;
    color: #404040;
}
html.writer-html5 .rst-content table.docutils td>p, 
html.writer-html5 .rst-content table.docutils th>p {
    margin-top: 0;
}
table code {
    line-height: 22px; /* 修正表格中代码块换行重叠 */
}
table td kbd {
    line-height: 23px; /* 修正表格中kbd换行重叠 */
}
/* ============ Render Table Style ============ */


/* ========= Render Quote Block Style ========= */
/*
blockquote {
    background-color: #F7F8FB;
    border-left: 2px solid #9CAFD4;
    margin: 0 24px 0 4px;
    padding: 0 12px 0 16px;
}
blockquote p {
    margin-bottom: 4px;
}
*/
/* ========= Render Quote Block Style ========= */

/* ========= Render Tab Style ========= */
.sphinx-tabs::after {
    content: "";
    display: block;
    width: 100%;
    height:1px;
    border: none;
    border-top: 1px solid #e1e4e5;
    margin: 8px 0 12px;
    padding: 0;
}
/* ========= Render Tab Style ========= */


/* ========= Render Note Style ========= */
html.writer-html5 .rst-content dl.field-list {
    grid-template-columns: auto 1fr;
}
html.writer-html5 .rst-content dl.field-list dt,
html.writer-html5 .rst-content dl.field-list dd {
  overflow-wrap: break-word; /* 长词换行 */
  word-wrap: break-word;     /* 确保兼容性 */
  overflow: hidden;          /* 防止溢出 */
  text-overflow: ellipsis;   /* 可选：在溢出时显示省略号 */
}
.rst-content .admonition, 
.rst-content .admonition-todo, 
.rst-content .attention, 
.rst-content .caution, 
.rst-content .danger, 
.rst-content .error, 
.rst-content .hint, 
.rst-content .important, 
.rst-content .note, 
.rst-content .seealso, 
.rst-content .tip, 
.rst-content .warning, 
.wy-alert {
    margin-top: 10px;
    margin-bottom: 20px;
}

/* ========= Render Note Style ========= */


/* ========= Render added-api & deprecared-api Style ========= */
section[id*="added-api"] dd dl,
section[id*="deprecated-api"] dd dl {
    background-color: rgba(223, 233, 243,0.3);
    padding: 8px 8px 0px;
    border: 1px solid #b4c2de;
    border-bottom-right-radius: 6px;
    border-bottom-left-radius: 6px;
}
section[id*="added-api"] dd dl > dt.sig.sig-object.cpp:not([id]),
section[id*="deprecated-api"] dd dl > dt.sig.sig-object.cpp:not([id]) {
    display: block;
}

.highlight-eval_rst,
section[id*="added-api"] .highlight-cpp,
section[id*="deprecated-api"] .highlight-cpp {
    display: none;
}
/* ========= Render added-api & deprecared-api Style ========= */


/* ========= Render text color ========= */
/* 需同步在conf.py中添加 */
.red-text {
    color: red;
}
.dt-highlighted {
    background: #f1c40f !important;
}
/* ========= Render text color ========= */

/* ========= Render text style ========= */
/* 需同步在conf.py中添加 */
.bold {
    font-weight: bold;
}
.italic {
    font-style: italic;
}
.bolditalic {
    font-style: italic;
    font-weight: bold;
}
/* ========= Render text style ========= */

/* ==== Render back-to-top icon style ==== */
#back-to-top {
    position: fixed;
    bottom: 80px;
    right: 20px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 24px;
    background-color: #2980b9;
    color: #fff;
    border-color: transparent;
    border-radius: 50%;
    box-shadow: 0 0 5px 0 rgba(0,0,0,.27);
    cursor: pointer;
    z-index: 900;
    /* transition: all .3s ease-out; */
}
 
#back-to-top:hover {
    background-color: #0068B6;
}
/* ==== Render back-to-top icon style ==== */


/* ====== Render image modal style ====== */
/* 禁用点击图片跳转到图片地址的效果 */
a.no-cursor-link {
    cursor: default;
}
.img-modal {
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.6);
    z-index: 1000;
    overflow: auto;
    touch-action: pan-x pan-y;
}
.img-in-modal {
    max-width: 100vmin;
    max-height: 100vmin;
    object-fit: contain;
    transform: translate(0, 0) scale(1);
    transform-origin: top left;
    /* transition: transform 0.5s ease-in-out; */
}
.img-modal-close {
    position: fixed;
    top: 2%;
    right: 4%;
    color: darkred;
    font-size: 46px;
    font-weight: bold;
    transition: 0.3s;
    z-index: 1001;
}
.img-modal-close:hover,
.img-modal-close:focus {
    color: #e60000;
    text-decoration: none;
    cursor: pointer;
}

/* ====== Render image modal style ====== */
