.qvis-well-workspace body { margin: 0; overflow: hidden; }
.qvis-well-workspace main { padding: 0; height: 100dvh; }
#wellWorkspace { display: flex; flex-direction: column; width: 100%; height: 100%; text-align: left; color: var(--text-color, #dce4ef); }
.workspace-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 6px 16px; background: var(--qvis-work-area, #11151b); }
.workspace-identity { min-width: 0; flex: 1; display: flex; align-items: baseline; flex-wrap: nowrap; column-gap: 6px; overflow: hidden; }
.workspace-identity h1 { min-width: 0; flex: 0 1 auto; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 12px; line-height: 1.25; margin: 0; color: var(--qvis-text-label); font-weight: 500; }
.workspace-identity > div { min-width: 0; flex: 0 1 auto; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 11px; line-height: 1.25; color: #b5c6dc; }
.workspace-tabs { display: flex; align-items: flex-end; gap: 3px; overflow-x: auto; overflow-y: hidden; flex-shrink: 0; padding: 4px 12px 0; background: var(--qvis-work-area, #11151b); border-bottom: 0; box-shadow: inset 0 -1px var(--qvis-border-subtle, #536278); }
.qvis-well-workspace .workspace-tabs a { margin-bottom: 0; border-left: 1px solid transparent; border-right: 1px solid transparent; padding-inline: 10px; }
/* Paint over the inset divider without negative margins or vertical overflow. */
.qvis-well-workspace .workspace-tabs a[aria-selected="true"] { background: var(--qvis-data-view-page-bg, #171717); border-top-color: var(--qvis-border-subtle, #536278); border-left-color: var(--qvis-border-subtle, #536278); border-right-color: var(--qvis-border-subtle, #536278); }
.workspace-status { flex: 0 0 min(25vw, 280px); min-width: 0; font-size: 11px; line-height: 1.25; text-align: right; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.workspace-status:empty { visibility: hidden; }
.workspace-header > .data-view-actions { flex-shrink: 0; flex-wrap: nowrap; }
.workspace-pages { flex: 1; min-height: 0; position: relative; background: var(--qvis-data-view-page-bg, #171717); }
.workspace-pages iframe { width: 100%; height: 100%; border: 0; display: block; background: var(--qvis-data-view-page-bg, #171717); color-scheme: dark; }
.qvis-theme-light .workspace-pages iframe { color-scheme: light; }
.workspace-pages iframe[data-loading="true"] { visibility: hidden; }
.workspace-pages iframe[hidden] { display: none; }
.qvis-theme-light .workspace-header, .qvis-theme-light .workspace-tabs, .qvis-theme-light .workspace-status { background: #edf3fa; color: #24384e; }
.qvis-theme-light .workspace-identity > div { color: #405b78; }
@media screen {
  /* One top inset for embedded pages, independent of their standalone wrappers. */
  html.qvis-workspace-child:not(.qvis-workspace-upload-child) body > main { padding-top: 8px !important; }
  .qvis-workspace-child main > :is(.dirplan-view, .table-tops-container, .well-header-card) { margin-top: 0; padding-top: 0; }
  .qvis-workspace-child .dirplan-view > .report-data-panel { margin-top: 0; }
  .qvis-workspace-child :is(.dirplan-view, .table-tops-container) .data-view-header,
  .qvis-workspace-child .data-table-toolbar--with-identity { margin-top: 0; }
  .qvis-workspace-child .data-table-toolbar--with-identity { align-items: flex-start; }
  .qvis-workspace-child .well-header-card .well-header-heading { padding-top: 0; }
  .qvis-workspace-child .well-header-heading h1 { margin-top: 0; }
  .qvis-workspace-child .well-nav-menu,
  .qvis-workspace-child .header-bar,
  .qvis-workspace-child [data-data-view-theme-toggle] { display: none !important; }
}
@media print {
  .qvis-well-workspace body { overflow: visible; }
  .qvis-well-workspace main, #wellWorkspace { height: auto; display: block; }
  .qvis-workspace-printing body > :not(#workspacePrint), .qvis-workspace-printing #wellWorkspace { display: none !important; }
  #workspacePrint { display: block !important; }
}
#workspacePrint { display: none; }

#workspaceUpload { width: min(840px, calc(100vw - 32px)); height: min(720px, calc(100dvh - 48px)); max-width: none; max-height: none; padding: 0; border: 1px solid var(--qvis-border-subtle); border-radius: 8px; background: var(--qvis-work-area); color: var(--qvis-text-main); }
#workspaceUpload[open] { display: flex; flex-direction: column; }
#workspaceUpload::backdrop { background: rgb(0 0 0 / 50%); }
#workspaceUpload > header { display: flex; align-items: center; justify-content: space-between; padding: 5px 8px; border-bottom: 1px solid var(--qvis-border-subtle); }
#workspaceUpload h2 { margin: 0; font-size: 12px; line-height: 1.3; outline: none; color: var(--qvis-text-main); }
#workspaceUpload .workspace-upload-close { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 20px; width: 20px; height: 20px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 4px; background: transparent; color: var(--qvis-text-label); line-height: 1; box-shadow: none; outline: none; appearance: none; cursor: pointer; }
#workspaceUpload .workspace-upload-close svg { display: block; flex-shrink: 0; width: 10px; height: 10px; }
#workspaceUpload .workspace-upload-close:hover:not(:disabled) { background: var(--qvis-row-hover); color: var(--qvis-text-main); }
#workspaceUpload .workspace-upload-close:focus-visible { outline: 1px solid var(--qvis-text-label); outline-offset: 2px; }
#workspaceUpload .workspace-upload-close:disabled { opacity: .45; cursor: default; }
#workspaceUpload > [role="status"] { padding: 4px 12px; font-size: 12px; }
#workspaceUpload > [role="status"]:empty { display: none; }
#workspaceUpload iframe { flex: 1; min-height: 0; width: 100%; border: 0; background: var(--qvis-data-view-page-bg); color-scheme: dark; }
.qvis-theme-light #workspaceUpload iframe { color-scheme: light; }
#workspaceUpload iframe[data-loading="true"] { visibility: hidden; }
@media screen {
  .qvis-workspace-upload-child .header-bar { display: none !important; }
}

#workspaceUpload > header { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr) minmax(20px, 1fr); gap: 8px; }
#workspaceUpload > header h2 { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#workspaceUpload > header .workspace-upload-close { justify-self: end; }
.workspace-upload-data { min-width: 0; color: var(--qvis-text-label); font-size: 10px; font-weight: 400; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
