.bgWrapper {
    background: linear-gradient(#003365, transparent);
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center;
    display: table;
}

.right {
    float: right;
}

.requiredFieldsLabels {
    color: #ff0000;
}

.navbar-static-top {
    border-bottom: 0;
}

#developmentStatusMessage {
    background: #d9534f;
    color: #FFFFFF;
    font-size: 11px;
    padding: 5px;
    text-align: center;
    position: sticky;
    width: 100%;
    left: 0;
}

#developmentStatusMessage a {
    color: #ffffff;
    text-decoration: underline;
}

#developmentStatusMessage .warningTitle {
    font-weight: bold;
    font-size: 13px;
}

#main {
    display: table;
    width: 100%;
}

#ip-adminUser {
    display: block;
    border-bottom: solid 1px #c0c6a2;
    padding-bottom: 5px;
}

#ip-adminUser ul {
    margin: 0;
    padding: 0;
}

#search {
    background-color: #ddd;
}

#search ul {
    padding: 0;
    margin: 0;
}

.listHolder {
    margin: 0 0 10px 0;
    padding-bottom: 9px;
}

.noSidebar ul li {
    cursor: pointer;
    position: relative;
}

.noSidebar > ul > li:hover {
    background: #ddd;
}

.noSidebar ul li {
    text-align: center;
}

ul li .sidebar-contentBox li {
    padding: 8px 5px;
    border-bottom: 1px solid #ccc;
    background-color: #EDF2F8;
}

ul li .sidebar-contentBox img {
    display: block;
    width: 100%;
}

ul li .icon {
    font-size: 20px;
}

#sidebarToggle .fa {
    font-size: 20px;
}

.noSidebar ul li:hover .icon {
    color: #3c7aab;
}

ul li .expandState {
    font-size: 17px;
    padding-top: 3px;
    float: right;
}

li.even a,
li.odd a {
    color: #333;
    display: block;
}

span.quicklookNumber {
    float: right;
    color: #333;
    font-weight: bold;
}

.noSidebar h2 {
    padding: 0;
}

h2 .sidebar-contentTitle {
    padding-left: 6px;
}

.noSidebar h2 .sidebar-contentTitle,
.noSidebar h2 .expandState {
    display: none;
}

.noSidebar .sidebar-contentBox {
    display: none;
    position: absolute;
    left: 55px;
    top: 0;
    width: 200px;
}

.noSidebar .sidebar-contentBox li {
    text-align: left;
}

#historyContent {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

ul li#sidebarToggle {
    border-bottom: solid 1px #DEE3E9;
    background-color: #E2E6EF;
    cursor: pointer;
    text-align: right;
    padding-right: 10px;
}

.noSidebar ul li #sidebarToggle:hover {
    text-decoration: none;
}

#sidebarToggle .fa-angle-double-right {
    display: none;
}

.noSidebar ul li#sidebarToggle {
    padding-right: 0;
    text-align: center;
}

#data.noSidebar #sidebarToggle .fa-angle-double-left {
    display: none;
}

#data.noSidebar #sidebarToggle .fa-angle-double-right {
    display: inline-block;
}

div#ip-adminView {
    display: block;
    border: 1px solid #bbb;
    height: auto;
    position: relative;
}

#ip-adminView table.viewTable {
    border: 1px solid #cccccc;
}

#ip-adminView table.viewTable th,
#ip-adminView table.viewTable td {
    padding: 3px 3px;
    border-left: 1px solid #cdcdcd;
}

#ip-adminView table tr.odd {
    background-color: #efefef;
    width: 100%;
}

#ip-adminView table tr.even {
    background-color: #fff;
    width: 100%;
}

#ip-adminView .reportBody.solidTop td {
    border-top: 1px solid #888888;
}

#ip-adminView table .odd_hover,
#ip-adminView table .odd_hover a,
#ip-adminView table .odd_hover a:link,
#ip-adminView table .odd_hover a:hover,
#ip-adminView table .odd_hover a:active,
#ip-adminView table .odd_hover a:visited,
#ip-adminView table .even_hover,
#ip-adminView table .even_hover a,
#ip-adminView table .even_hover a:link,
#ip-adminView table .even_hover a:hover,
#ip-adminView table .even_hover a:active,
#ip-adminView table .even_hover a:visited {
    background-color: #cfe9ff;
    color: #000000;
}

