/* Large thumbnails */
.rfeLargeThumbnails .rfeThumbList {
    width: 140px !important; /*defines thumbnail wrapper dimension*/
}

    .rfeLargeThumbnails .rfeThumbList .rfeFile {
        /*the sum of the height and padding-top values should be equal to the height property defined in the rfeLargeThumbnails class*/
        width: 128px !important;
        height: 88px !important;
        padding-top: 20px !important;
    }

    .rfeLargeThumbnails .rfeThumbList .rfeImageFile.rfeFile {
        height: 128px !important;
        padding-top: 0 !important;
    }

    .rfeLargeThumbnails .rfeThumbList .rfeFile img {
        /*defines Image Preview Thumbnail dimension*/
        width: 128px !important;
        height: 128px !important;
    }


.previmage {
    width: 400px;
    height: 300px;
    vertical-align: middle;
}

#pvwImage {
    display: none;
    margin: 10px;
    width: auto;
    max-width: 100%;
    max-height: 650px;
    vertical-align: middle;
}

/* Bestandsbeheer layout */
.bbFileManager {
    display: flex;
    width: 100%;
    gap: 24px;
    align-items: flex-start;
    position: relative;
    min-height: 220px;
}

.bbInitialLoading {
    position: absolute;
    z-index: 100;
    inset: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 72px;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.94);
    transition: opacity 160ms ease, visibility 160ms ease;
}

.bbInitialLoadingDone {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.bbInitialLoadingBox {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 24px;
    border: 1px solid #d7d7d7;
    border-radius: 5px;
    background: #fff;
    color: #333;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    font: 15px/1.35 "Segoe UI", Arial, sans-serif;
}

.bbInitialLoadingBox strong,
.bbInitialLoadingBox small {
    display: block;
}

.bbInitialLoadingBox small {
    margin-top: 3px;
    color: #666;
    font-size: 12px;
}

.bbInitialLoadingSpinner {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    border: 4px solid #d9d9d9;
    border-top-color: #00a88f;
    border-radius: 50%;
    animation: bbInitialLoadingSpin 0.8s linear infinite;
}

@keyframes bbInitialLoadingSpin {
    to { transform: rotate(360deg); }
}

.bbExplorerPane {
    flex: 1 1 62%;
    min-width: 520px;
}

.bbPreviewPane {
    flex: 1 1 34%;
}

/* 00.01.42 - niet-destructieve DNN-consistentiecontrole in het rechtervenster */
.bbPreviewToolbarActions {
    display: flex;
    align-items: center;
    gap: 8px;
}

.bbPreviewToolbarButton.bbConsistencyButton {
    min-height: 28px;
    padding: 3px 10px;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    background: #fff;
    color: #333;
    font: 12px/20px "Segoe UI", Arial, sans-serif;
    cursor: pointer;
}

.bbPreviewToolbarButton.bbConsistencyButton:hover {
    background: #eee;
}

.bbPreviewToolbarButton.bbConsistencyButton:disabled {
    color: #777;
    cursor: wait;
}

.bbConsistencyPanel {
    height: 650px;
    overflow: auto;
    border: 1px solid #d7d7d7;
    background: #fff;
    padding: 14px;
    box-sizing: border-box;
    color: #333;
    font: 13px/1.45 "Segoe UI", Arial, sans-serif;
}

.bbConsistencyProgress {
    min-height: 220px;
    border: 1px solid #d7d7d7;
    background: #fff;
    padding: 22px;
    box-sizing: border-box;
    color: #333;
    font: 13px/1.5 "Segoe UI", Arial, sans-serif;
}

.bbProgressKeepOpen {
    margin: -6px 0 16px;
    color: #666;
    font-style: italic;
}

.bbConsistencyProgressHeading {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
    font-size: 15px;
}

.bbConsistencySpinner {
    width: 24px;
    height: 24px;
    border: 3px solid #d7d7d7;
    border-top-color: #0aa88f;
    border-radius: 50%;
    animation: bbConsistencySpin .8s linear infinite;
    box-sizing: border-box;
}

.bbConsistencySpinner.bbConsistencyComplete,
.bbConsistencySpinner.bbConsistencyFailed {
    position: relative;
    animation: none;
    border-color: #2e8b57;
    background: #2e8b57;
}

.bbConsistencySpinner.bbConsistencyFailed {
    border-color: #b42318;
    background: #b42318;
}

.bbConsistencyFinished .bbConsistencyProgressHeading {
    color: #267326;
}

.bbConsistencyHasFailed .bbConsistencyProgressHeading {
    color: #a00000;
}

@keyframes bbConsistencySpin {
    to { transform: rotate(360deg); }
}

.bbConsistencyProgressDetails {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 6px 12px;
    margin: 18px 0 0;
}

.bbConsistencyProgressDetails dt {
    font-weight: 600;
}

.bbConsistencyProgressDetails dd {
    margin: 0;
    overflow-wrap: anywhere;
}

.bbConsistencyLiveLog {
    height: 330px;
    margin: 18px 0 0;
    padding: 10px;
    overflow: auto;
    border: 1px solid #ddd;
    background: #fafafa;
    color: #333;
    font: 12px/1.45 Consolas, monospace;
    white-space: pre-wrap;
}

.bbConsistencyLogToolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
}

