.divider {
    background: var(--color-primary);
    border-radius: 1px;
    height: 2px;
    box-shadow: var(--box-shadow);
}

.divider-gradient {
    background: linear-gradient(90deg, var(--color-primary), var(--color-complementary));
    border-radius: 1px;
    height: 2px;
    box-shadow: var(--box-shadow);
}

.divider-right {
    background: linear-gradient(90deg, transparent, var(--color-primary));
    border-radius: 1px;
    height: 2px;
    box-shadow: var(--box-shadow);
}

.divider-left {
    background: linear-gradient(90deg, var(--color-complementary), transparent);
    border-radius: 1px;
    height: 2px;
    box-shadow: var(--box-shadow);
}

.badge {
    background: var(--color-primary);
    border-radius: var(--spacing-unit);
    color: white;
    font-size: calc(var(--font-size-base) - 1px);
    font-weight: bold;
    padding: calc(var(--spacing-unit) * 0.25) var(--spacing-unit);
    box-shadow: var(--box-shadow);
}

.variable-cruzado-container {
    display: grid;
    gap: var(--spacing-unit);
    grid-template-columns: repeat(auto-fit, minmax(calc(var(--spacing-unit) * 24), 1fr));
    align-items: stretch;
}

.error-message {
    background-color: var(--color-error-alpha);
    border-radius: var(--spacing-unit);
    color: var(--color-error);
    padding: var(--spacing-unit);
    box-shadow: var(--box-shadow);
    /* scroll-margin-top: calc(var(--navbar-height) + 1rem); */
}

.tools-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
    gap: var(--spacing-unit);
    align-items: stretch;
}

.respuesta-container {
    display: grid;
    gap: var(--spacing-unit);
    grid-template-columns: repeat(auto-fit, minmax(calc(var(--spacing-unit) * 24), 1fr));
}

.code-container {
    background-color: var(--text-color);
    border-radius: var(--spacing-unit);
    padding: calc(var(--spacing-unit) * 2);
    height: calc(var(--spacing-unit) * 48);
    box-shadow: var(--box-shadow);
}

.code-textarea {
    color: white;
    background: none;
    border: none;
    height: 100%;
    font-family: monospace;
    resize: none;
    white-space: pre-wrap;
    width: 100%;
    overflow: auto;
}

.code-textarea:focus { outline: none }

.code-textarea::-webkit-scrollbar {
    width: calc(var(--spacing-unit) * 0.75);
}

.code-textarea::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
    border-radius: calc(var(--spacing-unit) * 0.75);
}

.code-textarea::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.25);
    border-radius: calc(var(--spacing-unit) * 0.75);
}

.code-textarea::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.5);
}

.toolbar {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing-unit) * 0.5);
    background-color: var(--color-primary-alpha);
    padding: calc(var(--spacing-unit) * 0.5);
    border-radius: var(--spacing-unit);
    height: auto;
    box-shadow: var(--box-shadow);
}

.toolbar-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(var(--spacing-unit) * 2.5);
    height: calc(var(--spacing-unit) * 2.5);
    color: var(--color-primary);
    cursor: pointer;
    border-radius: var(--spacing-unit);
    transition: all 0.25s ease;
    background-color: white;
}

.toolbar-icon:hover {
    background-color: var(--color-primary);
    color: white;
}

.border-left {
    border-left: 2px solid var(--color-primary);
}

.desagregaciones-container {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-unit);
}

.actualizado-container {
    display: grid;
    gap: var(--spacing-unit);
    grid-template-columns: repeat(auto-fit, minmax(calc(var(--spacing-unit) * 24), 1fr));
}

.dictionary-container {
    overflow-y: auto;
    max-height: calc(var(--spacing-unit) * 52);
    padding-right: var(--spacing-unit);
}

.dictionary-container::-webkit-scrollbar {
    width: calc(var(--spacing-unit) * 0.5);
}

.dictionary-container::-webkit-scrollbar-track {
    background: var(--color-primary-alpha);
    border-radius: calc(var(--spacing-unit) * 0.5);
}

.dictionary-container::-webkit-scrollbar-thumb {
    background: var(--color-primary-alpha);
    border-radius: calc(var(--spacing-unit) * 0.5);
}

.dictionary-container::-webkit-scrollbar-thumb:hover {
    background: var(--color-primary);
}

.dictionary-node .fa-caret-right {
    color: var(--color-primary);
    transition: all 0.25s ease;
}

.dictionary-node[open] > summary .fa-caret-right {
    transform: rotate(90deg);
}

.dictionary-node {
    margin-bottom: var(--spacing-unit);
}

.dictionary-children {
    margin-left: var(--spacing-unit);
    border-left: 2px solid var(--color-primary-alpha);
    padding-left: var(--spacing-unit);
    margin-top: var(--spacing-unit);
}

.dictionary-var-block {
    padding: var(--spacing-unit);
    border-radius: var(--spacing-unit);
    background: var(--color-primary-alpha);
    margin-top: var(--spacing-unit);
    box-shadow: var(--box-shadow);
}

.dictionary-var-block:active {
    border: 2px solid var(--color-primary);
}

.dictionary-icon-container {
    width: 2rem;
    display: flex;
    justify-content: center;
}

.dictionary-var-block {
    position: relative;
    cursor: pointer;
}

.dictionary-clipboard {
    position: absolute;
    inset: 0;
    opacity: 0;
}

.dictionary-node .fa-copy {
    color: transparent;
    transition: all 0.25s ease;
}

.dictionary-var-block:hover .fa-copy {
    color: var(--color-primary);
}

.indicadores-search {
    border-radius: var(--spacing-unit);
    background: linear-gradient(90deg, var(--color-primary-alpha), var(--color-complementary-alpha));
}

.inputs-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
    gap: var(--spacing-unit);
    align-items: stretch;
}

.dictionary-var-block .fa-caret-down,
.dictionary-var-block .fa-caret-up {
    color: var(--color-primary);
}

.tableau {
    width: 100%;
    height: 1248px;
    border-radius: var(--spacing-unit);
    border: 2px solid var(--color-primary-alpha);
    box-shadow: var(--box-shadow);
}
