/* DataCar operational interface. Adapted from supplied DropdownNavigation and outline-icon references. */
.dc-shell { --dc-accent: #117bbb; --dc-border: color-mix(in srgb, currentColor 18%, transparent); }
.dc-shell + footer { z-index: 1040; }
.dc-shell-nav { border-bottom: 1px solid var(--dc-border); padding: 8px 4px; margin-bottom: 16px; background: var(--bs-body-bg, #fff); }
.dc-navigation .dxbl-menu { --dxbl-menu-item-padding-x: 12px; --dxbl-menu-item-padding-y: 10px; }
.dc-navigation .dxbl-menu-item { min-height: 42px; }
.dc-navigation a:focus-visible, .dc-navigation button:focus-visible { outline: 2px solid #1684c5; outline-offset: -2px; }
.dc-icon { display: inline-block; width: 20px; height: 20px; flex: 0 0 20px; background: currentColor; mask: var(--dc-icon) center / contain no-repeat; }
.dxbl-image.dc-icon { min-width: 20px; min-height: 20px; }
.dc-icon-car { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 10 2-6h12l2 6M3 10h18v9H3zM6 19v2m12-2v2M7 14h1m8 0h1'/%3E%3C/svg%3E"); }
.dc-icon-clients { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='10' cy='7' r='4'/%3E%3Cpath d='M3 21v-3a7 7 0 0 1 14 0v3M17 3a4 4 0 0 1 0 8m3 3 1 7'/%3E%3C/svg%3E"); }
.dc-icon-wallet { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Cpath d='M3 6h18v15H3V3h15v3M21 11h-7v5h7'/%3E%3C/svg%3E"); }
.dc-icon-box { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Cpath d='m12 2 9 5v10l-9 5-9-5V7zM3 7l9 5 9-5m-9 5v10M7 4l10 5'/%3E%3C/svg%3E"); }
.dc-icon-chart { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Cpath d='M3 3v18h18M7 16v-5m5 5V7m5 9V3'/%3E%3C/svg%3E"); }
.dc-icon-network { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7'%3E%3Cpath d='M9 2h6v6H9zM2 16h6v6H2zm14 0h6v6h-6zM5 16v-4h14v4m-7-8v4'/%3E%3C/svg%3E"); }
.dc-icon-tool { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Cpath d='M14 3a6 6 0 0 0-7 8L2 17a3 3 0 0 0 5 4l6-7a6 6 0 0 0 8-7l-4 4-4-4z'/%3E%3C/svg%3E"); }
.dc-icon-layout { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M3 8h18M8 8v13'/%3E%3C/svg%3E"); }
.dc-appearance-options { display: grid; gap: 8px; }
.dc-appearance-options label { font-weight: 600; margin-top: 6px; }
.dc-appearance-options select, .dc-appearance-close { min-height: 42px; padding: 8px 12px; border: 1px solid currentColor; border-radius: 5px; color: inherit; background: var(--bs-body-bg, #fff); }
.dc-appearance-options small { max-width: 260px; line-height: 1.5; opacity: .8; }
.dc-appearance-close { margin-top: 16px; width: 100%; }
.dc-shell .themeswitcher-container { position: fixed; right: 0; left: auto; top: 60px; width: min(340px, 100vw); max-height: calc(100dvh - 72px); overflow-y: auto; color: var(--bs-body-color, #202830); background: var(--bs-body-bg, #fff); }
html[data-workspace-background='terrain'] .esrl210-workspace .report-header,
html[data-workspace-background='waves'] .esrl210-workspace .report-header { background-image: linear-gradient(90deg, rgba(3,22,34,.72), rgba(3,22,34,.2)), var(--dc-workspace-art); background-size: cover; background-position: center; }
@media (min-width: 1024px) {
    .dc-shell-sidebar > main { display: grid; grid-template-columns: 224px minmax(0, 1fr); gap: 16px; }
    .dc-shell-sidebar .dc-shell-nav { position: sticky; z-index: 1030; top: 0; align-self: start; min-height: calc(100dvh - 40px); border-right: 1px solid var(--dc-border); border-bottom: 0; margin: 0; padding: 16px 8px; }
    .dc-shell-sidebar > main > article { min-width: 0; padding: 0 8px !important; }
}
@media (max-width: 767px) {
    .dc-navigation [role='menuitem'] { min-height: 44px; }
    .dc-navigation .dxbl-menu-nav-item-list { max-height: calc(100dvh - 180px); overflow-y: auto; }
    .esrl210-workspace .dxbl-text-edit { min-height: 44px; }
    .dc-shell > main > article:not(.datacar-layout-article-checklist):not(.datacar-layout-article-background) { padding-inline: 0 !important; }
    .dc-shell-nav { margin-bottom: 8px; }
}
@media print { .dc-shell-nav { display: none; } }

/* Navigation: supplied grouped dropdown / action search, adapted to the DataCar catalogue. */
:root { --dc-surface: #fff; --dc-page: #f3f6fa; --dc-ink: #203549; --dc-muted: #637589; --dc-line: #dce4ec; --dc-hover: #eaf3fb; }
html[data-bs-theme='dark'] { --dc-surface: #18232e; --dc-page: #111a23; --dc-ink: #e4edf5; --dc-muted: #a1b3c3; --dc-line: #354554; --dc-hover: #243b50; }
.dc-shell { color: var(--dc-ink); background: var(--dc-page); min-height: calc(100dvh - 52px); padding-bottom: 24px; }
.dc-shell-nav { background: var(--dc-surface); color: var(--dc-ink); position: relative; z-index: 1030; border-color: var(--dc-line); padding: 0 24px; }
.dc-navigation { padding: 0 !important; }
.dc-workspace-navigation { position: relative; display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; padding: 14px 0; font: 14px/1.45 'Segoe UI', Arial, sans-serif; width: 100%; }
.dc-nav-brand { display: flex; align-items: center; gap: 12px; }
.dc-nav-brand a { color: var(--dc-ink); text-decoration: none; font-size: 25px; font-weight: 750; letter-spacing: -.8px; }
.dc-nav-brand a span { color: #1685c9; }
.dc-nav-brand .dc-nav-logo { display: block; width: 184px; max-width: 100%; height: auto; padding: 5px 7px; border-radius: 5px; background: #fff; }
.dc-nav-product { font-size: 9px; letter-spacing: 1.4px; color: var(--dc-muted); width: 70px; line-height: 1.6; }
.dc-nav-search { margin-left: auto; display: flex; align-items: center; gap: 10px; border: 1px solid var(--dc-line); border-radius: 8px; padding: 0 12px; background: var(--dc-page); width: min(340px, 100%); min-height: 44px; }
.dc-nav-search:focus-within { border-color: #1685c9; box-shadow: 0 0 0 3px #1685c922; }
.dc-nav-search input { width: 100%; min-width: 0; background: transparent; border: 0; outline: 0; color: var(--dc-ink); font: inherit; }
.dc-nav-search input::placeholder { color: var(--dc-muted); }
.dc-nav-search kbd { white-space: nowrap; font: 10px 'Segoe UI', sans-serif; color: var(--dc-muted); background: var(--dc-surface); padding: 3px 5px; border: 1px solid var(--dc-line); border-radius: 4px; }
.dc-nav-catalog { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; width: 100%; }
.dc-workspace-navigation [hidden] { display: none !important; }
.dc-nav-branch > summary, .dc-nav-action { list-style: none; display: flex; gap: 10px; align-items: center; min-height: 44px; padding: 10px 14px; border: 1px solid transparent; border-radius: 7px; color: var(--dc-ink); background: transparent; cursor: pointer; font: 600 14px/1.4 'Segoe UI', sans-serif; text-align: left; transition: background-color 100ms, border-color 100ms; }
.dc-nav-branch > summary::-webkit-details-marker { display: none; }
.dc-nav-branch > summary:hover, .dc-nav-action:hover, .dc-nav-link:hover { background: var(--dc-hover); }
.dc-nav-branch[open] > summary { color: #1685c9; background: var(--dc-hover); border-color: color-mix(in srgb, #1685c9 30%, var(--dc-line)); }
.dc-workspace-navigation :is(summary,button,a,input):focus-visible { outline: 2px solid #1685c9; outline-offset: 2px; }
.dc-nav-chevron { width: 7px; height: 7px; border-right: 1.5px solid; border-bottom: 1.5px solid; transform: rotate(45deg); margin-left: auto; transition: transform 100ms; }
.dc-nav-branch[open] > summary > .dc-nav-chevron { transform: rotate(225deg); }
.dc-nav-panel { background: var(--dc-surface); border: 1px solid var(--dc-line); border-radius: 10px; padding: 20px; }
.dc-nav-catalog > .dc-nav-branch > .dc-nav-panel { position: absolute; left: 0; top: calc(100% - 4px); width: min(820px, 100%); max-height: calc(100dvh - 190px); overflow: auto; box-shadow: 0 16px 40px #001c3626; }
.dc-nav-panel-heading { text-transform: uppercase; letter-spacing: 1.5px; font-size: 10px; font-weight: 700; color: var(--dc-muted); margin: 0 0 12px 10px; }
.dc-nav-items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; align-items: start; }
.dc-nav-items > .dc-nav-branch > summary { background: var(--dc-page); min-height: 58px; }
.dc-nav-items .dc-nav-panel { padding: 8px; border: 0; border-left: 2px solid var(--dc-line); border-radius: 0; margin: 8px 0 0 20px; }
.dc-nav-items .dc-nav-panel-heading { display: none; }
.dc-nav-items .dc-nav-items { grid-template-columns: minmax(0, 1fr); gap: 3px; }
.dc-nav-link { display: flex; align-items: center; gap: 12px; min-height: 62px; padding: 10px 12px; border: 1px solid transparent; border-radius: 7px; text-decoration: none; color: var(--dc-ink); transition: background-color 100ms; }
.dc-nav-link > .dc-icon { padding: 8px; color: #1685c9; }
.dc-nav-link-copy { display: flex; flex-direction: column; gap: 3px; min-width: 0; font-weight: 600; }
.dc-nav-link-copy small { font-size: 11px; font-weight: 400; color: var(--dc-muted); letter-spacing: .4px; }
.dc-nav-arrow { margin-left: auto; color: var(--dc-muted); font-size: 16px; }
.dc-nav-mobile-toggle { display: none; }
.dc-workspace-navigation:not(.is-sidebar) .dc-nav-search { margin-right: 104px; }
.dc-workspace-navigation:not(.is-sidebar) > .dc-nav-catalog > [data-nav-action='logout'] { position: absolute; top: 14px; right: 0; }
.dc-shell .esrl210-workspace .dxbl-text-edit { min-height: 42px; }
.esrl210-workspace [data-dc-date-client] { --bs-body-bg: var(--dc-surface); --bs-body-color: var(--dc-ink); --bs-border-color: var(--dc-line); min-height: 42px; }
.esrl210-workspace button[aria-label^='Abrir calendário'] { min-height: 42px; min-width: 36px; background: var(--dc-surface) !important; color: var(--dc-ink) !important; border-color: var(--dc-line) !important; }
.dc-nav-search-status { width: 100%; color: var(--dc-muted); font-size: 12px; }
.is-searching .dc-nav-catalog { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); max-height: 60dvh; overflow: auto; align-items: start; }
.is-searching .dc-nav-catalog > .dc-nav-branch > .dc-nav-panel { position: static; width: auto; max-height: none; box-shadow: none; padding: 6px; border: 0; }
.is-searching .dc-nav-items { grid-template-columns: minmax(0,1fr); }
.is-searching .dc-nav-panel-heading { display: none; }
.dc-icon-document { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6'%3E%3Cpath d='M5 2h9l5 5v15H5zM14 2v6h5M8 12h8M8 16h8'/%3E%3C/svg%3E"); }
.dc-icon-search { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7'%3E%3Ccircle cx='10' cy='10' r='7'/%3E%3Cpath d='m15 15 6 6'/%3E%3C/svg%3E"); }
.dc-shell .themeswitcher-container { color: var(--dc-ink); background: var(--dc-surface); border: 1px solid var(--dc-line); border-radius: 10px 0 0 10px; box-shadow: -8px 12px 40px #001c3626; z-index: 1050; }
.dc-shell .themeswitcher-title { color: var(--dc-ink); }
.dc-theme-changing .themeswitcher-content { pointer-events: none; opacity: .6; }
.dc-theme-progress { position: sticky; top: 0; padding: 12px; background: var(--dc-hover); color: var(--dc-ink); z-index: 1; }
.dc-shell .themeswitcher-colors a { color: var(--dc-ink); min-height: 40px; display: flex; align-items: center; }
.dc-shell .themeswitcher-colors a:hover { background: var(--dc-hover); }
.dc-shell .dc-appearance-options select, .dc-shell .dc-appearance-close { background: var(--dc-page); border-color: var(--dc-line); color: var(--dc-ink); }
html[data-workspace-background='terrain'] .dc-shell, html[data-workspace-background='waves'] .dc-shell { background-image: linear-gradient(color-mix(in srgb,var(--dc-page) 90%,transparent),color-mix(in srgb,var(--dc-page) 95%,transparent)),var(--dc-workspace-art); background-size: cover; background-attachment: fixed; }
.dc-shell + footer { height: auto !important; min-height: 48px; padding: 6px 12px !important; background: var(--dc-surface) !important; color: var(--dc-ink) !important; border-top: 1px solid var(--dc-line) !important; font: 12px/1.5 'Segoe UI',sans-serif; }
.dc-shell + footer .datacar-footer-status { gap: 8px; color: var(--dc-muted); flex-wrap: wrap; }
.dc-shell + footer :is(button,a) { min-height: 36px; min-width: 36px; border-radius: 6px; justify-content: center; }
.dc-shell + footer .dc-session-status { display: flex; align-items: center; gap: 14px; }
.dc-session-status > span { display: inline-flex; align-items: center; gap: 7px; }
.dc-session-status .dc-icon { width: 15px; height: 15px; flex-basis: 15px; }
.dc-environment-badge { color: #995300; background: #fff0cc; border: 1px solid #ebca85; border-radius: 4px; padding: 3px 7px; font-weight: 700; }
.dc-screen-code { background: var(--dc-page); padding: 3px 7px; border: 1px solid var(--dc-line); border-radius: 4px; }
.dc-footer-action-text { margin-left: 6px; font-size: 12px; }
.dc-icon-shield { --dc-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7'%3E%3Cpath d='m12 2 9 4v6c0 5-9 10-9 10S3 17 3 12V6zM8 12l3 3 5-6'/%3E%3C/svg%3E"); }
@media (min-width:1024px) {
    .dc-shell-sidebar > main { grid-template-columns: 264px minmax(0,1fr); gap: 0; }
    .dc-shell-sidebar .dc-shell-nav { padding: 18px 12px; height: calc(100dvh - 48px); overflow-y: auto; }
    .is-sidebar { display: flex; flex-direction: column; align-items: stretch; gap: 20px; }
    .is-sidebar .dc-nav-brand { padding: 0 10px; }
    .is-sidebar .dc-nav-product { display: none; }
    .is-sidebar .dc-nav-search { margin: 0; }
    .is-sidebar .dc-nav-search kbd { display: none; }
    .is-sidebar .dc-nav-catalog { display: flex; flex-direction: column; align-items: stretch; gap: 6px; }
    .is-sidebar .dc-nav-catalog > .dc-nav-branch > .dc-nav-panel { position: static; padding: 8px 0 8px 10px; border: 0; border-left: 2px solid var(--dc-line); border-radius: 0; width: auto; max-height: none; box-shadow: none; margin: 8px 0 8px 12px; }
    .is-sidebar .dc-nav-panel-heading { display: none; }
    .is-sidebar .dc-nav-items { grid-template-columns: minmax(0,1fr); gap: 4px; }
    .is-sidebar .dc-nav-link { padding: 8px; min-height: 52px; }
    .is-sidebar .dc-nav-items > .dc-nav-branch > summary { padding: 10px 8px; min-height: 44px; font-size: 13px; }
    .is-sidebar .dc-nav-items .dc-nav-panel { margin-left: 6px; padding-left: 6px; }
    .is-sidebar .dc-nav-items .dc-icon { display: none; }
    .is-sidebar .dc-nav-link-copy { font-size: 13px; }
    .is-sidebar .dc-nav-arrow { display: none; }
    .is-sidebar.is-searching .dc-nav-catalog { max-height: none; overflow: visible; }
}
@media (max-width:1023px) {
    .dc-shell-nav { padding: 0 14px; }
    .dc-workspace-navigation { gap: 12px; }
    .dc-nav-product { display: none; }
    .dc-nav-mobile-toggle { display: flex; align-items: center; gap: 8px; margin-left: auto; min-height: 44px; padding: 8px 12px; border: 1px solid var(--dc-line); border-radius: 7px; color: var(--dc-ink); background: var(--dc-page); }
    .dc-nav-search { order: 2; width: 100%; }
    .dc-workspace-navigation:not(.is-sidebar) .dc-nav-search { margin-right: 0; }
    .dc-workspace-navigation:not(.is-sidebar) > .dc-nav-catalog > [data-nav-action='logout'] { position: static; }
    .dc-nav-catalog { order: 4; display: none; max-height: 65dvh; overflow: auto; flex-wrap: nowrap; }
    .dc-nav-catalog > * { flex: 0 0 auto; min-width: 0; width: 100%; }
    .dc-nav-catalog .dc-nav-branch { min-width: 0; }
    .dc-nav-catalog summary > span:not(.dc-icon):not(.dc-nav-chevron), .dc-nav-link-copy { overflow-wrap: anywhere; }
    .mobile-open .dc-nav-catalog { display: flex; flex-direction: column; align-items: stretch; }
    .is-searching .dc-nav-catalog { display: flex; flex-direction: column; align-items: stretch; }
    .dc-nav-search-status { order: 3; }
    .dc-nav-catalog > .dc-nav-branch > .dc-nav-panel { position: static; width: auto; max-height: none; padding: 10px; box-shadow: none; margin-top: 8px; }
    .dc-nav-items { grid-template-columns: minmax(0,1fr); }
    .dc-shell + footer .datacar-footer-status { max-width: calc(100vw - 130px); gap: 2px 6px; }
    .dc-shell + footer .datacar-footer-status span { font-size: 10px; }
    .dc-shell + footer .dc-session-user, .dc-footer-action-text { display: none; }
    .dc-shell + footer .dc-session-company { max-width: 155px; overflow: hidden; text-overflow: ellipsis; }
}
@media(prefers-reduced-motion:reduce) { .dc-workspace-navigation * { transition: none !important; } }

/* Supplied navbar reference: compact anchored dropdown, desktop top navigation only. */
@media (min-width:1024px) {
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) > .dc-nav-catalog > .dc-nav-branch { position: relative; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) > .dc-nav-catalog > .dc-nav-branch > summary { padding: 10px 16px; font-weight: 500; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) > .dc-nav-catalog > .dc-nav-branch > .dc-nav-panel {
        top: calc(100% + 6px); left: 0; width: 264px; max-width: calc(100vw - 48px);
        max-height: min(65dvh, 620px); padding: 6px; border-radius: 8px;
        background: var(--dc-surface); box-shadow: 0 10px 28px #001c3624;
        overscroll-behavior: contain; scrollbar-width: thin;
    }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) > .dc-nav-catalog > .dc-nav-branch:nth-of-type(n+5) > .dc-nav-panel { left: auto; right: 0; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-panel-heading { display: none; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-items { grid-template-columns: minmax(0,1fr); gap: 2px; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-items > .dc-nav-branch { min-width: 0; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-items > .dc-nav-branch > summary {
        min-height: 44px; padding: 10px 12px; font-size: 14px; font-weight: 500; background: transparent;
    }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-items > .dc-nav-branch > summary:hover,
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-items > .dc-nav-branch[open] > summary { background: var(--dc-hover); }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-items .dc-nav-panel { margin:0; padding:6px; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-link { min-height: 44px; padding: 10px 12px; gap: 10px; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-link-copy { font-size: 14px; font-weight: 500; overflow-wrap: anywhere; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-link-copy small,
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-arrow { display: none; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-items .dc-icon { width: 17px; height: 17px; flex-basis: 17px; color: var(--dc-muted); }
}

/* Cascading lists retain the original catalogue, not a mega-menu or accordion. */
@media (min-width:1024px) {
    /* Shared 64px utility row: search and logout have the same center and height. */
    .dc-workspace-navigation:not(.is-sidebar) > .dc-nav-brand { height:64px; }
    .dc-workspace-navigation:not(.is-sidebar) > .dc-nav-brand .dc-nav-logo { max-height:64px; }
    .dc-workspace-navigation:not(.is-sidebar) > .dc-nav-search { height:48px; min-height:48px; margin-right:132px; box-sizing:border-box; }
    .dc-workspace-navigation:not(.is-sidebar) > .dc-nav-catalog > [data-nav-action='logout'] { top:22px; width:120px; height:48px; min-height:48px; justify-content:center; box-sizing:border-box; }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-branch > .dc-nav-panel {
        position: fixed; left: var(--dc-panel-left, 8px); top: var(--dc-panel-top, 100px); right: auto;
        width: var(--dc-cascade-width, 264px); box-sizing:border-box; max-width: calc(100vw - 16px); max-height: min(65dvh, 620px);
        margin: 0; padding: 6px; overflow: auto; border: 1px solid var(--dc-line);
        border-radius: 8px; background: var(--dc-surface); box-shadow: 0 10px 28px #001c3624;
    }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) > .dc-nav-catalog > .dc-nav-branch:nth-of-type(n) > .dc-nav-panel {
        width:var(--dc-cascade-width, 264px);
        left: var(--dc-panel-left, 8px); top: var(--dc-panel-top, 100px); right: auto;
    }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-items > .dc-nav-branch > summary .dc-nav-chevron { transform: rotate(-45deg); }
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-link,
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-catalog summary { min-height: 48px; }
}

/* Touch targets: the whole summary/link is the hit area, including nested menus. */
@media (max-width:1023px), (pointer:coarse) {
    .dc-workspace-navigation .dc-nav-catalog summary,
    .dc-workspace-navigation .dc-nav-link,
    .dc-workspace-navigation .dc-nav-action {
        display: flex; width: 100%; box-sizing: border-box; min-height: 48px;
        padding: 12px 14px; font-size: 14px; touch-action: manipulation;
    }
    .dc-workspace-navigation .dc-nav-catalog summary > * { pointer-events: none; }
    .dc-workspace-navigation .dc-nav-items { gap: 6px; }
    .dc-workspace-navigation .dc-nav-catalog { overscroll-behavior: contain; scrollbar-width: auto; }
    .dc-workspace-navigation .dc-nav-search input { min-height: 48px; font-size: 16px; }
}

/* User preference is limited to navigation: printed reports and data controls stay unchanged. */
.dc-workspace-navigation .dc-nav-catalog summary,
.dc-workspace-navigation .dc-nav-action,
.dc-workspace-navigation .dc-nav-link .dc-nav-link-copy { font-size: var(--dc-navigation-font, 14px) !important; }

/* Selection portal: retains DxListBox selection, filtering and authorization. */
@media (min-width:1024px) {
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-panel summary,
    .dc-workspace-navigation:not(.is-sidebar):not(.is-searching) .dc-nav-panel .dc-nav-link-copy {
        font-size:var(--dc-cascade-font, var(--dc-navigation-font, 14px)) !important;
    }
}

.dc-company-picker { padding: 10px; background: var(--dc-surface); color: var(--dc-ink); min-width: 240px; max-width: calc(100vw - 24px); }
.dc-company-picker .dxbl-list-box { height: min(360px,55dvh); border: 0; background: var(--dc-surface); color: var(--dc-ink); font: 13px/1.4 'Segoe UI',sans-serif; }
.dc-company-picker .dxbl-list-box-select-all-container { min-height: 44px; padding: 10px 12px; }
.dc-company-picker [role='option'] { min-height: 44px; display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 5px; border-bottom: 1px solid var(--dc-line); color: var(--dc-ink); }
.dc-company-picker [role='option']:hover { background: var(--dc-hover); }
.dc-company-picker [aria-selected='true'] { background: var(--dc-hover); }
.dc-company-picker .dxbl-text-edit { min-height: 42px; border-color: var(--dc-line); background: var(--dc-page); color: var(--dc-ink); margin-bottom: 8px; border-radius: 6px; }
.dc-company-picker input { font: 14px 'Segoe UI',sans-serif; }
@media (max-width:1023px), (pointer:coarse) {
    .dc-company-picker [role='option'] { min-height: 48px; padding: 12px; font-size: 14px; }
    .dc-company-picker .dxbl-list-box-select-all-container { min-height: 48px; }
    .dc-company-picker .dxbl-text-edit { min-height: 48px; }
    .dc-company-picker input { font-size: 16px; }
}

/* Kinetic Dots reference: four CSS-only dots, paired phases, no timers or network. */
body .splash-screen .spinner,
body .datacar-initial-splash-progress {
    position: relative; width: 120px; height: 66px; min-height: 66px;
    border: 0; border-radius: 0; background: none; animation: none;
    overflow: visible; flex: none;
}
body .splash-screen .spinner::before,
body .splash-screen .spinner::after,
body .datacar-initial-splash-progress::before,
body .datacar-initial-splash-progress::after {
    content: ''; position: absolute; bottom: 5px; left: 0;
    width: 18px; height: 18px; border: 0; border-radius: 50%;
    background: linear-gradient(#67e8f9,#137fc1); box-shadow: 68px 0 0 #168dcc;
    animation: dc-kinetic-bounce 1.4s ease-in-out infinite;
}
body .splash-screen .spinner::after,
body .datacar-initial-splash-progress::after { left: 34px; animation-delay: -.15s; }
@keyframes dc-kinetic-bounce {
    0%,100% { transform: translateY(0) scale(1.15,.85); }
    50% { transform: translateY(-30px) scale(1,1); }
}
.swal2-popup { background: var(--dc-surface) !important; color: var(--dc-ink) !important; border: 1px solid var(--dc-line); border-radius: 10px !important; font-family: 'Segoe UI',sans-serif; }
.swal2-popup .swal2-title { font-size: 21px; color: var(--dc-ink); }
.swal2-popup .swal2-html-container { color: var(--dc-muted); line-height: 1.6; }
.swal2-popup .swal2-confirm { min-height: 44px; min-width: 90px; background: #137fc1 !important; border-radius: 6px; }

/* Floating Paths reference, rendered as SVG by Home. One finite entrance, no idle loop. */
.dc-home-hero { position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; min-height: calc(100dvh - 120px); width: 100%; padding: clamp(28px,6vw,110px); background: #0b2941; color: #fff; font-family: 'Segoe UI',sans-serif; }
.dc-home-paths { position: absolute; inset: 0; width: 100%; height: 100%; color: #5db9df; opacity: .22; pointer-events: none; z-index: -1; animation: dc-paths-enter 1.2s ease-out both; }
.dc-home-copy { max-width: 680px; }
.dc-home-eyebrow { font-size: 12px; font-weight: 700; letter-spacing: 2px; color: #9fd8ee; }
.dc-home-copy h1 { margin: 22px 0; font-size: clamp(38px,4.8vw,76px); line-height: 1.06; letter-spacing: -2px; font-weight: 750; color: #fff; }
.dc-home-copy p { max-width: 450px; font-size: clamp(16px,1.5vw,21px); color: #c4dae7; line-height: 1.6; margin-bottom: 30px; }
.dc-home-search { display: inline-flex; align-items: center; gap: 12px; min-height: 48px; padding: 12px 22px; border: 1px solid #ccecf8; border-radius: 6px; background: #fff; color: #0b4773; font-size: 15px; font-weight: 700; cursor: pointer; }
.dc-home-search:hover { background: #d9f3ff; }
.dc-home-search:focus-visible { outline: 3px solid #68c6ed; outline-offset: 4px; }
.dc-home-copy small { display: block; margin-top: 18px; color: #b3cddd; font-size: 12px; }
@keyframes dc-paths-enter { from { opacity: 0; transform: translateX(15px); } to { opacity: .22; transform: translateX(0); } }
@media (max-width:767px) { .dc-home-hero { min-height: 65dvh; padding: 40px 24px; } .dc-home-copy h1 { letter-spacing: -1px; } .dc-home-search { width: 100%; justify-content: center; } }
@media (prefers-reduced-motion:reduce) {
    body .splash-screen .spinner::before, body .splash-screen .spinner::after,
    body .datacar-initial-splash-progress::before, body .datacar-initial-splash-progress::after,
    .dc-home-paths { animation: none; }
}

/* EsRl210: operational report surface, aligned with the EsRl565 reference.
   Styling is limited to this page; native controls, events and popup portals remain intact. */
.dc-shell .esrl210-workspace {
    --report-accent: #137fc1;
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    min-height: calc(100dvh - 170px);
    padding: 0 clamp(12px, 1.4vw, 28px) 32px;
    background: transparent;
    color: var(--dc-ink);
    font: 13px/1.45 'DM Sans', 'Segoe UI', sans-serif;
}
.dc-shell .esrl210-workspace .report-header {
    min-height: 112px;
    padding: 22px 28px;
    border-radius: 0 0 9px 9px;
    border-bottom: 3px solid #0a9dd4;
    background: #0b3d62;
    background-image: none;
}
html[data-workspace-background] .dc-shell .esrl210-workspace .report-header {
    background-image: linear-gradient(90deg,#0b3d62f5,#0b3d62e8),var(--dc-workspace-art);
    background-size: cover;
}
.dc-shell .esrl210-workspace .report-location { font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #b9e1f4; }
.dc-shell .esrl210-workspace .dc-page-title-text { font-family: inherit; font-size: clamp(25px,2.1vw,34px); font-weight: 750; letter-spacing: -.6px; line-height: 1.2; margin: 5px 0 0; }
.dc-shell .esrl210-workspace .report-emblem { width: 44px; height: 44px; border-color: #75abc7; background: #ffffff0a; }
.dc-shell .esrl210-workspace .report-action .dxbl-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 42px; min-width: 140px; background: #fff; color: #0b4773; border: 1px solid #d1e5ef; border-radius: 6px; font: 700 13px 'Segoe UI',sans-serif; box-shadow: 0 2px 6px #001c3614; }
.dc-shell .esrl210-workspace .report-action .dxbl-btn:hover { background: #e6f5fc; border-color: #93c9e5; }
.dc-shell .esrl210-workspace .report-info { padding: 12px 2px; font-size: 12px; color: var(--dc-muted); }
.dc-shell .esrl210-workspace .report-section-nav { margin: 0 0 16px; padding: 3px; border-radius: 6px; background: var(--dc-surface); border-color: var(--dc-line); }
.dc-shell .esrl210-workspace .report-section-nav button { min-height: 38px; padding: 7px 14px; font-size: 12px; color: var(--dc-ink); }
.dc-shell .esrl210-workspace .report-section-nav .dc-icon { width: 17px; height: 17px; flex-basis: 17px; }
.dc-shell .esrl210-workspace > .dxbl-fl > .dxbl-row { margin-inline: 0; }
.dc-shell .esrl210-workspace .dxbl-fl-group { padding: 0; margin-bottom: 14px; border: 0; background: transparent; min-width: 0; }
.dc-shell .esrl210-workspace .dxbl-fl-group > .dxbl-group {
    --dxbl-group-bg: var(--dc-surface);
    --dxbl-group-color: var(--dc-ink);
    --dxbl-group-border-color: var(--dc-line);
    background: var(--dc-surface);
    color: var(--dc-ink);
    border: 1px solid var(--dc-line);
    border-radius: 8px;
    box-shadow: 0 3px 12px #0f365209;
    overflow: visible;
}
.dc-shell .esrl210-workspace .report-emission > .dxbl-group { border-top: 3px solid var(--report-accent); }
.dc-shell .esrl210-workspace .dxbl-group-header {
    min-height: 48px;
    padding: 14px 18px 6px;
    background: transparent;
    color: var(--dc-ink);
    border: 0;
    font: 700 14px/1.4 'DM Sans','Segoe UI',sans-serif;
    gap: 10px;
}
.dc-shell .esrl210-workspace .dxbl-group-header .dc-icon { color: var(--report-accent); width: 19px; height: 19px; }
.dc-shell .esrl210-workspace .dxbl-group-header .dxbl-text { white-space: normal; }
.dc-shell .esrl210-workspace .dxbl-group-body-content { padding: 4px 18px 16px; }
.dc-shell .esrl210-workspace .dxbl-fl-item { padding-top: 6px; padding-bottom: 6px; min-width: 0; }
.dc-shell .esrl210-workspace .dxbl-fl-cpt { color: var(--dc-muted); font: 600 12px/1.35 'DM Sans','Segoe UI',sans-serif; margin-bottom: 6px; }
.dc-shell .esrl210-workspace .dxbl-text-edit {
    --dxbl-text-edit-bg: var(--dc-surface);
    --dxbl-text-edit-color: var(--dc-ink);
    --dxbl-text-edit-border-color: var(--dc-line);
    min-height: 40px;
    border: 1px solid var(--dc-line);
    border-radius: 5px;
    background: var(--dc-surface);
    color: var(--dc-ink);
    font: 13px/1.4 'DM Sans','Segoe UI',sans-serif;
}
.dc-shell .esrl210-workspace .dxbl-text-edit-input { font: inherit; color: inherit; }
.dc-shell .esrl210-workspace .dxbl-text-edit:hover { border-color: #82b5d1; }
.dc-shell .esrl210-workspace .dxbl-text-edit:focus-within { border-color: var(--report-accent); outline: 2px solid #137fc133; outline-offset: 1px; }
.dc-shell .esrl210-workspace .dxbl-text-edit:has(input:disabled) { background: var(--dc-page); color: var(--dc-muted); }
.dc-shell .esrl210-workspace .dxbl-edit-btn-dropdown { min-width: 32px; border-color: var(--dc-line); color: var(--dc-muted); background: transparent; }
.dc-shell .esrl210-workspace [data-dc-date-client], .dc-shell .esrl210-workspace button[aria-label^='Abrir calendário'] { min-height: 40px; font-size: 13px; }
.dc-shell .esrl210-workspace .report-sectors { min-height: 40px; gap: 10px 20px; padding: 6px 10px; border: 1px solid var(--dc-line); border-radius: 5px; background: var(--dc-page); }
.dc-shell .esrl210-workspace .report-sectors .dxbl-checkbox { font: 13px 'Segoe UI',sans-serif; }
.dc-shell .esrl210-workspace :is(.report-products,.report-services) .dxbl-fl-group > .dxbl-group { box-shadow: none; background: var(--dc-page); }
.dc-shell .esrl210-workspace :is(.report-products,.report-services) .dxbl-group-header { font-size: 13px; }
.dc-shell .esrl210-workspace :is(.report-products,.report-services) [role='treegrid'] { border: 1px solid var(--dc-line); border-radius: 5px; }
.dc-shell .esrl210-workspace [role='columnheader'] { background: var(--dc-page); color: var(--dc-ink); font: 600 12px 'Segoe UI',sans-serif; }

/* Complete workspace refinements: solid controls over optional static artwork. */
html { --dc-art-veil: 86%; }
html[data-workspace-intensity='defined'] { --dc-art-veil: 40%; }
html[data-workspace-background='terrain'] .dc-shell,
html[data-workspace-background='waves'] .dc-shell {
    background-image: linear-gradient(color-mix(in srgb,var(--dc-page) var(--dc-art-veil),transparent),color-mix(in srgb,var(--dc-page) var(--dc-art-veil),transparent)),var(--dc-workspace-art);
    background-size: auto,100% auto; background-repeat:no-repeat,repeat-y; background-position:center top; background-attachment: scroll;
}
.dc-shell .esrl210-workspace { background: transparent; }
/* Static alternatives inspired by the supplied glow, beams and shader references. */
html { --dc-background-color:#d36a9c; }
.dc-shell { --dc-background-paint:var(--dc-background-color); }
html[data-workspace-intensity='soft'] .dc-shell { --dc-background-paint:color-mix(in srgb,var(--dc-background-color) 35%,var(--dc-page)); }
html[data-workspace-background='glow'] .dc-shell {
    background-image:radial-gradient(ellipse at 55% 42%,color-mix(in srgb,var(--dc-background-paint) 60%,transparent),transparent 72%);
}
html[data-workspace-background='beams'] .dc-shell {
    background-image:linear-gradient(125deg,transparent 12%,color-mix(in srgb,var(--dc-background-paint) 48%,transparent) 22%,transparent 35%,color-mix(in srgb,var(--dc-background-paint) 34%,transparent) 46%,transparent 58%,color-mix(in srgb,var(--dc-background-paint) 44%,transparent) 76%,transparent 90%);
}
html[data-workspace-background='aurora'] .dc-shell {
    background-image:radial-gradient(ellipse at 15% 20%,color-mix(in srgb,var(--dc-background-paint) 60%,transparent),transparent 58%),radial-gradient(ellipse at 80% 45%,color-mix(in srgb,#83bdb9 var(--dc-static-detail,30%),transparent),transparent 58%),radial-gradient(ellipse at 45% 95%,color-mix(in srgb,#a29bdd var(--dc-static-detail,30%),transparent),transparent 65%);
}
html[data-workspace-background='mesh'] .dc-shell {
    background-image:radial-gradient(ellipse at 10% 15%,color-mix(in srgb,var(--dc-background-paint) 60%,transparent),transparent 45%),radial-gradient(ellipse at 85% 80%,color-mix(in srgb,var(--dc-background-paint) 48%,transparent),transparent 55%),radial-gradient(ellipse at 70% 10%,color-mix(in srgb,#89b8d6 var(--dc-static-detail,30%),transparent),transparent 48%);
}
html:is([data-workspace-background='glow'],[data-workspace-background='beams'],[data-workspace-background='aurora'],[data-workspace-background='mesh']) .dc-shell {
    background-color:var(--dc-page); background-size:100% 100dvh; background-repeat:repeat-y; background-attachment:scroll;
}
html[data-workspace-intensity='soft']:is([data-workspace-background='glow'],[data-workspace-background='beams'],[data-workspace-background='aurora'],[data-workspace-background='mesh']) {
    --dc-static-detail:10%;
}
.dc-appearance-options input[type='color'] { width:100%; height:46px; padding:4px 8px; border:1px solid var(--dc-line); border-radius:8px; background:var(--dc-page); cursor:pointer; }
.themeswitcher-color.RosaClaro a::before { background:#a52661 !important; }
.themeswitcher-color.RosaEscuro a::before { background:#ee8db8 !important; }
.dc-nav-brand { min-width:0; max-width:100%; }
.dc-nav-brand .dc-nav-logo { width:clamp(150px,16vw,220px); height:auto; object-fit:contain; }
.dc-workspace-navigation.is-sidebar .dc-nav-brand .dc-nav-logo { width:min(210px,100%); }
.dc-shell .themeswitcher-container {
    top:64px; right:12px; width:min(400px,calc(100vw - 24px)); max-height:calc(100dvh - 124px);
    border-radius:14px; background:var(--dc-surface) !important; color:var(--dc-ink) !important;
    padding:0 20px 20px; scrollbar-width:thin; overscroll-behavior:contain;
    font:14px/1.5 'Segoe UI',sans-serif; box-sizing:border-box;
}
.dc-shell .themeswitcher-container-shown { height:calc(100dvh - 124px); }
.dc-shell .themeswitcher-container-hidden { height:0; padding-block:0; }
.dc-appearance-heading { position:sticky; top:0; z-index:2; display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:22px 0 16px; background:var(--dc-surface); border-bottom:1px solid var(--dc-line); }
.dc-appearance-heading span { color:var(--dc-muted); font-size:10px; font-weight:700; letter-spacing:1.5px; }
.dc-appearance-heading h2 { margin:4px 0; font:650 24px/1.2 'Segoe UI',sans-serif; color:var(--dc-ink); }
.dc-appearance-heading p { margin:6px 0 0; font-size:12px; color:var(--dc-muted); }
.dc-appearance-heading button { min-width:44px; min-height:44px; border:1px solid var(--dc-line); border-radius:8px; color:var(--dc-ink); background:var(--dc-page); font-size:24px; }
.dc-shell .themeswitcher-content { padding:20px 0; margin:0; border-bottom:1px solid var(--dc-line); }
.dc-shell .themeswitcher-title { background:none; border:0; font:650 15px/1.4 'Segoe UI',sans-serif; margin:0 0 16px; padding:0; }
.dc-shell .themeswitcher-subtitle { font-size:12px; color:var(--dc-muted); padding:12px 0 4px; }
.dc-shell .themeswitcher-colors { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.dc-shell .themeswitcher-color { max-width:none; padding:0; min-width:0; }
.dc-shell .themeswitcher-colors .themeswitcher-color a {
    min-height:48px; padding:10px; gap:8px; border:1px solid var(--dc-line); border-radius:8px;
    color:var(--dc-ink) !important; background:var(--dc-page) !important; font:500 12px/1.4 'Segoe UI',sans-serif;
    box-shadow:none; overflow-wrap:anywhere; text-decoration:none;
}
.dc-shell .themeswitcher-colors .themeswitcher-color a::before { flex:none; margin:0; width:16px; height:16px; border:1px solid var(--dc-line); }
.dc-shell .themeswitcher-colors .themeswitcher-color.active a,
.dc-shell .themeswitcher-colors .themeswitcher-color a:hover { background:var(--dc-hover) !important; border-color:#1685c9; }
.dc-shell .themeswitcher-colors .themeswitcher-color.active a::after { flex:none; margin-left:auto; }
.dc-shell .themeswitcher-custom-color { margin:0; border:0; padding:4px 0; background:var(--dc-surface); }
.dc-appearance-options { gap:8px; }
.dc-appearance-options label { color:var(--dc-muted); font-size:12px; }
.dc-appearance-options select { width:100%; min-height:46px; border:1px solid var(--dc-line); background:var(--dc-page); color:var(--dc-ink); font:14px 'Segoe UI',sans-serif; border-radius:8px; }
.dc-appearance-options small { max-width:none; font-size:12px; margin-top:8px; }
.dc-shell .dc-appearance-close { min-height:46px; color:white; background:#106fac; border-color:#106fac; border-radius:8px; font-weight:600; }
.themeswitcher-container :is(button,a,select):focus-visible { outline:2px solid #1685c9; outline-offset:2px; }

/* Supplied Floating Paths + feature rows: useful shortcuts, no decorative animation loop. */
.dc-home-hero { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr); gap:clamp(32px,5vw,100px); min-height:calc(100dvh - 210px); padding:clamp(32px,5vw,80px); border-radius:12px; background:radial-gradient(ellipse at 85% 0%,#124b68 0%,#0b2941 65%); }
.dc-home-paths { opacity:.14; }
.dc-home-copy h1 { font-size:clamp(36px,4.3vw,68px); max-width:680px; }
.dc-home-copy p { font-size:clamp(16px,1.3vw,20px); }
.dc-home-shortcuts { position:relative; padding:24px; border:1px solid #45677d; border-radius:10px; background:#0b2941; }
.dc-home-shortcuts > .dc-home-eyebrow { display:block; margin-bottom:16px; }
.dc-home-shortcuts button { display:flex; align-items:center; width:100%; gap:16px; padding:20px 0; border:0; border-top:1px solid #315169; background:transparent; color:#e9f5fc; text-align:left; cursor:pointer; }
.dc-home-shortcuts button:hover { color:#8cddff; }
.dc-home-shortcuts button:focus-visible { outline:2px solid #8cddff; outline-offset:4px; }
.dc-home-shortcuts button > span:nth-child(2) { flex:1; min-width:0; }
.dc-home-shortcuts strong { display:block; font-size:16px; font-weight:600; }
.dc-home-shortcuts small { display:block; font-size:12px; color:#b7cddd; margin-top:4px; line-height:1.6; }
.dc-home-shortcuts p { color:#a8c2d4; font-size:11px; line-height:1.5; margin:10px 0 0; }
.dc-shell + footer { height:auto !important; min-height:48px; }
.dc-shell + footer :is(button,a) { min-width:44px; min-height:44px; }
.dc-shell { padding-bottom:48px; }
/* Home fills the remaining workspace, rather than subtracting a fixed top-menu height. */
body:has(.dc-home-hero) { min-height:100dvh; display:flex; flex-direction:column; }
body:has(.dc-home-hero) > .notranslate { flex:1; display:flex; flex-direction:column; }
.dc-shell:has(.dc-home-hero) { flex:1; display:flex; flex-direction:column; min-height:0; }
.dc-shell:has(.dc-home-hero) > main { min-height:0; margin-bottom:0; display:flex; flex-direction:column; flex:1; }
.dc-shell:has(.dc-home-hero) > main > article { display:flex; flex-direction:column; flex:1; min-width:0; }
.dc-shell .dc-home-hero { flex:1; min-height:0; box-sizing:border-box; }
@media(min-width:1024px) {
    .dc-shell-sidebar:has(.dc-home-hero) > main { display:grid; grid-template-columns:264px minmax(0,1fr); align-items:stretch; }
    .dc-shell-sidebar:has(.dc-home-hero) .dc-shell-nav { min-height:0; height:auto; align-self:stretch; }
}
.dc-company-picker { border-radius:10px; border:1px solid var(--dc-line); }
.dc-company-picker .dxbl-list-box { --dxbl-list-box-bg:var(--dc-surface); --dxbl-list-box-color:var(--dc-ink); }
.dc-company-picker :is(.dxbl-list-box-item,.dxbl-list-box-item-content) { color:var(--dc-ink); font-family:'Segoe UI',sans-serif; }
.dc-company-picker [role='option'] { background:var(--dc-surface) !important; color:var(--dc-ink) !important; font:14px/1.45 'Segoe UI',sans-serif !important; }
.dc-company-picker [role='option']:hover,
.dc-company-picker [role='option'][aria-selected='true'] { background:var(--dc-hover) !important; }
.dc-shell:has(.datacar-login-background) .dc-shell-nav { display:none; }
.dc-shell:has(.datacar-login-background) { padding-bottom:0; }
html[data-workspace-motion='reduced'] :is(.dc-home-paths,.dc-nav-chevron,.dc-nav-link,.dc-nav-branch > summary,.dc-nav-action,.splash-screen .spinner::before,.splash-screen .spinner::after,.datacar-initial-splash-progress::before,.datacar-initial-splash-progress::after) { animation:none !important; transition:none !important; }
@media (max-width:1023px) {
    .dc-home-hero { grid-template-columns:1fr; min-height:auto; gap:32px; }
    .dc-home-shortcuts { padding:20px; }
    .dc-nav-brand .dc-nav-logo { width:clamp(145px,38vw,190px); }
    .dc-shell .themeswitcher-container { top:64px; right:8px; width:calc(100% - 16px); max-height:calc(100dvh - 124px); }
    .dc-shell .themeswitcher-container-shown { height:calc(100dvh - 124px); }
}
@media (min-width:1500px) {
    .dc-shell .esrl210-workspace > .dxbl-fl > .dxbl-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); column-gap: 16px; }
    .dc-shell .esrl210-workspace > .dxbl-fl > .dxbl-row > .dxbl-fl-group { width: 100%; grid-column: 1 / -1; }
    .dc-shell .esrl210-workspace > .dxbl-fl > .dxbl-row > :is(.report-products,.report-services) { grid-column: auto; }
}
@media (max-width:767px) {
    .dc-shell .esrl210-workspace { padding: 0 10px 24px; }
    .dc-shell .esrl210-workspace .report-header { padding: 18px 16px; gap: 16px; }
    .dc-shell .esrl210-workspace .report-action, .dc-shell .esrl210-workspace .report-action .dxbl-btn { width: 100%; }
    .dc-shell .esrl210-workspace .report-section-nav { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
    .dc-shell .esrl210-workspace .report-section-nav button { min-height: 44px; }
    .dc-shell .esrl210-workspace .dxbl-group-header { padding-inline: 12px; }
    .dc-shell .esrl210-workspace .dxbl-group-body-content { padding-inline: 12px; }
    .dc-shell .esrl210-workspace .dxbl-text-edit, .dc-shell .esrl210-workspace [data-dc-date-client], .dc-shell .esrl210-workspace button[aria-label^='Abrir calendário'] { min-height: 44px; }
}

/* The column paints the full page height; only its contents stick and scroll. */
@media (min-width:1024px) {
    .dc-shell.dc-shell-sidebar > main { margin:0; min-height:calc(100dvh - 48px); align-items:stretch; }
    .dc-shell-sidebar .dc-shell-nav,
    .dc-shell-sidebar:has(.dc-home-hero) .dc-shell-nav {
        position:relative; top:auto; height:auto; min-height:0; align-self:stretch;
        padding:0 12px; overflow:visible;
    }
    .dc-shell-sidebar .dc-workspace-navigation.is-sidebar {
        position:sticky; top:0; max-height:calc(100dvh - 48px); overflow-y:auto;
        flex-wrap:nowrap; box-sizing:border-box; padding:24px 0; overscroll-behavior:contain;
    }
    .dc-workspace-navigation.is-sidebar > * { flex-shrink:0; }
    .dc-shell-sidebar .dc-shell-nav > div:has(> .dc-navigation) { position:sticky; top:0; }
}
.dc-shell:has(.dc-original-background) { isolation:isolate; }
.dc-original-background { position:fixed; inset:0; z-index:-1; pointer-events:none; overflow:hidden; }
.dc-original-background canvas { display:block; width:100%; height:100%; }
html[data-workspace-intensity='soft'] .dc-original-background { opacity:.3; }
.dc-original-background[data-effect='original-beams'] { background:#0a0a0a; }
.dc-original-background[data-effect='original-beams'] canvas { filter:blur(15px); }
.dc-original-background[data-effect='original-beams']::after { content:''; position:absolute; inset:0; background:rgb(10 10 10 / var(--beam-overlay,.05)); backdrop-filter:blur(50px); }
.dc-original-background[data-failed='true']::after { content:'Efeito indisponível neste dispositivo. Escolha outro fundo em Aparência.'; position:absolute; bottom:56px; right:16px; max-width:320px; padding:12px; color:var(--dc-ink); background:var(--dc-surface); font:12px 'Segoe UI',sans-serif; }
html[data-workspace-background='original-yellow'] .dc-shell { background:radial-gradient(circle at center,#fff99199 0%,transparent 70%),white; }
html[data-workspace-background='original-pink'] .dc-shell { background:radial-gradient(circle at center,#fbb6ce,transparent),white; }
html[data-workspace-motion='reduced'] .dc-original-background[data-effect='original-beams']::after { backdrop-filter:none; }
.themeswitcher-colors a[data-theme='Marrom']::before { background:#805337; }

.dc-icon-palette { --dc-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3a9 9 0 1 0 0 18h1a2 2 0 0 0 1-3.7 1.5 1.5 0 0 1 1-2.8h2a4 4 0 0 0 4-4C21 6 17 3 12 3Z'/%3E%3Ccircle cx='7' cy='10' r='1'/%3E%3Ccircle cx='11' cy='7' r='1'/%3E%3Ccircle cx='16' cy='8' r='1'/%3E%3C/svg%3E"); }
.dc-icon-logout { --dc-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4H4v16h5M10 12h11m-4-4 4 4-4 4'/%3E%3C/svg%3E"); }
.dc-icon-environment { --dc-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='7' rx='2'/%3E%3Crect x='3' y='14' width='18' height='7' rx='2'/%3E%3Cpath d='M7 6.5h.01M7 17.5h.01M12 6.5h5M12 17.5h5'/%3E%3C/svg%3E"); }

.dc-nav-brand > a { position:relative; display:block; }
.dc-nav-brand .dc-nav-logo { background:transparent; padding:0; border-radius:0; }
html[data-bs-theme='dark'] .dc-nav-brand > a::after {
    content:''; position:absolute; inset:0; pointer-events:none;
    background:#f4f7fc; clip-path:inset(0 0 0 25%);
    mask:url('../images/logo-datacar-1-1.png') center / 100% 100% no-repeat;
}

/* Opt-in reading settings: form UI only, never report canvases or navigation. */
html[data-screen-font]:not([data-screen-font='default']) .dc-shell article:not(:has(.datacar-login-background)) :is(.dxbl-fl-cpt, .dxbl-group-header, .dxbl-group-header > .dxbl-text, .dxbl-fl-group-header, .dxbl-text-edit-input, .dxbl-check-text, label, [data-dc-date-client]) {
    font-size:var(--dc-screen-font) !important; line-height:1.5 !important;
}
html[data-screen-font]:not([data-screen-font='default']) .dc-shell article:not(:has(.datacar-login-background)) .dxbl-text-edit {
    --dxbl-text-edit-font-size:var(--dc-screen-font); min-height:calc(var(--dc-screen-font) * 2.4); height:auto;
}
html[data-screen-font]:not([data-screen-font='default']) .dc-shell article:not(:has(.datacar-login-background)) :is(.dxbl-fl-cpt, .dxbl-group-header, .dxbl-fl-group-header) {
    white-space:normal; height:auto;
}
html[data-screen-weight='bold'] .dc-shell article:not(:has(.datacar-login-background)) :is(.dxbl-fl-cpt, .dxbl-group-header, .dxbl-group-header > .dxbl-text, .dxbl-fl-group-header, .dxbl-text-edit-input, .dxbl-check-text, label, [data-dc-date-client]) {
    font-weight:700 !important;
}
html[data-screen-font]:not([data-screen-font='default']) .dc-shell article:not(:has(.datacar-login-background)) .dxbl-fl-item {
    min-width:min(100%,calc(var(--dc-screen-font) * 22)); flex-grow:1; max-width:100%;
}
.dc-shell[data-navigation-ready='false']:has(.dc-workspace-navigation) { visibility:hidden; }
/* Shared heading palette: independent from light/dark field surfaces. */
:root {
    --dc-heading-background: radial-gradient(ellipse at 85% 0%, #124b68 0%, #0b2941 70%);
    --dc-heading-accent: #137fc1;
    --dc-heading-button-ink: #0b4773;
}
html:root .dc-shell :is(.report-workspace, .esrl210-workspace, .clat025-workspace) :is(.report-header, .dc-page-header) {
    background: var(--dc-heading-background);
    color: #fff;
    border-bottom-color: var(--dc-heading-accent);
}
html:root .dc-shell :is(.report-workspace, .esrl210-workspace, .clat025-workspace) :is(.report-location, .dc-page-kicker) { color: #e1eaf0; }
html:root .dc-shell :is(.report-workspace, .esrl210-workspace, .clat025-workspace) :is(.dc-page-title-text, .dc-page-title, .report-emblem, .dc-page-header-icon) { color: #fff; }
html:root .dc-shell :is(.report-workspace, .esrl210-workspace, .clat025-workspace) :is(.report-emblem, .dc-page-header-icon) { border-color: #ffffff55; background: #ffffff08; }
html:root .dc-shell :is(.report-workspace, .esrl210-workspace) .report-action .dxbl-btn { background: #fff; color: var(--dc-heading-button-ink); border-color: #ffffff99; }
html:root .dc-shell :is(.report-workspace, .esrl210-workspace) .report-action .dxbl-btn:hover:not(:disabled) { background: #edf2f5; border-color: #fff; }
