/* CSS stylesheet for displaying xarray objects in jupyterlab.
 *
 */

:root {
    --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));
    --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));
    --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));
    --fused-error-background-color: var(--jp-error-color0, rgba(255, 0, 0, 0.8));
    --xr-border-color: var(--jp-border-color2, #e0e0e0);
    --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);
    --xr-background-color: var(--jp-layout-color0, white);
    --xr-background-color-row-even: var(--jp-layout-color1, white);
    --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);
}

html[theme=dark],
body[data-theme=dark],
body.vscode-dark {
    --xr-font-color0: rgba(255, 255, 255, 1);
    --xr-font-color2: rgba(255, 255, 255, 0.54);
    --xr-font-color3: rgba(255, 255, 255, 0.38);
    --fused-error-background-color: var(--jp-error-color0, rgba(255, 0, 0, 0.8));
    --xr-border-color: #1F1F1F;
    --xr-disabled-color: #515151;
    --xr-background-color: #111111;
    --xr-background-color-row-even: #111111;
    --xr-background-color-row-odd: #313131;
}

.xr-wrap {
    display: block !important;
    min-width: 300px;
    max-width: 700px;
}

.xr-text-repr-fallback {
    /* fallback to plain text repr when CSS is not injected (untrusted notebook) */
    display: none;
}

.xr-header {
    padding-top: 6px;
    padding-bottom: 6px;
    margin-bottom: 4px;
    border-bottom: solid 1px var(--xr-border-color);
}

.xr-header>div,
.xr-header>ul {
    display: inline;
    margin-top: 0;
    margin-bottom: 0;
}

.xr-obj-type,
.xr-array-name {
    margin-left: 2px;
    margin-right: 10px;
}

.xr-obj-type {
    color: var(--xr-font-color2);
}

.xr-sections {
    padding-left: 0 !important;
    display: grid;
    grid-template-columns: 150px auto auto 1fr 20px 20px;
}

.xr-section-item {
    display: contents;
}

.xr-section-item input {
    display: none;
}

.xr-section-item input+label {
    color: var(--xr-disabled-color);
}

.xr-section-item input:enabled+label {
    cursor: pointer;
    color: var(--xr-font-color2);
}

.xr-section-item input:enabled+label:hover {
    color: var(--xr-font-color0);
}

.xr-section-summary {
    grid-column: 1;
    color: var(--xr-font-color2);
    font-weight: 500;
}

.xr-section-summary>span {
    display: inline-block;
    padding-left: 0.5em;
}

.xr-section-summary-in:disabled+label {
    color: var(--xr-font-color2);
}

.xr-section-summary-in+label:before {
    display: inline-block;
    content: '►';
    font-size: 11px;
    width: 15px;
    text-align: center;
}

.xr-section-summary-in:disabled+label:before {
    color: var(--xr-disabled-color);
}

.xr-section-summary-in:checked+label:before {
    content: '▼';
}

.xr-section-summary-in:checked+label>span {
    display: none;
}

.xr-section-summary,
.xr-section-inline-details {
    padding-top: 4px;
    padding-bottom: 4px;
}

.xr-section-inline-details {
    grid-column: 2 / -1;
}

.xr-section-details {
    display: none;
    grid-column: 1 / -1;
    margin-bottom: 5px;
}

.xr-section-summary-in:checked~.xr-section-details {
    display: contents;
}

.xr-array-wrap {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 20px auto;
}

.xr-array-wrap>label {
    grid-column: 1;
    vertical-align: top;
}

.xr-preview {
    color: var(--xr-font-color3);
}

.xr-array-preview,
.xr-array-data {
    padding: 0 5px !important;
    grid-column: 2;
}

.xr-array-data,
.xr-array-in:checked~.xr-array-preview {
    display: none;
}

.xr-array-in:checked~.xr-array-data,
.xr-array-preview {
    display: inline-block;
}

.xr-dim-list {
    display: inline-block !important;
    list-style: none;
    padding: 0 !important;
    margin: 0;
}

.xr-dim-list li {
    display: inline-block;
    padding: 0;
    margin: 0;
}

