body {
    margin: 4rem 0.5rem 4rem 0.5rem !important;
}

label.required>.field-name>i::after {
    content: '\2022';
    color: green;
    width: 0;
    height: 0;
    transform: scale(1.5) translateY(-0.5rem) translateX(0.1rem);
    display: inline-block;
}

/* DISPLAY */

.none {
    display: none
}

.changed {
    background-color: yellow;
}

.the_whole_enchilada {
    padding: 0 1em;
}

.w100 {
    width: 100%
}

.float-right {
    float: right;
}

.float-left {
    float: left;
}

.ilblk {
    display: inline-block;
}

.blk {
    display: block;
}

.u {
    border-bottom: 1px solid black !important;
}

.tdu {
    text-decoration: underline;
    font-style: italic;
}

.nodecor {
    text-decoration: none;
}

.brad {
    border-radius: 0.5rem;
}

.ba {
    border: 1px solid gray !important;
}

.bt {
    border-top: 1px solid gray !important;
}

.bb {
    border-bottom: 1px solid gray !important;
}

.bl {
    border-left: 1px solid gray !important;
}

.br {
    border-right: 1px solid gray !important;
}

.b {
    font-weight: 600
}

.c {
    text-align: center;
}

.blue {
    color: blue
}

.strike {
    text-decoration: line-through;
    opacity: 0.5;
}

.active.no {
    color: #dc3545
}

.fixed_header thead tr {
    position: sticky;
    top: 0;
    background-color: #ddd;
}

.basic-table-mw {
    width: unset;
}

.basic-table-mw td {
    padding: 0.25rem 0.75rem 0.25rem 0.25rem;
}

/* client page */

.panel-body {
    margin-left: 0.1rem;
}

.panel .flex-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    align-content: flex-start;
    gap: 0.2rem 0.2rem;
}

.panel .flex-item {
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 20%;
    background-color: #fcf7f1;
}

.client-panel-row {
    overflow: hidden;
}

.client-panel-label {
    display: inline-block;
    font-weight: 600
}

.client-panel-data {
    display: inline-block;
    white-space: nowrap;
    padding-left: 0.25em
}

.contact>span::before {
    content: '\2022';
    width: 0.83em;
    height: 0;
    transform: scale(1.5) translateY(-0.2rem) translateX(0.1rem);
    display: inline-block;
}

.contact>span.hipaa::before {
    color: green;
}

.contact>span:not(.hipaa)::before {
    color: red;
}

.contact>.prefer::before {
    transform: scale(2.5) translateY(-0.4rem) translateX(0.15rem);
}

/* FORMS */
.selectize-input.items {
    /* background-color: transparent; */
    border-width: 2px;
    margin: 0;
    box-shadow: none;
}

.selectize-control.form-select {
    padding: 0 !important;
}

.noborder {
    border-width: 0 !important;
}

.form-floating>.selectize-control+label {
    z-index: 100;
}

.text_sm_show {
    white-space: nowrap;
    overflow-x: clip;
}

.form-bottom-border {
    border-bottom: 1px solid #ced4da;
}

.form-bold-question {
    font-weight: 600;
    color: #22425c
}

.form-line {
    padding: 0.9rem 0.5rem 0 1.5rem;
    font-weight: bold;
}

.field-name>span {
    color: green;
    font-size: 80%;
}

.tan,
.left-hide,
.right-hide {
    background-color: #ebe1d4;
}

#alertmodal_fs .modal-body {
    padding-top:0
}
.modal-content.tan {
    top: 1rem;
    border: 2px black solid;
    box-shadow: black 5px 5px;
}

.left-hide.none,
.right-hide.none {
    width: 2rem;
}

.left-hide.filled,
.right-hide.filled {
    min-width: 1rem;
    align-self: stretch;
}

.left-hide.filled {
    flex: 2 1 10%;
}

.right-hide.filled {
    flex: 5 3 10%;
}

.left-hide .selectize-control {
    padding: 0.25rem;
}

.form-floating>label {
    padding: 0;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    /* overflow: hidden; */
}

.form-floating>.form-control,
.form-floating>.form-select {
    padding: 0;
    padding-left: 0.5rem;
    height: 2rem;
}

.scroll-y {
    overflow-y: scroll;
}