#ip-adminView table .even.FFFF78,
#ip-adminView table .odd.FFFF78 {
    background-color: #FFFF78;
}

#ip-adminView ul.setupGroup a {
    color: #369;
    text-decoration: none;
}

#ip-adminView ul.setupGroup a:hover {
    color: #036;
    text-decoration: underline;
}

#ip-adminView a {
    color: #369;
    text-decoration: none;
}

#ip-adminView .ui-accordion-header a,
#ip-adminView .ip-button a {
    text-decoration: none;
}

#ip-adminView a:hover,
#ip-adminView a:hover i {
    color: #036;
    text-decoration: none;
}

#ip-adminView ul.bullet li {
    list-style-type: disc;
    margin-left: 20px;
}

#ip-adminViewFooter {
    background: #f5f5f5;
    border-radius: 0 0 7px 7px;
    border-style: solid;
    border-width: 0 1px 1px 1px;
    border-color: #bbb;
    height: 35px;
}

#ip-adminViewFooter * {
    box-sizing: content-box;
}

#ip-adminViewFooter .ip-adminViewFooterRight {
    float: right;
    width: 10px;
    height: 100%;
}

#ip-adminViewFooter .ip-adminViewFooterLeft {
    float: left;
    width: 10px;
    height: 100%;
}

#footer ul {
    margin-top: 8px;
    font-size: 8pt;
    clear: both;
    display: block;
}

#footer ul li {
    list-style-type: none;
    margin-left: 20px;
    display: inline-block;
}

#footer ul li#support {
    float: right;
    list-style-type: none;
    margin-right: 20px;
}

ul.setupGroup {
    list-style-type: none;
}

#IPTooltip {
    border: 1px solid #404040;
    background-color: #fcfef1;
    width: 200px;
    display: none;
    position: absolute;
    z-index: 60;
    padding: 4px;
}

#IPTooltip h2 {
    margin: 0 0 5px 0;
    font-size: 14px;
    padding-left: 4px;
}

#IPTooltip h1 {
    margin: 0 0 5px 0;
    font-size: 14px;
    padding: 2px;
    border-bottom: 1px solid #404040;
}

#IPTooltip p {
    padding: 0;
    margin: 0;
}

#TemplateFields div {
    border-bottom: none;
}

div.ip-elementToList {
    margin: 5px 0 0 0;
}

img.ip-deleteElementToListValue,
img.ip-moveElementToListValue {
    margin: 0 5px 0 0;
}

img.ip-deleteElementToListValue {
    cursor: pointer;
}

img.ip-moveElementToListValue {
    cursor: move;
}

input.hasDatepicker {
    background: #fff url(/assets/famfamfam/calendar_view_month.png) no-repeat right;
}

#smartLoad {
    display: block;
    height: 19px;
    font-weight: bold;
}

.smartSelectLoading {
    background-image: url(../../images/loadingAnimation.gif);
    background-repeat: no-repeat;
    background-position: 0 0;
}

.ui-dialog .accordionHeader a {
    color: #036;
}

body.index_auxiliaryevents_grouped .sortableColumn div {
    float: none;
    margin-bottom: auto;
    position: static;
}

body.index_auxiliaryevents_grouped .sortableColumn div div.sortUp,
body.index_auxiliaryevents_grouped .sortableColumn div div.sortDown {
    float: none;
    margin-bottom: auto;
    position: static;
    margin-right: -10px;
}

body.index_auxiliaryevents_grouped .sortableColumn {
    padding-right: 0;
    float: left;
}

body.index_auxiliaryevents_grouped th.firstCell {
    float: none;
    margin: 0;
    position: static;
}

body.index_auxiliaryevents_grouped th.firstCell .sortableColumn div {
    float: none;
    margin-bottom: auto;
    position: static;
}

