 :root {
        --xbrl-indent-size: 0.7rem;
        --indent-level: 0;
        --xbrl-gray: rgba(0, 0, 0, .5);
    }


    .xbrl-editor-toolbar {
        display: flex;
        align-items: center;
        font-size: 0.8rem;
    }

    #xbrl-editor-toggle-empty::before {
        margin-left: auto;
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        content: '\f070'; /* FontAwesome eye-slash icon */
        cursor: pointer;
        transition: color 0.2s;
    }

    #xbrl-editor-toggle-empty.active::before {
        content: '\f06e'; /* FontAwesome eye icon */
    }

    .xbrl-indent {
        display: inline-block;
        width: calc(var(--xbrl-indent-size) * var(--indent-level, 0));
    }

    .label-col {
        padding-right: 0;
    }

    .section-col {
        padding-left: .5rem;
    }

    /* .ix-tag {
        cursor: pointer;
    } */

    .section-col .xbrl-arrow {
        margin-right: 0.1em;
    }
    .section-col .xbrl-expand-values {
        margin-right: 0.75em;
        color: var(--xbrl-gray);
        cursor: pointer;
        font-size: 0.8em;
    }

    .xbrl-row.has-child-values .xbrl-arrow::before {
        color: var(--bs-body-color);
    } 
    
    .xbrl-row .xbrl-label-text {
        color: var(--xbrl-gray);
    }
    .xbrl-row.has-child-values .xbrl-label-text, .xbrl-row.has-value .xbrl-label-text {
        color: var(--bs-body-color);
    }

    .section-col .xbrl-label-flex {
        align-items: center;
    }

    .xbrl-editor-container .form-control-sm,
    .xbrl-editor-container .form-select-sm {
        font-size: 0.75rem;
    }

    .xbrl-editor-container .xbrl-string {
        height: calc(2.5em + 0.5rem + calc(var(--bs-border-width) * 2));
    }

    .xbrl-editor-container {
        min-width: 800px;
        border: 1px solid rgba(0, 0, 0, .1);
        background-color: white;
    }

    .tuple-group .xbrl-indent {
        /* Use the same indent size for tuple groups */
        width: calc(var(--xbrl-indent-size) * calc(var(--indent-level, 0) * 2));
    }

    .tuple-group {
        /* border: 1px solid rgba(0,0,0,.1); */
        border-radius: 0.375rem;
        background-color: transparent;
        padding: 0.5rem;
        margin-bottom: 0.5rem;
        /* Gradient: transparent up to indent, then solid white */
        background-image: linear-gradient(to right,
                transparent 0,
                transparent calc(var(--xbrl-indent-size) * calc(var(--indent-level, 0) * 2)),
                rgba(var(--bs-primary-rgb), .1) calc(var(--xbrl-indent-size) * calc(var(--indent-level, 0) * 2)),
                rgba(var(--bs-primary-rgb), .1) 100%);
    }

    .xbrl-arrow {
        display: inline-block;
        width: 1em;
        cursor: pointer;
        user-select: none;
        transition: transform 0.2s;
    }

    .xbrl-label-flex {
        display: flex;
        align-items: flex-start;
        min-width: 0;
    }

    .xbrl-arrow,
    .xbrl-indent {
        flex: none;
    }

    .xbrl-label-text {
        flex: 1 1 0%;
        min-width: 0;
        white-space: normal;
        word-break: break-word;
        margin-left: 0.2em;
        font-weight: 500;
    }

    .xbrl-parent .xbrl-label-text {
        font-weight: 600;
    }

    .xbrl-arrow-down::before {
        content: '\25BC';
        /* ▼ */
        color: var(--xbrl-gray);
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        content: '\f078';
        /* FontAwesome down arrow */
    }

    .xbrl-arrow-right::before {
        content: '\25B6';
        /* ▶ */
        color: var(--xbrl-gray);
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        content: '\f054';
        /* FontAwesome right arrow */
    }


    .tuple-icon {
        color: rgba(var(--bs-primary-rgb), 1);
        display: inline-block;
        width: 1em;
        text-align: center;
        vertical-align: middle;
        flex: none;
        margin-right: 0.2em;
        opacity: 0.8;
    }

    .label-col+.col {
        padding-left: 0.5rem;
    }

    .xbrl-icon {
        align-self: center;
        color: rgba(0, 0, 0, .5);
        font-size: 0.8em;
    }

    .xbrl-arrow-empty::before {
        content: '';
    }

    .xbrl-collapsed>.xbrl-arrow-down {
        transform: rotate(-90deg);
    }

    .xbrl-children {
        display: block;
        overflow: hidden;
        max-height: auto;
        opacity: 1;
    }

    .xbrl-children.collapsed {
        max-height: 0 !important;
        overflow: hidden;
        transition: none;
        opacity: 0;
    }

    .xbrl-section-header {
        background: #fff !important;
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
        transition: background-color 0.15s;
    }

    .xbrl-section-header:not(:first-child) {
        border-top: 1px solid rgba(0, 0, 0, .1);
    }

    .context-col {
        font-weight: 600;
    }

    .xbrl-row {
        min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
        position: relative;
        /* background-color: rgba(255, 255, 255, 1); */
        transition: background-color 0.15s;
    }

    .xbrl-row:hover {
        background-color: rgba(var(--bs-primary-rgb), .05);
    }

    .xbrl-section-header.active {
        background-color: #d0e7ff !important;
        /* You can adjust the color as needed */
        transition: background-color 0.15s;
    }


    [data-section-row] {
        display: none;
    }

    [data-section-row].open {
        display: flex;
    }

    .add-tuple-btn {
        margin-left: calc(var(--xbrl-indent-size, 0.8rem) * (var(--indent-level, 0) + 2));
        margin-top: 0.25rem;
        margin-bottom: 0.5rem;
    }