/* CBSystem: reparo estrutural sem esconder widgets nem sobrepor blocos.
   Restrito a Chefia e ao Financeiro 69. Colunas do shell têm
   posições explícitas independentemente das regras de tema. */
@media (min-width: 851px) {
  body.app-page:has(.chief-workspace) .layout-body,
  body.app-page:has(.chief-review-layout) .layout-body,
  body.app-page:has(.cb-finance-page) .layout-body {
    display: grid !important;
    grid-template-columns: var(--sidebar, 230px) minmax(0, 1fr) 260px !important;
    grid-auto-flow: row !important;
    align-items: start !important;
    max-width: none !important;
    width: 100% !important;
  }
  body.app-page:has(.chief-workspace) .layout-body > .sidebar,
  body.app-page:has(.chief-review-layout) .layout-body > .sidebar,
  body.app-page:has(.cb-finance-page) .layout-body > .sidebar {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  body.app-page:has(.chief-workspace) .layout-body > .main-content,
  body.app-page:has(.chief-review-layout) .layout-body > .main-content,
  body.app-page:has(.cb-finance-page) .layout-body > .main-content {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding: 24px clamp(16px,2vw,32px) 60px !important;
  }
  body.app-page:has(.chief-workspace) .layout-body > .widget-rail,
  body.app-page:has(.chief-review-layout) .layout-body > .widget-rail,
  body.app-page:has(.cb-finance-page) .layout-body > .widget-rail {
    display: grid !important;
    visibility: visible !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    position: sticky !important;
    top: calc(var(--top, 72px) + 12px) !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
    padding: 24px 18px 48px 0 !important;
    align-content: start !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }
}
/* Breakpoint: widgets continuam presentes, só passam abaixo do conteúdo. */
@media (min-width: 851px) and (max-width: 1399px) {
  body.app-page:has(.chief-workspace) .layout-body,
  body.app-page:has(.chief-review-layout) .layout-body,
  body.app-page:has(.cb-finance-page) .layout-body {
    grid-template-columns: var(--sidebar, 230px) minmax(0,1fr) !important;
  }
  body.app-page:has(.chief-workspace) .layout-body > .widget-rail,
  body.app-page:has(.chief-review-layout) .layout-body > .widget-rail,
  body.app-page:has(.cb-finance-page) .layout-body > .widget-rail {
    grid-column: 2 !important;
    grid-row: 2 !important;
    position: static !important;
    padding: 0 clamp(16px,2vw,32px) 32px !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    align-items: start !important;
    max-height: none !important;
    overflow: visible !important;
  }
}
body.app-page .main-content > .chief-workspace,
body.app-page .main-content > .cb-finance-page,
body.app-page .main-content > .chief-review-layout {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
body.app-page .main-content > .chief-workspace {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) !important;
  gap: 22px !important;
}
body.app-page .chief-workspace > .chief-menu,
body.app-page .chief-workspace > .chief-work-area {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
body.app-page .chief-workspace .chief-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
body.app-page .chief-workspace .chief-work-area .chief-overview {
  grid-template-columns: repeat(auto-fit,minmax(145px,1fr)) !important;
}
body.app-page .cb-finance-page .cb-finance-stat strong {
  color: var(--ink,#1f2e26);
  overflow-wrap: anywhere;
}
@media (max-width: 850px) {
  body.app-page:has(.chief-workspace) .layout-body,
  body.app-page:has(.chief-review-layout) .layout-body,
  body.app-page:has(.cb-finance-page) .layout-body {display: block !important;}
  body.app-page:has(.chief-workspace) .layout-body > .main-content,
  body.app-page:has(.chief-review-layout) .layout-body > .main-content,
  body.app-page:has(.cb-finance-page) .layout-body > .main-content {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 18px 14px 40px !important;
  }
  body.app-page:has(.chief-workspace) .layout-body > .widget-rail,
  body.app-page:has(.chief-review-layout) .layout-body > .widget-rail,
  body.app-page:has(.cb-finance-page) .layout-body > .widget-rail {
    display: grid !important;
    visibility: visible !important;
    position: static !important;
    padding: 12px 14px 36px !important;
    max-height: none !important;
  }
}