body.index_auxiliaryevents_grouped th.firstCell {
    height: auto;
}

.ip-submit {
    float: right;
    width: 100px;
}

.ip-prev {
    width: 100px;
    float: left;
}

.ip-addanother {
    float: right;
}

.split-cancel {
    cursor: pointer;
    display: inline-block;
    margin-top: 2px;
    margin-left: 8px;
}

#ip-adminViewHeader .ip-adminViewHeaderRight {
    min-width: 15px;
}

#ip-adminViewHeader {
    min-height: 35px;
    height: auto;
    width: auto;
    display: block;
    background: #f5f5f5;
    border-radius: 7px 7px 0 0;
    border-style: solid;
    border-width: 1px 1px 0 1px;
    border-color: #bbb;
}

#ip-adminViewHeader * {
    box-sizing: content-box;
}

img.promoCodeSearch {
    cursor: pointer;
    display: inline;
}

div.promoCodeSearchWrapper {
    float: right;
    margin-left: 3px;
}


body .cke_button__templatefields_label, div.ui-dialog .cke_button__templatefields_label {
    display: inline;
}

body .cke_button__templatefields_icon, div.ui-dialog .cke_button__templatefields_icon {
    display: none;
}

div.ip-container.cke_tpl_fld_list {
    padding-left: 5px;
    border: #dcdcdc 2px solid;
    background-color: #ffffff;
    overflow-y: auto;
    overflow-x: hidden;
    width: 100%;
    height: 220px;
}

.cke_dialog_body {
    z-index: 10200;
}

.reportDisplay#Waitlisting {
    padding-top: 10px;
    position: relative;
}

.reportDisplay#Waitlisting div.reportMenuHeader ul {
    padding: 8px 0 5px;
    position: absolute;
    right: 10px;
    top: -42px;
}

div#waitlistSeats {
    float: right;
    margin: 30px 20px 0;
    width: auto;
}

div.ip-container span.ip-elementContent input.ip-formText.smallTextBox {
    width: 30px;
}

.nums {
    background-color: #336699;
    color: white;
    font-size: 18px;
    padding: 5px 15px;
    text-align: center;
    vertical-align: middle;
}

.housingRequestProfile {
    width: 800px;
}

div.ip-filterForm-menu > div.chz-container {
    min-width: 200px;
}

.ip-modal-loadingDialog .ui-dialog-content {
    color: #5c9ccc;
    font-size: 24px;
    font-weight: bold;
    padding: 10px;
    text-align: center;
    text-transform: uppercase;
}

.ip-modal-loadingDialog .ui-dialog-titlebar {
    display: none;
}

.ui-dialog.ip-modal-loadingDialog {
    border: 2px solid #5c9ccc;
    box-shadow: 0px 0px 13px #888;
}

.ip-modal-loadingDialog .ui-dialog-content .ip-modal-loadingDialog-image {
    padding-top: 10px;
}

div.accordionBody div a.ip-templateFieldItem {
    margin-left: 20px;
    white-space: normal;
}

#ip-adminViewHeader.panelMenuHeader {
    min-width: 10px;
}

.panels-minimized-container {
    column-gap: 3rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
}

div#ip-adminViewHeader .ip-adminViewHeaderRight {
    float: right;
    min-height: 35px;
    height: auto !important;
}

div#ip-adminViewHeader .ip-adminViewHeaderLeft {
    display: block;
    float: left;
    min-height: 35px;
    height: auto !important;
    min-width: 15px;
}

div.reportMenuHeader ul:not(.chosen-results) li {
    list-style-type: none;
    float: right;
    display: block;
    background: url(../images/design/icons/exportIcons.png) no-repeat right top;
    margin-right: 10px;
    width: 38px;
}

div.reportMenuHeader ul li.fam {
    background-position: right -9999px;
    width: 19px;
    margin: -3px 10px -3px 0;
}

#proposalScaleRankingContainer select {
    width: 85px;
}

.proposalScaleRankingContainer {
    height: 40px;
}

#yourRanking-slider {
    width: 400px;
    float: left;
}

