.uiButtonIcon{display:inline-block;vertical-align:-2px;width:12px;height:12px;margin-right:4px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;flex:none}
:is(button,a.btn,a.miniBtn)[data-ui-tone=positive]:not(:disabled){background:#187144!important;color:#fff!important;border-color:#187144!important}:is(button,a.btn,a.miniBtn)[data-ui-tone=negative]:not(:disabled){background:#ad303d!important;color:#fff!important;border-color:#ad303d!important}
:is(button,a.btn,a.miniBtn)[data-ui-tone=positive]:hover{background:#115a35!important}:is(button,a.btn,a.miniBtn)[data-ui-tone=negative]:hover{background:#8d2230!important}
.sidebarCollapse{display:flex;align-items:center;justify-content:center;gap:6px;flex:none;width:100%;padding:4px 6px;min-height:28px;border:1px solid #647e9c;border-radius:6px;background:transparent;color:#e9f1fa;font:600 10px Arial;cursor:pointer}
.sidebarCollapse>span:first-child{font-size:22px;line-height:16px}.sidebarMobileBrand{display:none}
@media(min-width:901px){
 body.sidebarCompact .app{grid-template-columns:64px minmax(0,1fr)}body.sidebarCompact .app>aside{padding:8px 6px}
 body.sidebarCompact #portalSidebar>nav,body.sidebarCompact #sidebarModuleName,body.sidebarCompact .sidebarCollapseLabel{display:none!important}
 body.sidebarCompact #portalSidebar .homeLogo{margin:9px 0}body.sidebarCompact #portalSidebar .logo{margin:0}
 body.sidebarCompact #portalSidebar .brandImage{width:44px;height:auto;margin:auto;max-width:100%}
 body.sidebarCompact .app>main{max-width:none}body.sidebarCompact .sidebarCollapse{padding:4px;min-height:30px}
}
@media(max-width:900px){.sidebarCollapse{display:none}.sidebarMobileBrand{display:block;flex:none}.sidebarMobileBrand img{display:block;width:34px;height:auto;filter:brightness(0) invert(1)}.statusbar .accountActions{gap:4px}.statusbar #who{font-size:10px}}
@media print{.sidebarCollapse,.sidebarMobileBrand{display:none!important}.uiButtonIcon{display:none!important}}
/* Identidade compartilhada: compactação em tela, sem afetar comprovantes A4. */
@media screen{
 #appView>main{padding:12px 18px;max-width:none;min-width:0}
 #platformView{max-width:none}
 #appView .top{gap:8px;align-items:center;margin:0 0 8px;min-height:0}
 #appView .top h1{font-size:25px;line-height:1.2;margin:0}
 #appView .top h2,#appView .dialogHead h2{font-size:18px;margin:0}
 #appView .top p{margin:3px 0 0;line-height:1.35}
 #platformPageNavigation{margin:0 0 6px!important;min-height:0!important;padding:0!important}
 #appView .toolbar,#appView .actions{gap:5px;align-items:center}
 #appView .toolbar{margin-top:6px;margin-bottom:8px}
 #appView .card{padding:10px;border-radius:9px;min-width:0}
 #appView .card h2{font-size:16px;margin:0 0 7px}
 #appView .card h3{font-size:14px;margin:5px 0}
 #appView .card p{margin:5px 0;font-size:12px;line-height:1.4}
 #appView .grid,#appView .row{gap:8px}
 #appView .list{gap:5px}
 #appView .item{padding:6px 8px;gap:6px;font-size:12px}
 #appView main label{margin:4px 0 3px;font-size:11px}
 #appView main input:not([type=checkbox]):not([type=radio]),#appView main select{padding:6px 8px;min-height:32px;font-size:12px}
 #appView main .multiFilter>summary{padding:6px 28px 6px 8px;min-height:32px}
 #appView main .btn{padding:7px 9px;font-size:12px;min-height:31px}
 #appView main .miniBtn{padding:4px 6px;min-height:26px;font-size:10px}
 #appView main td,#appView main th{padding:5px 6px;line-height:1.3}
 #appView main table{font-size:12px}
 #appView main .badge{padding:3px 6px;font-size:10px}
 #appView main .dialog{padding:14px}
 #appView main textarea{min-height:64px}
 #appView .employeeFilters{margin-bottom:8px}
 #appView .employeeFilters .note{margin:0 0 6px}
 #appView .metric{padding:9px}
 #appView .metric .n{font-size:25px;line-height:1.25}
 #appView .metric .label{font-size:10px;line-height:1.3}
 #appView .cards{gap:7px;margin-bottom:8px}
 #dashboard>.cards{grid-template-columns:repeat(6,minmax(0,1fr))}
 #dashboard .currentNames{font-size:10px;line-height:1.3}
 #appView .vacationLegend{margin:5px 0 8px}
 #appView .registrationGroup{margin:9px 0 12px}
 #appView .registrationGroup h2{font-size:14px;margin:0 0 6px}
 #appView .registrationGrid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:7px}
 #appView .registrationCard{padding:9px;position:relative;min-height:94px}
 #appView .registrationCard strong{font-size:13px}
 #appView .registrationCard p{font-size:11px;line-height:1.35;margin:5px 0}
 #appView .registrationCard>.uiButtonIcon{width:17px;height:17px;vertical-align:-4px;color:var(--focus)}
 #appView .platformFilters{gap:6px;margin-bottom:8px}
 #appView .platformFilters fieldset{padding:5px}
 #appView .platformEmpty,#appView .hrWorkflowNotice{padding:8px 10px;margin:7px 0;font-size:12px;line-height:1.4}
 #appView .logisticsTools,#appView .logisticsActions,#appView .lmsTabs{gap:5px;margin:6px 0 8px}
 #appView .logisticsSummary,#appView .lmsMetrics,#appView .evalMetrics,#appView .hrWorkflowMetrics{gap:7px;margin:8px 0}
 #appView .logisticsSummary strong,#appView .lmsMetrics strong{font-size:23px;margin-top:2px}
 #appView .lmsCards{gap:8px;margin:8px 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr))}
 #appView .hrWorkflowRecord{margin:6px 0;gap:8px}
 #appView .hrWorkflowStage{margin:7px 0;padding:8px}
 #appView .hrWorkflowStage li{margin:5px 0}
 #appView .hrWorkflowTask{padding:6px 0}
 #appView .iamFields,#appView .lmsFields,#appView .hrWorkflowFields{gap:7px}
 #appView .iamLayout{gap:8px;margin:8px 0}
 #appView .iamProfile{padding:6px 7px;margin:3px 0}
 #appView .iamWarning,#appView .lmsWarning,#appView .lmsError{padding:7px 9px;margin:7px 0;font-size:12px}
 #appView .logisticsPanel .card{margin-bottom:8px}
 #appView .localBanner{margin:5px 0 8px;line-height:1.35}
 #appView .sourceDetails{font-size:10px;margin-top:2px}
 #portalSidebar nav button{display:flex;align-items:center;gap:7px;padding:7px 8px;margin:1px 0;line-height:1.3;font-size:12px;min-height:31px}
 #portalSidebar nav button>.uiButtonIcon{width:15px;height:15px;margin:0;flex-shrink:0;opacity:.95}
 #portalSidebar nav summary>.uiButtonIcon{width:13px;height:13px;margin-right:5px}
 #portalSidebar nav details{margin:6px 0;padding-bottom:5px}
 #portalSidebar nav summary{padding:6px 4px;font-size:10px;letter-spacing:.035em}
 #appView>aside .homeLogo{margin:9px 0 14px}
 #appView>aside .logo{margin:0 5px}
 #appView>aside .logo .brandImage{width:145px}
 #appView>aside .logo small{margin-top:8px;font-size:10px}
 .uiButtonIcon{vertical-align:-2px}
 button[data-ui-tone=attention]:not(:disabled){background:#8b4c0d!important;color:white!important;border-color:#b56a18!important}
 #appView [data-ui-attention=critical]{border-color:var(--danger-ink);background:var(--danger-bg);color:var(--danger-ink)}
 #appView [data-ui-attention=attention]{border-color:var(--warn-ink);background:var(--warn-bg);color:var(--warn-ink)}
 #appView [data-ui-attention]:not([data-ui-attention=""]) .label,#appView [data-ui-attention]:not([data-ui-attention=""]) .n{color:inherit}
 #appView :is(.reviewIssue,.iamWarning,.lmsWarning,.notice,.hrWorkflowWarning){border-left:3px solid var(--warn-ink);color:var(--warn-ink);background:var(--warn-bg)}
 #appView :is(.issuePending,.pendingIssueMetric,.iamError,.lmsError){border-color:var(--danger-ink);color:var(--danger-ink);background:var(--danger-bg)}
 #appView .badge.warn{background:var(--warn-bg);color:var(--warn-ink)}
}
@media screen and (min-width:901px){
 #appView{transition:grid-template-columns .28s ease;grid-template-columns:230px minmax(0,1fr)}
 #appView>aside{transition:padding .28s ease;overflow:hidden;padding:10px 12px}
 #portalSidebar>nav{width:206px;transition:opacity .18s ease,transform .28s ease,visibility .28s;transform:translateX(0)}
 #portalSidebar .brandImage{transition:width .28s ease}
 #sidebarModuleName{transition:opacity .18s ease,max-height .28s ease;max-height:36px;overflow:hidden}
 .sidebarCollapseLabel{transition:opacity .18s ease,max-width .28s ease;max-width:160px;white-space:nowrap;overflow:hidden}
 body.sidebarCompact #appView{grid-template-columns:64px minmax(0,1fr)}
 body.sidebarCompact #portalSidebar>nav{display:block!important;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-16px)}
 body.sidebarCompact #portalSidebar>nav[hidden]{display:none!important}
 body.sidebarCompact #sidebarModuleName{display:block!important;opacity:0;max-height:0;margin:0}
 body.sidebarCompact .sidebarCollapseLabel{display:block!important;opacity:0;max-width:0}
 body.sidebarCompact #portalSidebar .brandImage{width:44px}
 body.sidebarCompact .sidebarCollapse{gap:0}
}
@media screen and (max-width:1100px) and (min-width:901px){#appView .registrationGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media screen and (max-width:900px){#appView>main{padding:10px 12px}#dashboard>.cards{display:flex;overflow-x:auto;scroll-snap-type:x proximity}#dashboard>.cards>.metric{flex:1 0 145px;scroll-snap-align:start}#appView .registrationGrid{grid-template-columns:repeat(2,minmax(0,1fr))}#portalSidebar nav button{min-height:40px}}
@media screen and (max-width:600px){#appView .top h1{font-size:22px}#appView .top{align-items:stretch}#appView main .btn,#appView main .miniBtn{min-height:40px}#appView main input:not([type=checkbox]):not([type=radio]),#appView main select{font-size:16px;min-height:40px}#appView .registrationGrid{grid-template-columns:repeat(2,minmax(0,1fr))}#appView .registrationCard{min-height:110px}#appView .registrationCard strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){#appView,#appView>aside,#portalSidebar>nav,#portalSidebar .brandImage,#sidebarModuleName,.sidebarCollapseLabel{transition:none!important}}
@media screen and (min-width:901px){body.sidebarCompact #appView>aside{padding:8px 6px}}
@media screen{
 #platformView .moduleCard{padding:11px;min-height:175px}
 #platformView .moduleCardLink{gap:5px}
 #platformView .moduleCard .moduleIcon{width:48px;height:48px;border-radius:9px}
 #platformView .moduleCard .moduleIcon svg{width:40px;height:40px}
 #appView main .hrWorkflowDashboard,#appView main .hrEvalDashboard{gap:8px;margin:8px 0}
}
@media screen{
 #appView .evaluationMetrics{gap:7px;margin:8px 0}
 #appView .evaluationMetrics strong{font-size:24px;margin:2px 0}
 #appView .evaluationTabs,#appView .evaluationToolbar{gap:5px;margin:7px 0}
 #appView .evaluationFields,#appView .evaluationFilters,#appView .evaluationInsightGrid{gap:7px}
 #appView .evaluationNotice{padding:7px 9px;margin:7px 0;font-size:12px;line-height:1.4}
 #appView .hrWorkflowMetricAlert{background:var(--warn-bg);color:var(--warn-ink);border-color:var(--warn-ink)}
 #appView .evaluationAction[data-status=overdue]{background:var(--danger-bg);color:var(--danger-ink);border-color:var(--danger-ink)}
}
@media screen{.evaluationRespond{padding:15px;max-width:1000px}.evaluationRespond h1{font-size:24px;margin:10px 0 6px}.evaluationRespond .evaluationNotice{padding:8px;margin:8px 0;font-size:12px;line-height:1.4}.evaluationRespond .evaluationQuestion{padding:10px;margin:8px 0}}
@media screen{#appView .grid.two{align-items:start}.bkTwo{align-items:start}}
/* Hierarquia do menu: grupo, trilha dos submenus e seleção atual. */
@media screen{
 #portalSidebar{background:#0b1c30}
 :root[data-theme=dark] #portalSidebar{background:#071321}
 #portalSidebar nav{--menu-current:#020b17;--menu-group:#10283e;--menu-hover:#17334d;--menu-rail:#34546e;--menu-accent:#73caff}
 #portalSidebar nav>button{margin:2px 0}
 #portalSidebar nav details{position:relative;border-bottom:1px solid #ffffff16;border-radius:7px;margin:8px 0;padding-bottom:5px}
 #portalSidebar nav details>summary{position:relative;padding:7px 6px;border-radius:6px;color:#a9c4de;line-height:1.4}
 #portalSidebar nav details[open]::before{content:'';position:absolute;top:33px;bottom:7px;left:12px;width:1px;background:var(--menu-rail);pointer-events:none}
 #portalSidebar nav details>button{width:calc(100% - 20px);margin:2px 0 2px 20px;padding:7px 9px 7px 12px;border-left:3px solid transparent;border-radius:5px;color:#c5d8eb}
 #portalSidebar nav details:has(button.active){background:#0c2236;border-bottom-color:#34546e}
 #portalSidebar nav details:has(button.active)>summary{background:var(--menu-group);color:#f1f8ff}
 #portalSidebar nav details[open]:has(button.active)::before{background:var(--menu-accent)}
 #portalSidebar nav button:hover{background:var(--menu-hover);color:#fff}
 #portalSidebar nav button.active,#portalSidebar nav button.active:hover{background:var(--menu-current);color:#fff;font-weight:750;border-left:3px solid var(--menu-accent);box-shadow:inset 0 0 0 1px #73caff3b}
 #portalSidebar nav>button.active{padding-left:9px}
 #portalSidebar nav button:focus-visible,#portalSidebar nav summary:focus-visible{outline:2px solid var(--menu-accent);outline-offset:1px}
}
@media screen and (max-width:900px){
 #portalSidebar nav details>button{min-height:40px}
 #portalSidebar nav details>summary{min-height:40px;display:list-item;padding:11px 6px}
 #portalSidebar nav details[open]::before{top:43px}
}
/* Cadastros no trabalho diário; Configurações sempre no rodapé autorizado. */
@media screen{
 #portalSidebar .homeLogo{width:100%;flex:none}
 #portalSidebar .homeLogo .logo{margin:0!important;width:100%;text-align:center}
 #portalSidebar .homeLogo .brandImage{display:block;margin-inline:auto;max-width:100%}
 #portalSidebar>nav{width:100%;padding-bottom:8px}
 #portalSidebar>#sidebarFooter{flex:none;min-height:0;overflow:visible;margin-top:auto;padding:7px 0 0;border-top:1px solid #ffffff26;background:inherit}
 #portalSidebar button[hidden]{display:none!important}
 #sidebarFooter button{font-weight:650}
}
@media screen and (min-width:901px){
 body.sidebarCompact #portalSidebar>nav{display:block!important;width:100%;opacity:1;visibility:visible;pointer-events:auto;transform:none}
 body.sidebarCompact #portalSidebar>nav[hidden]{display:none!important}
 body.sidebarCompact #portalSidebar nav button,body.sidebarCompact #portalSidebar nav details>summary{font-size:0!important;line-height:0;min-height:36px;width:100%;margin:3px 0;padding:7px 0;display:flex;align-items:center;justify-content:center;gap:0;border-radius:6px}
 body.sidebarCompact #portalSidebar nav button>.uiButtonIcon,body.sidebarCompact #portalSidebar nav summary>.uiButtonIcon{width:19px;height:19px;margin:0;opacity:1}
 body.sidebarCompact #portalSidebar nav button>span{display:none}
 body.sidebarCompact #portalSidebar nav details{margin:4px 0;padding:0;border:0}
 body.sidebarCompact #portalSidebar nav details::before{display:none}
 body.sidebarCompact #portalSidebar nav details>summary::marker{content:''}
 body.sidebarCompact #portalSidebar nav details>summary::-webkit-details-marker{display:none}
 body.sidebarCompact #portalSidebar nav details>button{display:none!important}
 body.sidebarCompact #portalSidebar nav button.active{border-left-width:2px;padding-left:0}
 body.sidebarCompact #portalSidebar .homeLogo{margin:8px 0 10px}
 body.sidebarCompact #sidebarFooter{padding-top:5px}
}
@media screen and (max-width:900px){#portalSidebar>#sidebarFooter{max-height:none}#portalSidebar>#sidebarFooter button{min-height:44px}}
