.shiny-panel-conditional, div:where(.shiny-html-output) { /* uiOutput()/ conditionalPanel() are "pass-through" containers when they have children. */ } .shiny-panel-conditional:has(> *), div:where(.shiny-html-output):has(> *) { display: contents; /* Pass along styles that no longer impact the pass-through container */ } .shiny-panel-conditional:has(> *).recalculating > *, div:where(.shiny-html-output):has(> *).recalculating > * { opacity: var(--_shiny-fade-opacity); } /* This is necessary so that an empty verbatimTextOutput slot is the same height as a non-empty one (only important when * placeholder = TRUE) */ pre.shiny-text-output:empty::before { content: " "; } pre.shiny-text-output.noplaceholder:empty { margin: 0; padding: 0; border-width: 0; height: 0; } /* Some browsers (like Safari) will wrap text in
tags with Bootstrap's CSS. This changes the behavior to not wrap. */ pre.shiny-text-output { word-wrap: normal; border-radius: 0.375rem; } .shiny-image-output img.shiny-scalable, .shiny-plot-output img.shiny-scalable { max-width: 100%; max-height: 100%; } #shiny-disconnected-overlay { position: fixed; inset: 0; background-color: RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.42); opacity: 0.5; overflow: hidden; z-index: 99998; pointer-events: none; } html.autoreload-enabled #shiny-disconnected-overlay.reloading { opacity: 0; animation: fadeIn 250ms forwards; animation-delay: 1s; } @keyframes fadeIn { to { opacity: 0.1; } } .table.shiny-table > thead > tr > th, .table.shiny-table > thead > tr > td, .table.shiny-table > tbody > tr > th, .table.shiny-table > tbody > tr > td, .table.shiny-table > tfoot > tr > th, .table.shiny-table > tfoot > tr > td { padding-right: 12px; padding-left: 12px; } .shiny-table.spacing-xs > thead > tr > th, .shiny-table.spacing-xs > thead > tr > td, .shiny-table.spacing-xs > tbody > tr > th, .shiny-table.spacing-xs > tbody > tr > td, .shiny-table.spacing-xs > tfoot > tr > th, .shiny-table.spacing-xs > tfoot > tr > td { padding-top: 3px; padding-bottom: 3px; } .shiny-table.spacing-s > thead > tr > th, .shiny-table.spacing-s > thead > tr > td, .shiny-table.spacing-s > tbody > tr > th, .shiny-table.spacing-s > tbody > tr > td, .shiny-table.spacing-s > tfoot > tr > th, .shiny-table.spacing-s > tfoot > tr > td { padding-top: 5px; padding-bottom: 5px; } .shiny-table.spacing-m > thead > tr > th, .shiny-table.spacing-m > thead > tr > td, .shiny-table.spacing-m > tbody > tr > th, .shiny-table.spacing-m > tbody > tr > td, .shiny-table.spacing-m > tfoot > tr > th, .shiny-table.spacing-m > tfoot > tr > td { padding-top: 8px; padding-bottom: 8px; } .shiny-table.spacing-l > thead > tr > th, .shiny-table.spacing-l > thead > tr > td, .shiny-table.spacing-l > tbody > tr > th, .shiny-table.spacing-l > tbody > tr > td, .shiny-table.spacing-l > tfoot > tr > th, .shiny-table.spacing-l > tfoot > tr > td { padding-top: 10px; padding-bottom: 10px; } .shiny-table .NA { color: RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.46); } .shiny-output-error { color: var(--bs-danger); white-space: pre-wrap; } .shiny-output-error:before { content: 'Error: '; font-weight: bold; } .shiny-output-error-validation { color: RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.5); } .shiny-output-error-validation:before { content: ''; font-weight: inherit; } /* Work around MS Edge transition bug (issue #1637) */ @supports (-ms-ime-align: auto) { .shiny-bound-output { transition: 0; } } .recalculating { --_shiny-fade-opacity: var(--shiny-fade-opacity, 0.3); opacity: var(--_shiny-fade-opacity); transition: opacity 250ms ease 500ms; } .slider-animate-container { text-align: right; margin-top: -9px; } .slider-animate-button { /* Ensure controls above slider line touch target */ position: relative; z-index: 1; opacity: 0.5; } .slider-animate-button .pause { display: none; } .slider-animate-button.playing .pause { display: inline; } .slider-animate-button .play { display: inline; } .slider-animate-button.playing .play { display: none; } .progress.shiny-file-input-progress { visibility: hidden; } .progress.shiny-file-input-progress .progress-bar.bar-danger { transition: none; } .btn-file { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; } /* Make sure the filename doesn't extend past the bounds of the container */ .shiny-input-container input[type=file] { overflow: hidden; max-width: 100%; } /* Old-style progress */ .shiny-progress-container { position: fixed; top: 0px; width: 100%; /* Make sure it draws above all Bootstrap components */ z-index: 2000; } .shiny-progress .progress { position: absolute; width: 100%; top: 0px; height: 3px; margin: 0px; } .shiny-progress .bar { opacity: 0.6; transition-duration: 250ms; } .shiny-progress .progress-text { position: absolute; right: 10px; width: 240px; background-color: RGBA(var(--bs-primary-rgb, 47, 164, 231), 0.05); margin: 0px; padding: 2px 3px; opacity: 0.85; } .shiny-progress .progress-text .progress-message { padding: 0px 3px; font-weight: bold; font-size: 90%; } .shiny-progress .progress-text .progress-detail { padding: 0px 3px; font-size: 80%; } /* New-style progress (uses notifications API) */ .shiny-progress-notification .progress { margin-bottom: 5px; height: 10px; } .shiny-progress-notification .progress-text .progress-message { font-weight: bold; font-size: 90%; } .shiny-progress-notification .progress-text .progress-detail { font-size: 80%; } .shiny-label-null { display: none; } .crosshair { cursor: crosshair; } .grabbable { cursor: grab; cursor: -moz-grab; cursor: -webkit-grab; } .grabbing { cursor: grabbing; cursor: -moz-grabbing; cursor: -webkit-grabbing; } .ns-resize { cursor: ns-resize; } .ew-resize { cursor: ew-resize; } .nesw-resize { cursor: nesw-resize; } .nwse-resize { cursor: nwse-resize; } /* Workaround for Qt, which doesn't use font fallbacks */ .qt pre, .qt code { font-family: monospace !important; } /* Workaround for Qt 5, which draws its own margins around checks and radios; overrides the top margin on these elements set by Bootstrap */ .qt5 .radio input[type="radio"], .qt5 .checkbox input[type="checkbox"] { margin-top: 0px; } /* Workaround for radio buttons and checkboxes not showing on Qt on Mac. This occurs in the RStudio IDE on macOS 11.5. https://github.com/rstudio/shiny/issues/3484 */ .qtmac input[type="radio"], .qtmac input[type="checkbox"] { zoom: 1.0000001; } .shiny-frame { border: none; } .shiny-flow-layout > div { display: inline-block; vertical-align: top; padding-right: 12px; width: 220px; } .shiny-split-layout { width: 100%; white-space: nowrap; } .shiny-split-layout > div { display: inline-block; vertical-align: top; box-sizing: border-box; overflow: auto; } .shiny-input-panel { padding: 6px 8px; margin-top: 6px; margin-bottom: 6px; background-color: RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.04); border: 1px solid var(--bs-border-color, #dee2e6); border-radius: 0.375rem; } /* For checkbox groups and radio buttons, bring the options closer to label, if label is present. */ .shiny-input-checkboxgroup label ~ .shiny-options-group, .shiny-input-radiogroup label ~ .shiny-options-group { margin-top: -10px; } /* Checkbox groups and radios that are inline need less negative margin to separate from label. */ .shiny-input-checkboxgroup.shiny-input-container-inline label ~ .shiny-options-group, .shiny-input-radiogroup.shiny-input-container-inline label ~ .shiny-options-group { margin-top: -1px; } /* Limit the width of inputs in the general case. */ .shiny-input-container:not(.shiny-input-container-inline) { width: 300px; max-width: 100%; } /* Don't limit the width of inputs in a sidebar. */ .well .shiny-input-container { width: auto; } /* Width of non-selectize select inputs */ .shiny-input-container > div > select:not(.selectized) { width: 100%; } /* Styling for textAreaInput(autoresize=TRUE) */ textarea.textarea-autoresize.form-control { padding: 5px 8px; resize: none; overflow-y: hidden; height: auto; } #shiny-notification-panel { position: fixed; bottom: 0; right: 0; background-color: rgba(0, 0, 0, 0); padding: 2px; width: 300px; max-width: 100%; z-index: 99999; } .shiny-notification { position: relative; background-color: var(--bs-body-bg, #fff); color: var(--bs-emphasis-color, #000); border: 1px solid var(--bs-border-color, #dee2e6); border-radius: 0.375rem; opacity: 0.85; padding: 10px 2rem 10px 10px; margin: 5px; } .shiny-notification-message { color: var(--bs-info-text-emphasis); background-color: var(--bs-info-bg-subtle); border: 1px solid var(--bs-info-border-subtle); } .shiny-notification-warning { color: var(--bs-warning-text-emphasis); background-color: var(--bs-warning-bg-subtle); border: 1px solid var(--bs-warning-border-subtle); } .shiny-notification-error { color: var(--bs-danger-text-emphasis); background-color: var(--bs-danger-bg-subtle); border: 1px solid var(--bs-danger-border-subtle); } .shiny-notification-close { position: absolute; width: 2rem; height: 2rem; top: 0; right: 0; display: flex; align-items: center; justify-content: center; font-weight: normal; font-size: 1.125em; padding: 0.25rem; color: RGBA(var(--bs-emphasis-color-rgb, 0, 0, 0), 0.8); cursor: pointer; } .shiny-notification-close:hover { color: RGB(var(--bs-emphasis-color-rgb, 0, 0, 0)); font-weight: bold; } .shiny-notification-content-action a { color: RGB(var(--bs-primary-rgb, 47, 164, 231)); text-decoration: underline; font-weight: bold; } .shiny-file-input-active { box-shadow: 0 0 0 0.25rem rgba(47, 164, 231, 0.25); } .shiny-file-input-over { box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(76, 174, 76, 0.6); } /* Overrides bootstrap-datepicker3.css styling for invalid date ranges. See https://github.com/rstudio/shiny/issues/2042 for details. */ .datepicker table tbody tr td.disabled, .datepicker table tbody tr td.disabled:hover, .datepicker table tbody tr td span.disabled, .datepicker table tbody tr td span.disabled:hover { color: var(--bs-tertiary-color); cursor: not-allowed; } /* Hidden tabPanels */ .nav-hidden { /* override anything bootstrap sets for `.nav` */ display: none !important; }