.form-group > label {
    font-size: 120%;
}

.form-group.required > label:after {
    content: " *";
    color: red;
}

:root {
    --judgement-bg: #905CB8;
    --judgement-fg: #FFFFFF;
    --norm-bg: #FF8744;
    --norm-fg: #FFFFFF;
    --norm_node-bg: #e3b59a;
    --norm_node-fg: #000000;
    --rule-bg: #95d7da;
    --rule-fg: #000000;
    --case_note-bg: #566c31;
    --case_note-fg: #ffffff;
    --note-bg: #085951;
    --note-fg: #FFFFFF;
    --commentary-bg: #fde29b;
    --commentary-fg: #393939;
    --doctrine-bg: #262f93;
    --doctrine-fg: #ffffff;
    --formulary-bg: #7c1111;
    --formulary-fg: #ffffff;
}

.bg-judgement {
   --bs-bg-opacity: 1;
    background-color: var(--judgement-bg) !important;
    color: var(--judgement-fg) !important;
}

.bg-norm {
   --bs-bg-opacity: 1;
    background-color: var(--norm-bg) !important;
    color: var(--norm-fg) !important;
}

.bg-norm_node {
   --bs-bg-opacity: 1;
    background-color: var(--norm_node-bg) !important;
    color: var(--norm_node-fg) !important;
}

.bg-rule {
   --bs-bg-opacity: 1;
    background-color: var(--rule-bg) !important;
    color: var(--rule-fg) !important;
}

.bg-case_note {
    --bs-bg-opacity: 1;
    background-color: var(--case_note-bg) !important;
    color: var(--case_note-fg) !important;
}

.bg-note {
    --bs-bg-opacity: 1;
    background-color: var(--note-bg) !important;
    color: var(--note-fg) !important;
}

.bg-commentary {
    --bs-bg-opacity: 1;
    background-color: var(--commentary-bg) !important;
    color: var(--commentary-fg) !important;
}

.bg-doctrine {
    --bs-bg-opacity: 1;
    background-color: var(--doctrine-bg) !important;
    color: var(--doctrine-fg) !important;
}

.bg-formulary {
    --bs-bg-opacity: 1;
    background-color: var(--formulary-bg) !important;
    color: var(--formulary-fg) !important;
}