#yourRanking-slider label {
    position: absolute;
    width: 20px;
    margin-left: -10px;
    text-align: center;
    margin-top: 20px;
}

#yourRanking-slider.ui-corner-all {
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
}

#yourRanking-slider div.ui-corner-all {
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
}


#proposalRankingTypeLockedWarning {
    margin-left: 180px;
    margin-top: 10px;
    margin-right: 10px;
}

div.ui-widget-overlay {
    position: fixed;
    z-index: 51;
}

#ip-adminView .ui-accordion-header a {
    margin-left: 15px;
}

.ui-accordion-header.ui-accordion-icons a {
    padding-left: 2.2em;
}

#PrefsAccordion li {
    padding: 0.1875rem 0 0.1875rem 1.5em;
    text-indent: -1.5em;
    line-height: 1.4;
}

#PrefsAccordion li > input[type="radio"] {
    margin: 0 0.25rem 0 0;
    vertical-align: baseline;
}

#PrefsAccordion li > ul {
    margin: 0.25rem 0;
}

div.webServiceCallResults {
    white-space: pre;
}

table.financialSummary span.promoCodeLabel {
    font-weight: bold;
}

.colorPicker {
    border: 1px solid #cccccc;
    padding: 4px 3px;
}

.simpleEditor-previewImage {
    width: 187px;
    padding-bottom: 10px;
}

.simpleEditor-previewImage img {
    max-width: 187px;
    max-height: 187px;
}

.simpleEditor-previewImage .deleteLink {
    display: block;
    width: 100%;
}

.setupSubGroup {
    padding-left: 40px;
}

.AdminBreadCrumb {
    color: #333333;
    font-size: .6em;
    padding-left: 10px;
}

.AdminBreadCrumb span{
    color: #FF9900;
}

.AdminBreadCrumb a,
.AdminBreadCrumb a:hover,
.AdminBreadCrumb a:visited {
    color: #333333;
}

.settingsSearchBar, .fieldsSearchBar {
    background: #ddd;
}

.settingsSearchBar div.ip-element > label.ip-elementLabel {
    float: none;
    width: auto;
    margin-right: 0;
}

.settingsSearchBar #settingsSearch {
    margin-right: 15px;
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 4px 10px;
}

.sidebarItem {
    z-index: 10;
}

.login-panel div.ip-container .ip-elementContent input.ip-formText,
.login-panel div.ip-container .ip-elementContent input.ip-formPassword {
    width: 100%;
}

.login-panel .ip-elementContent,
.login-panel .ip-elementContent input {
    float: none;
}

.login-panel div.ip-element > label.ip-elementLabel[for="rememberMe"] {
    width: auto;
}

div.ip-filterForm-searchMode .ip-elementContent label {
    width: auto;
}

.EventGroupBox .GroupList .EventInfo .editIcon {
    font-size: 16px;
}

#ip-adminView .reportMenuHeader ul a,
#ip-adminView .reportMenuHeader ul a i {
    color: #fff;
}

.emailTemplateDropdown {
    padding-top: 8px;
    padding-right: 5px;
    float: right;
}

.reportDisplay .fa-stack {
    width: auto;
    height: auto;
    display: block;
    line-height: inherit;
}

.reportDisplay .fa-check-square-o {
    color: #006400;
}

.reportDisplay #ip-adminView a:hover .fa-check-square-o,
#ip-adminView .reportDisplay a:hover .fa-check-square-o {
    color: #003100;
}

.reportDisplay .fa-pencil-square {
    color: #ff8c00;
}

.reportDisplay #ip-adminView a:hover .fa-pencil-square,
#ip-adminView .reportDisplay a:hover .fa-pencil-square {
    color: #cc5900;
}

.reportDisplay .fa-check-circle {
    color: #457645;
}

.reportDisplay #ip-adminView a:hover .fa-check-circle,
#ip-adminView .reportDisplay a:hover .fa-check-circle {
    color: #124312;
}

.reportDisplay .fa-id-card-o {
    color: #333;
}

