.nav-link.active {
    . bg-gradient-success
}

input.form-control[type=number],
select.form-control {
    height: calc(1.5em + .75rem + 2px);
}

input[id^=DTE_Field] {
    max-width: 100%;
    width: 100%;
}

tr:hover {
    cursor: pointer;
}

#current_levels tr:hover td:first-child {
    cursor: grab;
}

.selected-checkbox, .considering-checkbox {
    height: 20px;
    width: 20px;
    margin-top: 5px;
}

.modal-dialog {
    max-width: 1000px;
}

.session-name-required {
    color: red;
}

.session-name-required-input {
    border: solid red 1px !important;
}

.closed-session-message {
    font-size: 25px;
    font-weight: bold;
    padding-bottom: 20px;
}

.acs-fieldset {
    border: 0;
}

.acs-divider {
    height: 2px;
    background-color: black;
}

#session_name {
    width: 100%;
    font-size: 26px;
}

#acs-container {
    /*width: 1400px;
    margin-left: -10%;*/
}

#considering-table thead tr:first-child th,
#results-table thead tr:first-child th {
    border-left: 0;
    border-right: 0;
    border-top: 0;
}

#considering-table thead tr:first-child th:last-child,
#results-table thead tr:first-child th:last-child {
    border-right: solid 1px rgb(209, 209, 209);
}

.grabbable:hover {
    cursor: move;
}

#ssb-fields-list {
    max-height: 500px;
    overflow: auto;
}

#ssb_report {
    width: 100%;
    overflow: hidden;
}

.ssb-legend {
    position: absolute;
    top: -32px;
    left: 16px;
    font-size: 1.5em;
}

.ssb-fieldset {
    border-style: solid;
    border-width: 1px;
    border-color: var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    -webkit-box-shadow: 0px 0px 0px 0px #000;
    box-shadow: 0px 0px 0px 0px #000;
    position: relative;
    margin-top: 6em;
    background-color: var(--bs-light);
}

.ssb-bottom-right {
    position: absolute;
    bottom: 20px;
    right: 20px;
}

.toggle-handle {
    background-color: white;
    border: thin rgba(0, 0, 0, .25) solid;
}

.btn-xs,
.btn-group-xs > .btn {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}

.ssb-select-inline {
    border: 1px solid lightgray;
}

#ssb_report td {
    text-transform: capitalize;
}

.ssb_iframe iframe {
    width: 100%;
    height: 300px;
    resize: both;
    overflow: auto;
}

.ssb_iframe {

}

.ui-resizable-helper {
    border: 1px dotted gray;
}

.resizable {
    display: block;
    width: 400px;
    height: 400px;
    padding: 30px;
    border: 2px solid gray;
    overflow: hidden;
    position: relative;
}

#ssb-checkin-report-table.dataTable tbody td {
    vertical-align: top;
}

#ssb-checkin-report-table.dataTable tbody th {
    vertical-align: top;
}

.ssb-session-list-container .dataTables_length {
    margin-top: 15px;
}

.details-control {
    text-align: center;
}

tr.ssb-session-conflict td {
    background-color: #f8d7da !important;
    color: #721c24 !important;
}

tr.ssb-session-ready td {
    color: #155724 !important;
    background-color: #d4edda !important;
    border-color: #c3e6cb !important;
}

tr.ssb-session-warning td {
    color: #9C5700 !important;
    background-color: #fff3cd !important;
    border-color: #9C5700 !important;
}

.ssb-acs-status {
    font-size: 16px;
}

.md-stepper-horizontal {
    display: table;
    width: 100%;
    margin: 0 auto;
    background-color: #FFFFFF;
    /*box-shadow: 0 3px 8px -6px rgba(0,0,0,.50);*/
}

.md-stepper-horizontal .md-step {
    display: table-cell;
    position: relative;
    padding: 24px;
}

.md-stepper-horizontal .md-step:hover,
.md-stepper-horizontal .md-step:active {
    background-color: rgba(0, 0, 0, 0.04);
}

.md-stepper-horizontal .md-step.disabled,
.md-stepper-horizontal .md-step.disabled {
    pointer-events: none;
}

.md-stepper-horizontal .md-step:active {
    border-radius: 15% / 75%;
}