.btn-judgement {
    --bs-btn-color: var(--judgement-fg);
    --bs-btn-bg: var(--judgement-bg);
    --bs-btn-border-color: var(--judgement-bg);
    --bs-btn-hover-color: var(--judgement-fg);
    --bs-btn-hover-bg: color(from var(--judgement-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--judgement-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--judgement-fg);
    --bs-btn-active-bg: color(from var(--judgement-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--judgement-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--judgement-fg);
    --bs-btn-disabled-bg: color(from var(--judgement-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--judgement-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

.btn-norm {
    --bs-btn-color: var(--norm-fg);
    --bs-btn-bg: var(--norm-bg);
    --bs-btn-border-color: var(--norm-bg);
    --bs-btn-hover-color: var(--norm-fg);
    --bs-btn-hover-bg: color(from var(--norm-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--norm-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--norm-fg);
    --bs-btn-active-bg: color(from var(--norm-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--norm-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--norm-fg);
    --bs-btn-disabled-bg: color(from var(--norm-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--norm-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

.btn-norm_node {
    --bs-btn-color: var(--norm_node-fg);
    --bs-btn-bg: var(--norm_node-bg);
    --bs-btn-border-color: var(--norm_node-bg);
    --bs-btn-hover-color: var(--norm_node-fg);
    --bs-btn-hover-bg: color(from var(--norm_node-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--norm_node-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--norm_node-fg);
    --bs-btn-active-bg: color(from var(--norm_node-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--norm_node-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--norm_node-fg);
    --bs-btn-disabled-bg: color(from var(--norm_node-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--norm_node-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

.btn-rule {
    --bs-btn-color: var(--rule-fg);
    --bs-btn-bg: var(--rule-bg);
    --bs-btn-border-color: var(--rule-bg);
    --bs-btn-hover-color: var(--rule-fg);
    --bs-btn-hover-bg: color(from var(--rule-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--rule-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--rule-fg);
    --bs-btn-active-bg: color(from var(--rule-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--rule-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--rule-fg);
    --bs-btn-disabled-bg: color(from var(--rule-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--rule-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

.btn-case_note {
    --bs-btn-color: var(--case_note-fg);
    --bs-btn-bg: var(--case_note-bg);
    --bs-btn-border-color: var(--case_note-bg);
    --bs-btn-hover-color: var(--case_note-fg);
    --bs-btn-hover-bg: color(from var(--case_note-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--case_note-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--case_note-fg);
    --bs-btn-active-bg: color(from var(--case_note-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--case_note-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--case_note-fg);
    --bs-btn-disabled-bg: color(from var(--case_note-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--case_note-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

.btn-note {
    --bs-btn-color: var(--note-fg);
    --bs-btn-bg: var(--note-bg);
    --bs-btn-border-color: var(--note-bg);
    --bs-btn-hover-color: var(--note-fg);
    --bs-btn-hover-bg: color(from var(--note-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--note-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--note-fg);
    --bs-btn-active-bg: color(from var(--note-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--note-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--note-fg);
    --bs-btn-disabled-bg: color(from var(--note-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--note-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

.btn-commentary {
    --bs-btn-color: var(--commentary-fg);
    --bs-btn-bg: var(--commentary-bg);
    --bs-btn-border-color: var(--commentary-bg);
    --bs-btn-hover-color: var(--commentary-fg);
    --bs-btn-hover-bg: color(from var(--commentary-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--commentary-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--commentary-fg);
    --bs-btn-active-bg: color(from var(--commentary-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--commentary-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--commentary-fg);
    --bs-btn-disabled-bg: color(from var(--commentary-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--commentary-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

.btn-doctrine {
    --bs-btn-color: var(--doctrine-fg);
    --bs-btn-bg: var(--doctrine-bg);
    --bs-btn-border-color: var(--doctrine-bg);
    --bs-btn-hover-color: var(--doctrine-fg);
    --bs-btn-hover-bg: color(from var(--doctrine-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--doctrine-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--doctrine-fg);
    --bs-btn-active-bg: color(from var(--doctrine-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--doctrine-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--doctrine-fg);
    --bs-btn-disabled-bg: color(from var(--doctrine-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--doctrine-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

.btn-formulary {
    --bs-btn-color: var(--formulary-fg);
    --bs-btn-bg: var(--formulary-bg);
    --bs-btn-border-color: var(--formulary-bg);
    --bs-btn-hover-color: var(--formulary-fg);
    --bs-btn-hover-bg: color(from var(--formulary-bg) xyz calc(x + 0.05) calc(y + 0.05) calc(z + 0.1));
    --bs-btn-hover-border-color: color(from var(--formulary-bg) xyz calc(x - 0.05) calc(y - 0.1) calc(z - 0.2));
    --bs-btn-focus-shadow-rgb: 225, 83, 97;
    --bs-btn-active-color: var(--formulary-fg);
    --bs-btn-active-bg: color(from var(--formulary-bg) xyz calc(x + 0.05) y calc(z - 0.1));
    --bs-btn-active-border-color: color(from var(--formulary-bg) xyz x calc(y - 0.05) z);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--formulary-fg);
    --bs-btn-disabled-bg: color(from var(--formulary-bg) xyz calc(x - 0.05) calc(y - 0.05) calc(z - 0.1) / .7);
    --bs-btn-disabled-border-color: color(from var(--formulary-bg) xyz calc(x - 0.1) calc(y - 0.08) calc(z - 0.15) / .7);
}

ul.pagination {
    margin: 0 auto;
    width: fit-content;
}

ul.pagination li,
.book-pagination ul.pagination li {
    background-color: var(--bs-gray-200);
    border: 1px solid var(--bs-gray-400);
    border-radius: 8px;
    padding: 5px 10px;
    margin: auto 3px;
}

ul.pagination li.active,
.book-pagination ul.pagination li.active {
    background-color: var(--bs-light);
    border: 1px solid var(--bs-primary);
    font-weight: bold;
}

ul.pagination li a,
.book-pagination ul.pagination li a {
    text-decoration: none;
}

.floating-message {
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 1050;
}

.overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1000;
    top: 0;
    left: 0;
    opacity: 0.5;
    filter: alpha(opacity=50);
    background-color: var(--bs-secondary-border-subtle);
 }

.overlay div {
    align-items: center;
    height: 100%;
}

.note-anchor {
    text-decoration: none;
    vertical-align: super;
    font-size: smaller;
    margin: 0 .3em;
}

.document-note p:first-of-type {
    display: inline;
    margin-bottom: 0;
}

.document-note p {
    margin-bottom: 0;
}

.one-line-summernote .note-statusbar {
    display: none;
}

.one-line-summernote .note-editable {
    overflow: hidden !important;
}

.node-article {
    display: inline-block;
    font-weight: bold;
    margin-bottom: .8em;
}

.node-article-rubric {
    display: inline-block;
    margin: 0 0 .8em .4em;
}