.reportDisplay #ip-adminView a:hover .fa-id-card-o,
#ip-adminView .reportDisplay a:hover .fa-id-card-o {
    color: #000;
}

.reportDisplay .fa-archive {
    color: #555;
}

.reportDisplay #ip-adminView a:hover .fa-archive,
#ip-adminView .reportDisplay a:hover .fa-archive {
    color: #222;
}

.reportDisplay .fa-archive.fa-unarchive {
    color: #006400;
}

.reportDisplay #ip-adminView a:hover .fa-archive.fa-unarchive,
#ip-adminView .reportDisplay a:hover .fa-archive.fa-unarchive {
    color: #003100;
}

.reportDisplay .fa-lock {
    color: #800000;
}

.reportDisplay #ip-adminView a:hover .fa-lock,
#ip-adminView .reportDisplay a:hover .fa-lock {
    color: #470000;
}

.reportDisplay .fa-ban {
    color: #800000;
}

.reportDisplay #ip-adminView a:hover .fa-ban,
#ip-adminView .reportDisplay a:hover .fa-ban {
    color: #470000;
}

.reportDisplay .fa-unlock {
    color: #006400;
}

.reportDisplay #ip-adminView a:hover .fa-unlock,
#ip-adminView .reportDisplay a:hover .fa-unlock {
    color: #003100;
}

.reportDisplay .fa-trash,
.reportDisplay .fa-times {
    color: #ce0000;
}

.reportDisplay #ip-adminView a:hover .fa-trash,
#ip-adminView .reportDisplay a:hover .fa-trash,
.reportDisplay #ip-adminView a:hover .fa-times,
#ip-adminView .reportDisplay a:hover .fa-times {
    color: #9B0000;
}

.reportDisplay .fa-files-o {
    color: #006400;
}

.reportDisplay #ip-adminView a:hover .fa-files-o,
#ip-adminView .reportDisplay a:hover .fa-files-o {
    color: #003100;
}

.reportDisplay .fa-download {
    color: #006400;
}

.reportDisplay #ip-adminView a:hover .fa-download,
#ip-adminView .reportDisplay a:hover .fa-download {
    color: #003100;
}

.reportDisplay .fa-flag {
    color: #FF0000;
}

.reportDisplay #ip-adminView a:hover .fa-flag,
#ip-adminView .reportDisplay a:hover .fa-flag {
    color: #CC0000;
}

@media all and (max-width: 1024px) {
    .topbar-label {
        display: none;
    }
}

a.cke_dialog_ui_button_cancel span.cke_dialog_ui_button {
    width: 100%;
}

div.ui-dialog div.ip-container {
    border-bottom: none;
}

#addValueButton:not(button) {
    color: #5cb85c;
    cursor: pointer;
}

.priceDeleteButton {
    font-size: 130%;
    color: #d9534f;
    padding: 0 2px;
}

.priceMoveButton {
    font-size: 130%;
    color: #5cb85c;
    padding: 0 2px;
}

span.spfBox {
    position: relative;
}

span.spfBox i.spfCheck {
    position: absolute;
    top: 3px;
    right: 3px;
    font-size: 1.5em;
}

@media (max-width: 1100px) {
    body.config_registration-badge-formats_edit .contentContainer #ip-adminView .ip-rightContainer {
        max-width: 100%;
        width: 100%;
    }
}

#supportEmail, #from {
    padding-right: 20px;
    text-overflow: ellipsis;
}

div.ip-element ul.select2-results__options {
    margin: 0px;
}

.ip-itemButton {
    cursor: pointer;
    padding-right: 5px;
}

div.ip-element ul.ip-elementToList {
    margin: 5px 0 0 0;
}

ul.ip-elementToList.ui-sortable {
    width: auto;
}

ul.ui-sortable li.ip-elementToListValue {
    cursor: default;
    margin: 6px 0;
    padding: 6px;
    line-height: 12px;
}

#searchBoxAnchor {
    padding: 10px;
}
#languagesTable_filter input {
    width: 300px;
}
#languageEditorOptions {
    padding-left: 8px;
}