.bbConsistencyLogToolbar label {
    font-weight: 600;
}

.bbConsistencyLogToolbar select {
    min-width: 130px;
    padding: 4px 8px;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    background: #fff;
    color: #333;
}

/* 00.01.53 - rechter controlepaneel uitlijnen met het middelste FileExplorer-paneel */
html body .bbFileManager .bbPreviewPane > .bbPreviewToolbar {
    height: 52px !important;
    min-height: 52px !important;
}

html body .bbFileManager .bbPreviewPane > .bbConsistencyProgress {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

html body .bbFileManager .bbPreviewPane > .bbConsistencyProgress[style*="display:none"] {
    display: none !important;
}

html body .bbFileManager .bbConsistencyProgress .bbConsistencyLiveLog {
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
}

.bbConsistencyLogLine {
    display: block;
}

.bbConsistencyLiveLog.bbConsistencyOnlyIssues .bbConsistencyLogOk {
    display: none;
}

.bbConsistencyLogIssue,
.bbConsistencyIssueStatus {
    color: #b42318;
    font-weight: 700;
}

.bbConsistencyPanel ~ .bbPreviewContent,
.bbConsistencyPanel ~ .bbPropertiesPanel {
    display: none !important;
}

.bbConsistencyPanel h3 {
    margin: 0 0 6px;
    font-size: 16px;
}

.bbConsistencySummary {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0;
}

.bbConsistencyCount {
    padding: 5px 8px;
    border-radius: 3px;
    background: #eef5fa;
    border: 1px solid #cbdfea;
}

.bbConsistencyCount.bbWarning {
    background: #fff6df;
    border-color: #e3c978;
}

.bbConsistencyTable {
    width: 100%;
    border-collapse: collapse;
}

.bbConsistencyTable th,
.bbConsistencyTable td {
    padding: 6px 8px;
    border-bottom: 1px solid #e7e7e7;
    text-align: left;
    vertical-align: top;
}

.bbConsistencyTable th {
    position: sticky;
    top: 0;
    background: #f5f5f5;
    z-index: 1;
}

.bbConsistencyOk { color: #267326; }
.bbConsistencyIssue { color: #a34800; font-weight: 600; }
.bbConsistencyError { color: #a00000; font-weight: 600; }

body.bbViewerOpen {
    overflow: hidden;
}

.bbPreviewPane {
    box-sizing: border-box;
}

.bbPreviewTitle {
    font-weight: 600;
    font-size: 14px;
    margin: 0 0 8px 0;
    color: #333;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bbPdfPreviewFrame {
    width: 100%;
    height: 650px;
    border: 1px solid #ddd;
    background: #fff;
    box-sizing: border-box;
}

.bbViewerOverlay {
    position: fixed;
    z-index: 100000;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.55);
    align-items: center;
    justify-content: center;
    padding: 24px;
    box-sizing: border-box;
}

.bbViewerWindow {
    width: 92vw;
    height: 94vh;
    max-width: 1900px;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.bbViewerHeader {
    flex: 0 0 auto;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px 8px 16px;
    border-bottom: 1px solid #ddd;
    background: #f7f7f7;
    box-sizing: border-box;
}

.bbViewerTitle {
    font-weight: 600;
    font-size: 15px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    padding-right: 16px;
}

.bbViewerActions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
}

.bbViewerButton {
    display: inline-block;
    border: 1px solid #bbb;
    background: #fff;
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 13px;
    line-height: 18px;
    cursor: pointer;
    color: #333;
    text-decoration: none;
}

.bbViewerButton:hover {
    background: #eee;
    text-decoration: none;
}

.bbViewerClose {
    border: none;
    background: transparent;
    font-size: 30px;
    line-height: 30px;
    cursor: pointer;
    padding: 0 6px;
}

.bbViewerBody {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3f3f3;
}

.bbViewerPdfFrame {
    width: 100%;
    height: 100%;
    border: 0;
    background: #fff;
}

.bbViewerImage {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

@media (max-width: 900px) {
    .bbFileManager {
        flex-direction: column;
    }

    .bbExplorerPane,
    .bbPreviewPane {
        min-width: 0;
        width: 100%;
    }

    .bbPdfPreviewFrame {
        height: 520px;
    }

    .bbViewerOverlay {
        padding: 8px;
    }

    .bbViewerWindow {
        width: 98vw;
        height: 96vh;
    }

    .bbViewerHeader {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .bbViewerActions {
        flex-wrap: wrap;
    }
}


/* Recursieve zoekfunctie */
.bbSearchPanel {
    margin: 0 0 14px 0;
    padding: 12px;
    border: 1px solid #ddd;
    background: #f9f9f9;
    box-sizing: border-box;
}

.bbSearchHeader {
    font-weight: 600;
    margin-bottom: 8px;
    color: #333;
}

.bbSearchControls {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.bbSearchText {
    min-width: 260px;
    max-width: 520px;
    width: 34%;
    padding: 6px 8px;
    box-sizing: border-box;
}

.bbSearchButton {
    padding: 6px 12px;
}

.bbSearchHelp {
    margin-top: 6px;
    color: #666;
    font-size: 12px;
}

.bbSearchResults {
    margin-top: 10px;
    max-height: 220px;
    overflow: auto;
    border: 1px solid #e2e2e2;
    background: #fff;
}

.bbSearchResultItem {
    padding: 6px 8px;
    border-bottom: 1px solid #eee;
}

.bbSearchResultItem:last-child {
    border-bottom: none;
}

.bbSearchResultLink {
    font-weight: 600;
    text-decoration: none;
}

.bbSearchResultMeta {
    display: block;
    margin-top: 2px;
    color: #666;
    font-size: 12px;
}

/* Integrated search bar */
.bbIntegratedSearchBar {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 8px 10px;
    border: 1px solid #dedede;
    border-bottom: 0;
    background: #f7f7f7;
    box-sizing: border-box;
}

.bbIntegratedSearchTitle {
    font-weight: 600;
    margin-right: 4px;
    color: #333;
}

.bbIntegratedSearchText {
    width: 220px;
    min-height: 30px;
    box-sizing: border-box;
}

.bbIntegratedSearchButton {
    min-height: 30px;
    padding: 4px 12px;
    border: 1px solid #bcbcbc;
    background: #fff;
    border-radius: 3px;
    cursor: pointer;
}

.bbIntegratedSearchButton:hover {
    background: #eeeeee;
}

.bbSearchScope {
    margin: 0 4px;
    white-space: nowrap;
}

.bbSearchScope td {
    padding-right: 8px;
}

.bbSearchHint {
    padding: 6px 10px;
    border-left: 1px solid #dedede;
    border-right: 1px solid #dedede;
    background: #fff;
    font-size: 12px;
    color: #666;
}

.bbSearchResults {
    border: 1px solid #dedede;
    border-bottom: 0;
    background: #fff;
    max-height: 220px;
    overflow-y: auto;
}

.bbSearchResultItem {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 10px;
    border-bottom: 1px solid #eeeeee;
}

.bbSearchResultLink {
    font-weight: 600;
    min-width: 220px;
}

.bbSearchResultMeta {
    color: #666;
    font-size: 12px;
}

.bbExplorerPane > span[id$="litRecursiveSearchStatus"] {
    display: block;
    padding: 6px 10px;
    border-left: 1px solid #dedede;
    border-right: 1px solid #dedede;
    background: #fff;
    font-size: 12px;
}


/* Zoekbalk geïntegreerd in het Telerik/RadFileExplorer-blok */
.bbExplorerPane {
    position: relative;
}

.bbIntegratedSearchBar {
    position: absolute;
    top: 8px;
    right: 12px;
    z-index: 50;
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 0 0 0 8px;
    background: #f5f5f5;
    border-left: 1px solid #d8d8d8;
    box-sizing: border-box;
    font-size: 13px;
}

.bbIntegratedSearchTitle {
    font-weight: 600;
    color: #333;
    white-space: nowrap;
}

.bbIntegratedSearchText {
    width: 190px;
    height: 28px;
    box-sizing: border-box;
    border: 1px solid #c9c9c9;
    padding: 3px 6px;
    font-size: 13px;
}

.bbSearchScope {
    display: inline-block;
    margin: 0;
    padding: 0;
    white-space: nowrap;
}

.bbSearchScope table,
.bbSearchScope tbody,
.bbSearchScope tr,
.bbSearchScope td {
    margin: 0;
    padding: 0 3px 0 0;
    border: 0;
    display: inline-block;
    vertical-align: middle;
}

.bbSearchScope input {
    margin: 0 2px 0 4px;
    vertical-align: middle;
}

.bbSearchScope label {
    font-size: 13px;
    vertical-align: middle;
}

.bbIntegratedSearchButton {
    height: 30px;
    min-width: 52px;
    padding: 3px 10px;
    border: 1px solid #c9c9c9;
    background: #fff;
    border-radius: 3px;
    cursor: pointer;
    font-size: 13px;
}

.bbIntegratedSearchButton:hover {
    background: #eee;
}

.bbSearchResultsPanel {
    position: absolute;
    left: 8px;
    right: 8px;
    top: 48px;
    z-index: 45;
    max-height: 180px;
    overflow: auto;
    background: rgba(255, 255, 255, 0.97);
    border: 0;
    box-sizing: border-box;
}

.bbSearchResultsPanel:empty {
    display: none;
}

.bbSearchResults {
    border: 1px solid #ddd;
    border-top: 0;
    background: #fff;
}

.bbSearchResultItem {
    padding: 6px 10px;
    border-top: 1px solid #eee;
    line-height: 18px;
}

.bbSearchResultLink {
    font-weight: 600;
    color: #008a7a;
    text-decoration: none;
}

.bbSearchResultLink:hover {
    text-decoration: underline;
}

.bbSearchResultMeta {
    color: #555;
    margin-left: 12px;
    font-size: 12px;
}

@media (max-width: 1200px) {
    .bbIntegratedSearchBar {
        position: static;
        margin: 0 0 6px 0;
        padding: 6px;
        border: 1px solid #ddd;
        flex-wrap: wrap;
    }

    .bbSearchResultsPanel {
        position: static;
        max-height: 220px;
        margin-bottom: 6px;
    }
}


/* Search results integrated in the middle/right FileExplorer panel */
.bbExplorerHost {
    position: relative;
}

.bbSearchResultsPanel {
    position: absolute;
    left: 50%;
    right: 0;
    top: 76px;
    bottom: 0;
    z-index: 20;
    overflow: auto;
    background: #fff;
    border-left: 1px solid #d0d0d0;
    box-sizing: border-box;
    padding: 10px;
}

.bbSearchResultsHeader {
    padding: 0 0 8px 0;
    margin-bottom: 8px;
    border-bottom: 1px solid #e5e5e5;
    font-size: 13px;
    color: #333;
}

.bbSearchResults {
    margin: 0;
    max-height: none;
    border: 0;
    background: transparent;
    overflow: visible;
}

.bbSearchResultItem {
    display: grid;
    grid-template-columns: minmax(180px, 2fr) minmax(120px, 1.2fr) 90px 125px;
    gap: 10px;
    align-items: center;
    padding: 7px 6px;
    border-bottom: 1px solid #eeeeee;
}

.bbSearchResultItem:hover {
    background: #f7f7f7;
}

.bbSearchResultLink {
    font-weight: 600;
    text-decoration: none;
    color: #008c7a;
    min-width: 0;
    overflow-wrap: anywhere;
}

.bbSearchResultMeta {
    color: #666;
    font-size: 12px;
    overflow-wrap: anywhere;
}

/* 00.01.17 - zoekbalk rechts in de Telerik-toolbar en zoekresultaten als echte pane-overlay */
.bbExplorerHost {
    position: relative;
}

.bbIntegratedSearchBar {
    position: absolute !important;
    top: 8px !important;
    right: 10px !important;
    left: auto !important;
    z-index: 80 !important;
    display: flex !important;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 0 0 0 10px;
    background: #f5f5f5;
    border-left: 1px solid #d8d8d8;
    box-sizing: border-box;
    font-size: 13px;
}

.bbIntegratedSearchText {
    width: 190px;
    height: 28px;
    box-sizing: border-box;
}

.bbSearchResultsPanel {
    position: absolute !important;
    left: 50% !important;
    right: 0 !important;
    top: 76px !important;
    bottom: auto !important;
    height: 574px !important;
    z-index: 70 !important;
    overflow: auto !important;
    background: #fff !important;
    border-left: 1px solid #d0d0d0;
    box-sizing: border-box;
    padding: 10px;
}

.bbSearchActive .rfePane:last-child,
.bbSearchActive .rfeFileList,
.bbSearchActive .rfeThumbsContainer {
    visibility: hidden;
}

.bbSearchActive .bbSearchResultsPanel,
.bbSearchActive .bbSearchResultsPanel * {
    visibility: visible;
}

@media (max-width: 1200px) {
    .bbIntegratedSearchBar {
        position: static !important;
        margin: 0;
        padding: 6px;
        border-left: 0;
        border-bottom: 1px solid #ddd;
        flex-wrap: wrap;
    }

    .bbSearchResultsPanel {
        left: 0 !important;
        top: 94px !important;
        height: 556px !important;
    }
}


/* 00.01.18: zoekresultaten vullen het middelste/rechter Telerik-bestandenpaneel.
   Het onderliggende bestanden/folders-blok wordt volledig afgedekt tot Wis wordt gebruikt. */
.bbExplorerHost {
    position: relative;
}

.bbExplorerHost.bbSearchActive .bbSearchResultsPanel {
    position: absolute;
    left: calc(50% + 8px);
    right: 8px;
    top: 88px;
    bottom: 8px;
    z-index: 90;
    max-height: none;
    overflow: auto;
    background: #fff;
    border: 1px solid #dedede;
    box-sizing: border-box;
    padding: 8px 10px;
}

.bbExplorerHost.bbSearchActive .bbSearchResults {
    border: 0;
    background: #fff;
}

.bbExplorerHost.bbSearchActive .bbSearchResultsHeader {
    padding: 0 0 8px 0;
    margin-bottom: 6px;
    border-bottom: 1px solid #e5e5e5;
    font-size: 13px;
}

.bbExplorerHost.bbSearchActive .bbSearchResultItem {
    display: grid;
    grid-template-columns: minmax(220px, 1.6fr) minmax(120px, 1fr) 90px 130px;
    gap: 12px;
    align-items: center;
    padding: 7px 0;
    border-top: 0;
    border-bottom: 1px solid #eeeeee;
}

.bbExplorerHost.bbSearchActive .bbSearchResultMeta {
    margin-left: 0;
    color: #666;
    font-size: 12px;
}

@media (max-width: 1200px) {
    .bbExplorerHost.bbSearchActive .bbSearchResultsPanel {
        position: static;
        max-height: 320px;
        margin-bottom: 8px;
    }

    .bbExplorerHost.bbSearchActive .bbSearchResultItem {
        display: block;
    }

    .bbExplorerHost.bbSearchActive .bbSearchResultMeta {
        display: inline-block;
        margin-right: 10px;
    }
}

/* 00.01.19: Telerik interne Filter by uitgeschakeld/verborgen. */
.bbExplorerHost .rfeFilterBox,
.bbExplorerHost .rfeFilterTxt,
.bbExplorerHost .rfeFilterContainer,
.bbExplorerHost .rfeFilter {
    display: none !important;
}


/* 00.01.20: zoekresultaten actief = normale bestanden/folders in rechter paneel volledig verbergen. */
.bbExplorerHost.bbSearchActive .rfeFileList,
.bbExplorerHost.bbSearchActive .rfeThumbsContainer,
.bbExplorerHost.bbSearchActive .rfeGridContainer,
.bbExplorerHost.bbSearchActive .rfeListContainer {
    display: none !important;
}

.bbExplorerHost.bbSearchActive .bbSearchResultsPanel {
    display: block !important;
    background: #fff !important;
}

/* 00.01.21: zoekresultaten in Telerik RadGrid-stijl */
.bbExplorerHost.bbSearchActive .bbSearchResultsPanel {
    padding: 8px 10px !important;
}

.bbSearchResultsGrid {
    width: 100%;
}

.bbSearchResultsGrid .rgHeader,
.bbSearchResultsGrid .rgHeader a {
    font-weight: 600;
    color: #333;
}

.bbSearchResultsGrid .rgRow td,
.bbSearchResultsGrid .rgAltRow td {
    vertical-align: middle;
    line-height: 18px;
}

.bbSearchResultsGrid .rgRow:hover td,
.bbSearchResultsGrid .rgAltRow:hover td {
    background: #f5f5f5;
}

.bbSearchResultsGrid .bbSearchResultLink {
    color: inherit;
    font-weight: inherit;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.bbSearchResultsGrid .bbSearchResultLink:hover {
    color: inherit;
    text-decoration: underline;
}


/* 00.01.23 - upload/select busy indicator */
.bbUploadBusyOverlay {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 200000;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.35);
}

.bbUploadBusyBox {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 300px;
    max-width: 420px;
    padding: 18px 22px;
    background: #fff;
    border: 1px solid #cfcfcf;
    border-radius: 4px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.25);
    color: #333;
    font-size: 14px;
}

.bbUploadBusyBox span {
    color: #666;
    font-size: 12px;
}

.bbUploadBusySpinner {
    width: 26px;
    height: 26px;
    border: 3px solid #d9d9d9;
    border-top-color: #333;
    border-radius: 50%;
    animation: bbSpin 0.8s linear infinite;
    flex: 0 0 auto;
}

@keyframes bbSpin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bbBusyCursor, .bbBusyCursor * {
    cursor: wait !important;
}

/* Previewpane in dezelfde rustige Telerik-achtige stijl als de FileExplorer-toolbar */
.bbPreviewToolbar {
    min-height: 38px;
    display: flex;
    align-items: center;
    padding: 0 12px;
    border: 1px solid #ddd;
    border-bottom: none;
    background: #f7f7f7;
    box-sizing: border-box;
    font-family: "Segoe UI", Arial, sans-serif;
}

.bbPreviewToolbarTitle {
    font-weight: 600;
    color: #333;
    font-size: 14px;
}

.bbPreviewContent {
    border: 1px solid #ddd;
    background: #fff;
    padding: 8px;
    box-sizing: border-box;
    min-height: 120px;
}

.bbPreviewContent #pvwImage {
    margin: 0 auto;
}

.bbPropertiesPanel {
    margin-top: 10px;
    border: 1px solid #ddd;
    background: #fff;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 13px;
    color: #333;
}

.bbPropertiesHeader {
    padding: 8px 10px;
    border-bottom: 1px solid #ddd;
    background: #f7f7f7;
    font-weight: 600;
}

.bbPropertiesTable {
    width: 100%;
    border-collapse: collapse;
}

.bbPropertiesTable th,
.bbPropertiesTable td {
    padding: 6px 10px;
    border-bottom: 1px solid #eee;
    vertical-align: top;
    text-align: left;
}

.bbPropertiesTable th {
    width: 105px;
    color: #555;
    font-weight: 600;
    white-space: nowrap;
}

.bbPropertiesTable td {
    word-break: break-word;
}

.bbPropertiesTable tr:last-child th,
.bbPropertiesTable tr:last-child td {
    border-bottom: none;
}

/* 00.01.26 - previewbalk en eigenschappen verder gelijkgetrokken met Telerik/FileExplorer */
.bbPreviewToolbar {
    height: 39px !important;
    min-height: 39px !important;
    padding: 0 10px !important;
    border: 1px solid #d7d7d7 !important;
    border-bottom: 0 !important;
    background: #f5f5f5 !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
}

.bbPreviewToolbarTitle {
    font-size: 13px !important;
    line-height: 39px !important;
    font-weight: 600 !important;
    color: #333 !important;
}

.bbPreviewContent {
    border-top: 1px solid #d7d7d7 !important;
}

.bbPropertiesHeader {
    min-height: 32px;
    line-height: 18px;
    box-sizing: border-box;
    background: #f5f5f5;
}

.bbPropertiesTable th {
    width: 120px;
}


/* 00.01.27 - previewbalk exacter in Telerik-toolbarstijl + kopieerbare relatieve link */
.bbFileManager .bbPreviewPane .bbPreviewToolbar {
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 12px !important;
    border: 1px solid #d9d9d9 !important;
    border-bottom: 0 !important;
    background: #f5f5f5 !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

.bbFileManager .bbPreviewPane .bbPreviewToolbarTitle {
    font-size: 13px !important;
    line-height: 40px !important;
    font-weight: 600 !important;
    color: #333 !important;
}

.bbCopyRelativePathButton {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 8px;
    min-height: 24px;
    padding: 2px 8px;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    background: #fff;
    color: #333;
    font-size: 12px;
    line-height: 18px;
    cursor: pointer;
    vertical-align: middle;
}

.bbCopyRelativePathButton:hover {
    background: #eeeeee;
}

.bbCopyRelativePathButton.bbCopied {
    border-color: #8bbf8b;
    background: #eff8ef;
}

#bbPropRelativePathText {
    word-break: break-all;
}


/* 00.01.28 - previewbalk exact als toolbar, Kopieer URL in header */
.bbFileManager .bbPreviewPane {
    border-left: 1px solid #d9d9d9;
    padding-left: 12px;
}

.bbFileManager .bbPreviewPane .bbPreviewToolbar {
    height: 43px !important;
    min-height: 43px !important;
    padding: 0 10px !important;
    border: 1px solid #d9d9d9 !important;
    border-bottom: 0 !important;
    background: #f5f5f5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
}

.bbFileManager .bbPreviewPane .bbPreviewToolbarTitle {
    font-size: 13px !important;
    line-height: 43px !important;
    font-weight: 600 !important;
    color: #333 !important;
}

.bbFileManager .bbPreviewPane .bbPreviewContent {
    border: 1px solid #d9d9d9 !important;
    background: #fff !important;
    padding: 8px !important;
    box-sizing: border-box !important;
}

.bbPreviewToolbarButton.bbCopyRelativePathButton {
    margin-left: auto !important;
    min-height: 28px !important;
    height: 28px !important;
    padding: 3px 10px !important;
    border: 1px solid #c9c9c9 !important;
    border-radius: 3px !important;
    background: #fff !important;
    color: #333 !important;
    font-size: 12px !important;
    line-height: 20px !important;
    cursor: pointer !important;
}

.bbPreviewToolbarButton.bbCopyRelativePathButton:hover {
    background: #eeeeee !important;
}

.bbPreviewToolbarButton.bbCopyRelativePathButton.bbCopied {
    background: #e8f5e9 !important;
    border-color: #81c784 !important;
}

.bbPropertiesTable th {
    width: 110px !important;
}


/* 00.01.29 - previewheader echt als Telerik-toolbar + zoekresultaat klikgedrag vastgezet */
html body .bbFileManager {
    gap: 16px !important;
}

html body .bbFileManager .bbPreviewPane {
    border-left: 0 !important;
    padding-left: 0 !important;
}

html body .bbFileManager .bbPreviewPane .bbPreviewToolbar {
    height: 52px !important;
    min-height: 52px !important;
    padding: 0 10px !important;
    border: 1px solid #d7d7d7 !important;
    border-bottom: 0 !important;
    background: #f5f5f5 !important;
    background-image: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
}

html body .bbFileManager .bbPreviewPane .bbPreviewToolbarTitle {
    font-size: 13px !important;
    line-height: 52px !important;
    font-weight: 600 !important;
    color: #333 !important;
}

html body .bbFileManager .bbPreviewPane .bbPreviewContent {
    border: 1px solid #d7d7d7 !important;
    background: #fff !important;
    padding: 8px !important;
    box-sizing: border-box !important;
}

html body .bbPreviewToolbarButton.bbCopyRelativePathButton {
    height: 30px !important;
    min-height: 30px !important;
    padding: 4px 10px !important;
    border: 1px solid #c9c9c9 !important;
    border-radius: 3px !important;
    background: #fff !important;
    color: #333 !important;
    font-size: 12px !important;
    line-height: 20px !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

html body .bbPreviewToolbarButton.bbCopyRelativePathButton:hover {
    background: #eeeeee !important;
}

html body .bbPreviewToolbarButton.bbCopyRelativePathButton.bbCopied {
    background: #e8f5e9 !important;
    border-color: #81c784 !important;
}

html body .bbSearchResultsGrid .bbSearchResultLink {
    color: inherit !important;
    font-weight: inherit !important;
    text-decoration: none !important;
    cursor: default !important;
}

html body .bbSearchResultsGrid .rgRow:hover td,
html body .bbSearchResultsGrid .rgAltRow:hover td {
    background: #f5f5f5 !important;
}


/* 00.01.30 - tekstvoorbeeld voor KML/XML/JSON/TXT/etc. */
.bbTextPreview {
    display: block;
    width: 100%;
    min-height: 220px;
    max-height: 650px;
    overflow: auto;
    margin: 0;
    padding: 10px 12px;
    border: 1px solid #d7d7d7;
    background: #fff;
    color: #222;
    box-sizing: border-box;
    font-family: Consolas, "Courier New", monospace;
    font-size: 12px;
    line-height: 1.45;
    white-space: pre-wrap;
    word-break: break-word;
}

.bbTextPreviewType {
    color: #666;
    font-weight: normal;
    font-size: 12px;
}

/* 00.01.31 - tekstpreview via handler en stabiele preview-toolbar */
html body .bbFileManager .bbPreviewPane .bbPreviewToolbar,
html body .bbPreviewPane .bbPreviewToolbar {
    height: 45px !important;
    min-height: 45px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid #d7d7d7 !important;
    border-bottom: 0 !important;
    background: #f5f5f5 !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
}

html body .bbFileManager .bbPreviewPane .bbPreviewToolbarTitle,
html body .bbPreviewPane .bbPreviewToolbarTitle {
    display: inline-flex !important;
    align-items: center !important;
    height: 45px !important;
    line-height: 45px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #333 !important;
}

.bbViewerTextPreview {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 14px;
    box-sizing: border-box;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    background: #fff;
    color: #222;
    font-family: Consolas, "Courier New", monospace;
    font-size: 13px;
    line-height: 1.45;
}

/* 00.01.33 - Media preview */
.bbMediaPreview {
    width: 100%;
    box-sizing: border-box;
    background: #111;
    border: 1px solid #d7d7d7;
    border-radius: 2px;
    margin: 6px 0 4px 0;
}

.bbVideoPreview {
    max-height: 360px;
}

.bbAudioPreview {
    background: transparent;
    height: 42px;
}

.bbMediaFallback {
    margin-top: 6px;
    padding: 6px 8px;
    border: 1px solid #e5e5e5;
    background: #fafafa;
    color: #666;
    font-size: 12px;
    line-height: 1.35;
}

.bbViewerMedia {
    display: block;
    max-width: 100%;
    box-sizing: border-box;
    background: #111;
    border: 0;
    margin: 0 auto;
}

.bbViewerVideo {
    width: 100%;
    height: calc(100vh - 150px);
    max-height: 820px;
}

.bbViewerAudio {
    width: 70%;
    min-width: 420px;
    height: 54px;
    margin-top: 80px;
    background: transparent;
}

.bbViewerMediaFallback {
    margin: 10px auto 0 auto;
    max-width: 760px;
    padding: 8px 10px;
    border: 1px solid #e5e5e5;
    background: #fafafa;
    color: #666;
    font-size: 12px;
    line-height: 1.4;
}

@media (max-width: 900px) {
    .bbViewerAudio {
        width: 95%;
        min-width: 0;
    }

    .bbViewerVideo {
        height: calc(100vh - 180px);
    }
}

/* 00.01.35 - EXIF in preview en duidelijk Kopieer URL icoon */
html body .bbPreviewToolbarButton.bbCopyRelativePathButton,
html body .bbCopyRelativePathButton {
    gap: 5px !important;
    font-weight: 600 !important;
}

.bbExifPanel {
    border-top: 1px solid #e5e5e5;
    margin-top: 2px;
}

.bbExifHeader {
    padding: 7px 10px;
    border-top: 1px solid #f1f1f1;
    border-bottom: 1px solid #e5e5e5;
    background: #fafafa;
    font-weight: 600;
    color: #333;
}

.bbExifTable th {
    width: 110px !important;
}


/* 00.01.41 - Preview toolbar download/kopieer knoppen */
.bbPreviewToolbar {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    border: 1px solid #ddd;
    border-bottom: none;
    background: #f7f7f7;
    box-sizing: border-box;
    font-family: "Segoe UI", Arial, sans-serif;
}

.bbPreviewToolbarTitle {
    flex: 1 1 auto;
    font-weight: 600;
    color: #333;
    font-size: 14px;
    white-space: nowrap;
}

.bbPreviewToolbarActions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-left: auto;
    flex: 0 0 auto;
    white-space: nowrap;
}

.bbPreviewToolbarButton {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 32px;
    padding: 5px 12px;
    border: 1px solid #c9c9c9;
    border-radius: 4px;
    background: #fff;
    color: #333;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    cursor: pointer;
    text-decoration: none;
    box-sizing: border-box;
    vertical-align: middle;
    white-space: nowrap;
}

.bbPreviewToolbarButton:hover,
.bbPreviewToolbarButton:focus {
    background: #eeeeee;
    border-color: #adadad;
    color: #333;
    text-decoration: none;
    outline: none;
}

.bbPreviewToolbarButton.bbCopied {
    border-color: #5cb85c;
    color: #2e7d32;
}

.bbPreviewToolbarButton .bbButtonIcon {
    display: inline-block;
    font-size: 18px;
    line-height: 1;
    margin-right: 1px;
}

.bbPreviewToolbarButton .bbButtonText {
    display: inline-block;
    line-height: 20px;
}


/* 00.01.42 - read-only: beheerknoppen alleen visueel verbergen, zonder Telerik-rendering te verstoren */
.bbReadOnlyMode .rfeToolbar a[title*="Upload"],
.bbReadOnlyMode .rfeToolbar a[title*="upload"],
.bbReadOnlyMode .rfeToolbar a[title*="Delete"],
.bbReadOnlyMode .rfeToolbar a[title*="delete"],
.bbReadOnlyMode .rfeToolbar a[title*="Remove"],
.bbReadOnlyMode .rfeToolbar a[title*="remove"],
.bbReadOnlyMode .rfeToolbar a[title*="New Folder"],
.bbReadOnlyMode .rfeToolbar a[title*="new folder"],
.bbReadOnlyMode .rfeToolbar a[title*="Nieuwe map"],
.bbReadOnlyMode .rfeToolbar a[title*="nieuwe map"],
.bbReadOnlyMode .rfeToolbar a[title*="Rename"],
.bbReadOnlyMode .rfeToolbar a[title*="rename"],
.bbReadOnlyMode .RadToolBar a[title*="Upload"],
.bbReadOnlyMode .RadToolBar a[title*="Delete"],
.bbReadOnlyMode .RadToolBar a[title*="New Folder"],
.bbReadOnlyMode .RadToolBar a[title*="Rename"],
.bbReadOnlyMode .ruUploadProgress,
.bbReadOnlyMode .ruFileWrap,
.bbReadOnlyMode input[type="file"] {
    display: none !important;
}

/* Telerik RadFileExplorer toolbar-volgorde: 5=New Folder, 6=Delete, 9=Upload.
   Dit vangt icoonknoppen zonder tekst/title af. */
.bbReadOnlyMode .rfeToolbar > *:nth-child(5),
.bbReadOnlyMode .rfeToolbar > *:nth-child(6),
.bbReadOnlyMode .rfeToolbar > *:nth-child(9),
.bbReadOnlyMode .rfeToolbar .rtbUL > .rtbItem:nth-child(5),
.bbReadOnlyMode .rfeToolbar .rtbUL > .rtbItem:nth-child(6),
.bbReadOnlyMode .rfeToolbar .rtbUL > .rtbItem:nth-child(9),
.bbReadOnlyMode .RadToolBar .rtbUL > .rtbItem:nth-child(5),
.bbReadOnlyMode .RadToolBar .rtbUL > .rtbItem:nth-child(6),
.bbReadOnlyMode .RadToolBar .rtbUL > .rtbItem:nth-child(9) {
    display: none !important;
}

/* 00.01.53 - definitieve paneeluitlijning; bewust als laatste regels geplaatst. */
html body .bbFileManager .bbPreviewPane > .bbPreviewToolbar {
    height: 52px !important;
    min-height: 52px !important;
}

html body .bbFileManager .bbPreviewPane > .bbConsistencyProgress {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

html body .bbFileManager .bbPreviewPane > .bbConsistencyProgress[style*="display:none"] {
    display: none !important;
}

html body .bbFileManager .bbConsistencyProgress .bbConsistencyLiveLog {
    flex: 1 1 auto;
    min-height: 0;
    height: auto !important;
}

html body .bbFileManager .bbConsistencyProgress:not([style*="display:none"]) ~ .bbPreviewContent,
html body .bbFileManager .bbConsistencyProgress:not([style*="display:none"]) ~ .bbPropertiesPanel {
    display: none !important;
}

/* Instellingen en lege beginmap */
.bbConfigurationRequired {
    margin: 12px 0;
    padding: 14px 16px;
    border: 1px solid #e0b84f;
    border-left: 4px solid #d69e00;
    border-radius: 3px;
    background: #fff8df;
    color: #55420a;
    font-family: "Segoe UI", Arial, sans-serif;
}

.bbConfigurationRequired strong,
.bbConfigurationRequired span {
    display: block;
}

.bbConfigurationRequired span {
    margin-top: 4px;
}