.xr-dim-list:before {
    content: '(';
}

.xr-dim-list:after {
    content: ')';
}

.xr-dim-list li:not(:last-child):after {
    content: ',';
    padding-right: 5px;
}

.xr-has-index {
    font-weight: bold;
}

.xr-var-list,
.xr-var-item {
    display: contents;
}

.xr-var-item>div,
.xr-var-item label,
.xr-var-item>.xr-var-name span {
    background-color: var(--xr-background-color-row-even);
    margin-bottom: 0;
}

.xr-var-item>.xr-var-name:hover span {
    padding-right: 5px;
}

.xr-var-list>li:nth-child(odd)>div,
.xr-var-list>li:nth-child(odd)>label,
.xr-var-list>li:nth-child(odd)>.xr-var-name span {
    background-color: var(--xr-background-color-row-odd);
}

.xr-var-name {
    grid-column: 1;
}

.xr-var-dims {
    grid-column: 2;
}

.xr-var-dtype {
    grid-column: 3;
    text-align: right;
    color: var(--xr-font-color2);
}

.xr-var-preview {
    grid-column: 4;
}

.xr-index-preview {
    grid-column: 2 / 5;
    color: var(--xr-font-color2);
}

.xr-var-name,
.xr-var-dims,
.xr-var-dtype,
.xr-preview,
.xr-attrs dt {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-right: 10px;
}

.xr-var-name:hover,
.xr-var-dims:hover,
.xr-var-dtype:hover,
.xr-attrs dt:hover {
    overflow: visible;
    width: auto;
    z-index: 1;
}

.xr-var-attrs,
.xr-var-data,
.xr-index-data {
    display: none;
    background-color: var(--xr-background-color) !important;
    padding-bottom: 5px !important;
}

.xr-var-attrs-in:checked~.xr-var-attrs,
.xr-var-data-in:checked~.xr-var-data,
.xr-index-data-in:checked~.xr-index-data {
    display: block;
}

.xr-var-data>table {
    float: right;
}

.xr-var-name span,
.xr-var-data,
.xr-index-name div,
.xr-index-data,
.xr-attrs {
    padding-left: 25px !important;
}

.xr-attrs,
.xr-var-attrs,
.xr-var-data,
.xr-index-data {
    grid-column: 1 / -1;
}

dl.xr-attrs {
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 125px auto;
}

.xr-attrs dt,
.xr-attrs dd {
    padding: 0;
    margin: 0;
    float: left;
    padding-right: 10px;
    width: auto;
}

.xr-attrs dt {
    font-weight: normal;
    grid-column: 1;
}

.xr-attrs dt:hover span {
    display: inline-block;
    background: var(--xr-background-color);
    padding-right: 10px;
}

.xr-attrs dd {
    grid-column: 2;
    white-space: pre-wrap;
    word-break: break-all;
}

.xr-icon-database,
.xr-icon-code,
.xr-icon-copy,
.xr-icon-file-text2,
.xr-no-icon {
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1.5em !important;
    stroke-width: 0;
    stroke: currentColor;
    fill: currentColor;
}

.fused-copy-button {
    cursor: pointer;
}

.fused-copy-hidden {
    display: none;
}

.fused-copy-fade-inout {
    display: inline;
    opacity: 1;
    animation: fused-copy-fade 1.5s ease-in-out;
    animation-fill-mode: forwards;
}

@keyframes fused-copy-fade {
  0%,100% { opacity: 0 }
  10%,50% { opacity: 1 }
}

.fused-udf-body-wrapper {
    overflow: scroll;
    max-height: 440px;
    width: 100%;
}

.fused-udf-body pre {
    counter-reset: udf-code-number;
}

.fused-udf-body span {
    counter-increment: udf-code-number;
}

.fused-udf-body span:before {
    padding-right: 2em;
    content: counter(udf-code-number, var(--fused-udf-gutter-counter-style));
    opacity: 70%;
}

.fused-udf-error-line {
    color: red;
}

.fused-udf-error-line:after {
    content: " ◀◀◀";
}