#languagesTable_length,
#languagesTable_info {
    padding: 8px;
}
#languagesEditor .languageDesc {
    cursor: pointer;
}

#languagesEditor thead {
    background-color: #dddddd;
}

#ip-adminView #languagesEditor table tbody tr.odd {
    background-color: #ffffff;
}

#ip-adminView #languagesEditor table tbody tr.even {
    background-color: #efefef;
}

#ip-adminView #languagesEditor table tbody tr:hover {
    background-color: #cfe9ff;
}

#ip-adminView #languagesEditor table tbody td.languageEditCol:hover {
    background-color: #b3dafc;
}

#languagesEditor div.filterIcon {
    margin: 0;
}

#languagesEditor div.filterGrouping {
    z-index: 2;
    right: -95px !important; /* Necessary to keep box on screen */
}

#select2-displayColumnsSource-results li.select2-results__option--disabled {
    display: none;
}

.ip-report-header li:last-child {
    margin-bottom: 8px;
}

#ip-adminViewHeader .ip-search * {
    box-sizing: border-box;
}

.ip-search {
    padding: 5px 0 0 5px;
}

.ip-search .form-group {
    margin: 5px 0 0px 5px;
}

.ip-search [name="searchTerm"] {
    padding-right: 30px;
}

.ip-search-clear {
    margin-left: -29px;
}

.ip-search-highlight {
    background-color: #FFFF78;
}

.errorTooltip .tooltip.top .tooltip-arrow {
    border-top-color: #CF3738;
}

.errorTooltip .tooltip-inner {
    background-color: #CF3738;
}

/* Integration Settings pages - override inline width styles on description paragraphs */
body[class*="-integration-settings"] .ip-group > p[style*="width: 650px"] {
    width: 100% !important;
    margin-left: 0 !important;
}

/* manualAddressStatusDialog - let .ip-buttonBar size to its contents
   so buttons stay inside the dialog instead of overflowing below it.
   Overrides the 30px fixed height from IP-compat-v3.css. */
.manualAddressStatusDialog .ip-buttonBar {
    height: auto;
    padding: 10px 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
}

.manualAddressStatusDialog .ip-buttonBar .ip-save-cancel,
.manualAddressStatusDialog .ip-buttonBar .ip-button {
    float: none;
    margin: 0;
}

/* Vertically center legacy checkTree gif checkboxes/arrows with their labels (admin v3).
   The jQuery checkTree plugin (www/jquery/jquery.checktree.js) hides the native input and
   floats .arrow/.checkbox gif divs before the label; those floats don't line up with the
   label baseline under Bootstrap's line-height, and no .checktree styling existed. */
ul.checktree li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 4px;
}

ul.checktree li .arrow,
ul.checktree li .checkbox {
    float: none;
    flex: 0 0 auto;
}

/* The legacy gif sprites draw their art near the top of the canvas, so once the
   box is flex-centered the visible glyph still reads high against the label.
   Recenter the art within its box so it lines up with the label text. The
   `div` qualifier outranks jquery.checktree.css's equal-specificity rule so the
   override wins regardless of stylesheet load order. */
ul.checktree li div.arrow {
    background-position: 0 center;
}

ul.checktree li div.checkbox {
    background-position: 0 -3px;
}

ul.checktree li > label {
    padding: 0;
}

/* Subtree drops to its own line, keeping the existing left indent */
ul.checktree li > ul {
    flex: 0 0 100%;
}

/* DatePickerWithEnableCheckbox (e.g. Auth Token "Expiration Date"): render the enable
   checkbox inline beside the date input instead of stacked. In admin v3 the checkbox is a
   block .form-check, which pushed the date field onto its own line; making the content a
   flex row places them side by side (and neutralises the helper's inline float on the input). */