.md-stepper-horizontal .md-step:first-child:active {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.md-stepper-horizontal .md-step:last-child:active {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.md-stepper-horizontal .md-step:hover .md-step-circle {
    background-color: #757575;
}

.md-stepper-horizontal .md-step:first-child .md-step-bar-left,
.md-stepper-horizontal .md-step:last-child .md-step-bar-right {
    display: none;
}

.md-stepper-horizontal .md-step .md-step-circle {
    width: 30px;
    height: 30px;
    margin: 0 auto;
    background-color: #999999;
    border-radius: 50%;
    text-align: center;
    line-height: 30px;
    font-size: 16px;
    font-weight: 600;
    color: #FFFFFF;
}

.md-stepper-horizontal.green .md-step.active .md-step-circle {
    background-color: #00AE4D;
}

.md-stepper-horizontal.orange .md-step.active .md-step-circle {
    background-color: #F96302;
}

.md-stepper-horizontal .md-step.active .md-step-circle {
    background-color: rgb(33, 150, 243);
}

.md-stepper-horizontal .md-step.done .md-step-circle:before {
    font-family: 'FontAwesome';
    font-weight: 100;
    content: "\f00c";
}

.md-stepper-horizontal .md-step.done .md-step-circle *,
.md-stepper-horizontal .md-step.editable .md-step-circle * {
    display: none;
}

.md-stepper-horizontal .md-step.editable .md-step-circle {
    -moz-transform: scaleX(-1);
    -o-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}

.md-stepper-horizontal .md-step.editable .md-step-circle:before {
    font-family: 'FontAwesome';
    font-weight: 100;
    content: "\f040";
}

.md-stepper-horizontal .md-step .md-step-title {
    margin-top: 16px;
    font-size: 16px;
    font-weight: 600;
}

.md-stepper-horizontal .md-step .md-step-title,
.md-stepper-horizontal .md-step .md-step-optional {
    text-align: center;
    color: rgba(0, 0, 0, .26);
}

.md-stepper-horizontal .md-step.active .md-step-title {
    font-weight: 600;
    color: rgba(0, 0, 0, .87);
}

.md-stepper-horizontal .md-step.active.done .md-step-title,
.md-stepper-horizontal .md-step.active.editable .md-step-title {
    font-weight: 600;
}

.md-stepper-horizontal .md-step .md-step-optional {
    font-size: 12px;
}

.md-stepper-horizontal .md-step.active .md-step-optional {
    color: rgba(0, 0, 0, .54);
}

.md-stepper-horizontal .md-step .md-step-bar-left,
.md-stepper-horizontal .md-step .md-step-bar-right {
    position: absolute;
    top: 36px;
    height: 1px;
    border-top: 1px solid #DDDDDD;
}

.md-stepper-horizontal .md-step .md-step-bar-right {
    right: 0;
    left: 50%;
    margin-left: 20px;
}

.md-stepper-horizontal .md-step .md-step-bar-left {
    left: 0;
    right: 50%;
    margin-right: 20px;
}

.ssb_session_list table.dataTable tbody td {
    vertical-align: top;
}

.ssb-missing-session-data {
    background-color: #fff3cd !important;
}

.ssb-session-btn {
    padding-left: 0px;
    padding-right: 0px;
}

.ssb-session-btn button {
    padding: .375rem;
}

.acs-sortable .sorting {
    background-position: 100% 18%;
}

.ssb-popover {
    max-width: 600px !important;
}

.ssb-popover-button {
    padding: unset;
}

.ssb_upsell_label {
    visibility: hidden;
}

.ssb-scroll-margin {
    scroll-margin-top: 150px
}

.ssb-select-form-floating .choices {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
    margin-bottom: unset;
    align-self: flex-end;
    bottom: 0;
}

.ssb-select-form-floating .choices .choices__inner {
    border-left: unset;
    border-right: unset;
    border-bottom: unset;
    border-top: unset;
}

.ssb-select-form-floating {
    display: inline-flex;
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
    border: var(--bs-border-width) solid var(--bs-border-color);
    min-height: 3em;
    align-self: flex-end;
    border-top-right-radius: var(--bs-border-radius);
    border-bottom-right-radius: var(--bs-border-radius);
    transition: min-height 0.3s ease-in-out;
}

.ssb-select-form-floating .ssb-label {
    display: none;
    position: absolute;
    top: 4px;
    padding-left: 12px;
}

.ssb-select-form-floating:has(.choices__item--selectable.is-selected) {
    min-height: 6em;
}

.ssb-select-form-floating:has(.choices__item--selectable.is-selected) .choices .choices__inner {
    border-top: 1px solid #ddd;
}

.ssb-select-form-floating:has(.choices__item--selectable.is-selected) .ssb-label {
    display: inline-block;
}

.form-switch .form-check-input {
    background-repeat: no-repeat;
    margin-top: 0.25em;
}

.DTE_Inline .DTE_Field_Label,
.DTE_Inline .DTE_Field_Input {
    display: block; /* Force them to stack vertically */
    width: 100%; /* Make them take the full width of the container */
    box-sizing: border-box; /* Ensures padding doesn't affect the width */
}

.DTE_Inline .DTE_Field_Label {
    margin-bottom: 6px;
    font-weight: bold;
}

.choices__item--choice {
    display: flex !important;
    flex-direction: column !important; /* Stack item content and hint vertically */
    align-items: flex-start !important; /* Align them to the left */
    padding-bottom: 8px !important; /* Add a little extra space at the bottom */
}

.choices__item__select-text {
    font-size: 0.75rem !important; /* Make the font a bit smaller */
    margin-top: 4px !important; /* Add space between the item and the hint */
}

.ssb-submission {
    text-indent: -10px;
    padding-left: 10px;
    margin-left: 10px;
}

.ssb-fieldset .ssb-select-form-standalone .choices__inner {
    background-color: var(--bs-light);
    border-radius: var(--bs-border-radius);
}

.ssb-fieldset .ssb-select-form-standalone .choices__inner .is-child {
    padding-left: 20px;
}

/* 🎯 Target: Level 2 nested items (grandchildren) */
.ssb-fieldset .ssb-select-form-standalone .choices__inner .is-grandchild {
    padding-left: 40px;
}

.ssb-select-form-standalone {

}