/* Back office core (module E). */
.bo-legend { font-size: 11.5px; margin-top: 8px; }
.bo-tabs { display: flex; gap: 0; border-bottom: 2px solid #0a6fd2; flex-wrap: wrap; margin-bottom: 10px; }
.bo-tabs a, .bo-tabs button { font: 700 12px var(--fb); padding: 8px 12px; border: 1px solid #cbd7e2; border-bottom: 0; background: linear-gradient(#fff, #edf3f8); color: #22517a; cursor: pointer; margin-right: 3px; border-radius: 3px 3px 0 0; display: inline-flex; gap: 6px; align-items: center; }
.bo-tabs a.on, .bo-tabs button.on { background: #0a6fd2; border-color: #0a6fd2; color: #fff; }
.bo-tab[hidden] { display: none !important; }
.bo-perms { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; }
.bo-perms fieldset { border: 1px solid var(--line2); border-radius: 4px; padding: 8px 12px 10px; margin: 0; display: grid; gap: 6px; min-width: 0; }
.bo-perms legend { font-weight: 700; color: #1d3650; font-size: 12px; padding: 0 4px; }
.bo-perms .ct-check { align-items: flex-start; }
.bo-perms .ct-check small { display: block; color: var(--muted); font-size: 11px; }
.bo-matrix td.on { color: var(--okFg); font-weight: 700; text-align: center; }
.bo-matrix td.off { color: #b7c4d1; text-align: center; }
.bo-total td { font-weight: 700; background: #f5f8fb; border-top: 2px solid #c8d4df; }
.bo-grand td { font-weight: 700; background: #eaf2f9; border-top: 2px solid #0a6fd2; }
.bo-indent { padding-left: 24px !important; }
.bo-neg { color: var(--badFg); }
.bo-note { background: #fffbea; border: 1px solid #f0e2a8; border-radius: 4px; padding: 8px 10px; margin-bottom: 8px; font-size: 12.5px; }
.bo-note.pinned { border-color: #f0b429; box-shadow: inset 3px 0 0 #f0b429; }
.bo-note .meta { color: var(--muted); font-size: 11.5px; margin-top: 4px; }
.bo-hbar { display: grid; grid-template-columns: minmax(90px, 30%) 1fr auto; gap: 8px; align-items: center; font-size: 12px; padding: 4px 0; }
.bo-hbar .ct-meter { height: 10px; }
.bo-logo { height: 44px; padding: 4px; border: 1px solid #dde5ed; border-radius: 3px; background: #fff; }
.bo-logo.dark { background: #061a36; }
.bo-printhead { display: none; }
.bo-actions { display: flex; gap: 6px; flex-wrap: wrap; }
@media print {
    .ct-top, .ct-modbar, .ct-sidebar, .ct-health, .ct-toolbar .tools, .bo-noprint, .ct-filters, .ct-toasts { display: none !important; }
    .ct-shell, .ct-main { display: block !important; margin: 0 !important; padding: 0 !important; }
    body { background: #fff; }
    .ct-panel { box-shadow: none; break-inside: avoid; }
    .bo-printhead { display: block; margin-bottom: 10px; }
    .ct-tablewrap { overflow: visible; }
}