.ip-elementContent:has(> input.ip-formElementEnableWithCheckbox) {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ip-elementContent:has(> input.ip-formElementEnableWithCheckbox) > .form-check {
    flex: 0 0 auto;
}

/* Session Schedule report — v2 markup (custom selectBox/.selectOptions room
   picker, inline-width form inputs from SessionsController) rendered inside
   the v3 admin layout. */

/* Unclip the room dropdown so .selectOptions can render outside the table. */
.report-container[data-report-name="Session Schedule"] .table-wrapper,
.report-container[data-report-name="Session Schedule"] .table-responsive,
.report-container[data-report-name="Session Schedule"] .table-expanded {
    overflow: visible;
}

/* Match .ts-dropdown convention to sit above modals (z-index: 1055). */
.report-container[data-report-name="Session Schedule"] div.selectOptions {
    z-index: 1060;
}

/* Bootstrap form-control padding makes the legacy inline 70px / 55px widths
   from SessionsController too narrow to show the value. !important because
   the controller emits the width as an inline style attribute. */
.report-container[data-report-name="Session Schedule"] tr.newRow select[name^="schedule["][name$="[date]"] {
    width: auto !important;
    min-width: 9rem;
}

.report-container[data-report-name="Session Schedule"] tr.newRow input[name^="schedule["][name$="[startTime]"],
.report-container[data-report-name="Session Schedule"] tr.newRow input[name^="schedule["][name$="[endTime]"] {
    width: 5.5rem !important;
}

.report-container[data-report-name="Session Schedule"] tr.newRow input[name^="schedule["][name$="[duration]"] {
    width: 4.5rem !important;

}

/* Bulk Email "Schedule" page - fix radio/label spacing and the vertical
   alignment of the Repeat (recurringInterval) and Stops (stops) sub-sections.
   The legacy form renders these with inline `float: left` styles, which
   collapses the radio-to-label gap and top-aligns the taller inputs above the
   small radio glyphs. Un-floating and centering them on the line fixes both;
   !important overrides the inline `float`/`margin` attributes the form emits.
   v3-only: this stylesheet is loaded exclusively by toStringVersion3(). */
.index_bulkemails_schedule label[for^="recurringInterval-"],
.index_bulkemails_schedule label[for^="stops-"],
.index_bulkemails_schedule label[for^="recurringInterval-"] > div,
.index_bulkemails_schedule label[for^="stops-"] > div,
.index_bulkemails_schedule div:has(> .requires-recurringInterval-every),
.index_bulkemails_schedule div:has(> .requires-stops-date),
.index_bulkemails_schedule div:has(> .requires-stops-times),
.index_bulkemails_schedule div:has(> .requires-stops-times) + div {
    float: none !important;
    display: inline-block;
    vertical-align: middle;
}

/* Centre the radio inputs with their labels. */
.index_bulkemails_schedule input[name="recurringInterval"],
.index_bulkemails_schedule input[name="stops"] {
    vertical-align: middle;
}

/* Drop the field wrappers' legacy top offset now that they're centered. */
.index_bulkemails_schedule div:has(> .requires-recurringInterval-every),
.index_bulkemails_schedule div:has(> .requires-stops-date),
.index_bulkemails_schedule div:has(> .requires-stops-times) {
    margin-top: 0 !important;
}

/* "Times" label sits a small gap after the stop-times input. */
.index_bulkemails_schedule div:has(> .requires-stops-times) + div {
    margin: 0 0 0 5px !important;
}

/* A bit more breathing room between the Stops "After" labels and their input
   boxes (the legacy inline 5px reads as touching). */
.index_bulkemails_schedule input.requires-stops-date,
.index_bulkemails_schedule input.requires-stops-times {
    margin-left: 10px !important;
}

/* Vertical gap between the two stacked Stops "After" rows (date row / times
   row), which otherwise sit flush against each other. */
.index_bulkemails_schedule div:has(> .requires-stops-date) {
    margin-bottom: 10px !important;
}

@media (min-width: 768px) {
    .task-checklist, .cat-task-list {
        grid-column: 1 / -1;
    }
}

.cat-task-list input.form-check-input[type="checkbox"] {
    width: 0.833125rem; /* 13.33px */
    height: 0.833125rem; /* 13.33px */
}

/* Booth tab: align the Bootstrap 5 .form-check checkbox with the .ip-elementLabel icon offset above it */
.boothElement .form-check {
    padding-left: 1.45em;
}