.form-floating>.form-control:focus,
.form-floating>.form-select {
    padding: 0;
    padding-left: 0.5rem;
    height: 2rem;
}

.form-floating>.form-control[value],
.form-floating>.form-select,
.form-floating>textarea,
.form-floating>textarea:focus {
    padding: 0;
    padding-left: 0.5rem;
    height: 2rem;
    box-shadow: none;
    border-width: 2px;
}

.form-floating>textarea {
    min-height: 1em;
}

.form-floating>.form-control:focus~label,
.form-floating>.form-control:not(:placeholder-shown)~label,
.form-floating>.form-select~label,
.form-floating>.selectize-control~label {
    opacity: 1;
    /* overflow: hidden; */
    background-color: white;
    color: grey;
    height: 1.4rem;
    padding: 0 0.5rem;
    padding-bottom: 0.3rem;
    transform: scale(.90) translateY(-0.65rem) translateX(0.6rem);
    border-radius: 0.25em;
    color: #22425c;
}

.left-hide .form-floating>.form-control:focus~label,
.left-hide .form-floating>.form-control:not(:placeholder-shown)~label,
.left-hide .form-floating>.form-select~label,
.left-hide .form-floating>.selectize-control~label {
    margin-left: 0.5rem;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
    border: 2px solid #ced4da;
    border-bottom-width: 0;
    top: -0.25rem
}

.left-hide .form-floating>.form-control:focus~label,
.left-hide .form-floating>.form-control:not(:placeholder-shown)~label,
.left-hide .form-floating>.form-select~label,
.left-hide .form-floating>.selectize-control~label,
.left-hide .selectize-input,
.right-hide .card {
    background-color: #fcf7f1;
}

.form-floating-textarea-label {
    height: 0rem;
}

.form-floating-textarea-label>div {
    display: inline-block;
    opacity: 1;
    background-color: white;
    padding: 0 0.5rem 0.3rem 0.5rem;
    transform: scale(.90) translateY(-1.35rem) translateX(-0.3rem);
    border-radius: 0.25em;
    color: #22425c;
}

.check_list td {
    vertical-align: top;
    padding: 0 0.5rem 0 0.5rem
}

.form-section {
    transform: translateX(-0.25rem);
    color: #5c1818;
}

.form-show-value {
    font-weight: 500;
}

/* MENU DISPLAY */
.navbar {
    background-color: #bbb;
}

.navbar-nav>a.dropdown-item {
    padding-top: 0.5rem;
}

.nav-link {
    color: black
}

.nav-link:focus {
    border-left: 2px solid #888;
    border-top: 2px solid #888;
    ;
    border-right: 2px solid #888;
    border-bottom: 2px solid transparent;
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
}

.dropdown-menu[data-bs-popper] {
    margin-top: -.25rem;
}

.dropdown-menu {
    background-color: #bbb;
    border-color: transparent;
    border-top: 2px solid transparent;
    border-left: 2px solid #888;
    ;
    border-bottom: 2px solid #888;
    ;
    border-right: 2px solid #888;
    ;
    border-radius: 0;
    border-bottom-left-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

h4.subtitle {
    /* top: -0.3rem; */
    /* position: relative; */
    margin: 0;
}

.panel-foot {
    border-top: 1px #dee2e6 solid;
}

/* ----------------------- */

th.rotate {
    position: relative;
    height: 150px;
    white-space: nowrap;
    font-size:80%;
}

th.rotate>div {
    transform: translate(0.3rem, -1rem) rotate(-45deg);
    width: 30px;
    margin-left: -1em;
}

th.rotate>div>span {
    border-bottom: 1px solid #ccc;
    padding: 5px 0 0 10px;
    top: 1em;
    position: relative;
}

th.noedit>div>span:before {
    content: '* ';
    color: red;
    position: relative;
    top: 0.1rem
}

.edit>table td:first-child {
    padding-right: 1rem;
}

.edit>table td.original {
    background-color: #f0f0f0
}

table.fsm {
    border-spacing: 2px;
    border-collapse: separate;
    color: black;
}

table.fsm>tbody>tr>td {
    border-top: 1px solid grey;
    border-left: 1px solid grey;
    height: 1.5rem;
}

table.fsm>thead>tr>th,
table.fsm>thead>td {
    border-bottom-width: 0px !important
}