:root, [data-bs-theme=light] {
    --bs-success-rgb: 78, 205, 196;
    --bs-success: #4ecdc4;
    --bs-warning-rgb: 255, 107, 107;
    --bs-warning: #ff6b6b;
    --bs-danger-rgb: 196, 77, 88;
    --bs-primary-rgb: 118, 165, 231;
    --bs-primary: #76a5e7;
}

[data-scheme=patternly] .btn-primary {
    --bs-btn-primary-hover-bg: #76a5e7;
    --bs-btn-primary-active-bg: #76a5e7;
}

.btn-warning {
    --bs-btn-bg: #ff6b6b;
    --bs-btn-border-color: #ff6b6b;
    --bs-btn-hover-bg: #ff6b6b;
    --bs-btn-hover-border-color: #ff6b6b;
}

.btn-success {
    --bs-btn-bg: #4ecdc4;
    --bs-btn-border-color: #4ecdc4;
    --bs-btn-hover-bg: #4ecdc4;
    --bs-btn-hover-border-color: #4ecdc4;
}

[data-scheme=patternly] {
  --bs-primary: #76a5e7;
  --bs-link-color: #76a5e7;
}

.tree,
.tree ul {
    margin: 0 0 0 1em;
    padding: 0;
    list-style: none;
    color: #1c1d1e;
    position: relative;
    max-width: 850px;
}

.tree ul {
    /*margin-top: .25rem;*/
    margin-left: .5em
}

.tree:before,
.tree ul:before {
    content: "";
    display: block;
    width: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    border-left: 1px solid rgba(0, 0, 0, .2);
}

.tree li {
    padding-left: 1.5em;
    line-height: 2.5em;
    position: relative;
}

.tree li:before {
    content: "";
    display: block;
    width: 10px;
    height: 0;
    border-top: 1px solid rgba(0, 0, 0, .2);
    margin-top: -1px;
    position: absolute;
    top: 1em;
    left: 0;
}

.tree li:last-child:before {
    height: auto;
    top: 1em;
    bottom: 0;
}