/* Shared workspace density; kiosk and standalone print documents stay separate. */
.ui-workspace{min-width:0}
.ui-workspace .notification-filter.ui-filter-form>label{flex:0 1 320px}
.notification-count{margin-left:auto;color:var(--text-secondary);font-size:.85rem;align-self:center}
.notification-count strong{color:var(--accent);font-size:1.2rem;margin-right:.35rem;font-variant-numeric:tabular-nums}
.notification-inbox .notification-meta{display:block;margin-top:.3rem;color:var(--text-secondary);font-size:.78rem;line-height:1.6}
.notification-inbox .notification-unread>td:first-child{box-shadow:inset 3px 0 var(--accent)}
.notification-inbox .notification-empty{text-align:center;padding:2rem 1rem}
.notification-help{color:var(--text-secondary);font-size:.8rem;line-height:1.7;margin:.75rem 0}
@media(max-width:640px){
 .ui-workspace .notification-filter.ui-filter-form>label{flex-basis:100%}
 .notification-count{margin:0}
 .notification-inbox .table-responsive{overflow:visible}
 .notification-inbox table,.notification-inbox tbody,.notification-inbox tr,.notification-inbox td{display:block;width:100%}
 .notification-inbox thead{display:none}
 .notification-inbox tr{padding:.75rem 1rem;border-bottom:1px solid var(--border)}
 .ui-workspace .notification-inbox .table td{padding:.35rem 0;border:0;white-space:normal}
 .notification-inbox tr[hidden]{display:none}
 .notification-inbox td[data-label]:not(:first-child)::before{content:attr(data-label);display:block;color:var(--text-secondary);font-size:.72rem;margin-bottom:.2rem}
 .notification-inbox .notification-unread{box-shadow:inset 3px 0 var(--accent)}
 .notification-inbox .notification-unread>td:first-child{box-shadow:none}
 .notification-inbox td:last-child .btn{width:100%;margin-top:.35rem}
 .notification-inbox td[data-label="Ação"]::before{display:none}
}
.entity-form-modal .card.container-narrow{border-radius:0;overflow:visible}
.employee-form{margin-left:0}
.employee-form [data-ui-tab]:not([hidden]),.employee-form [data-employee-access-custom]:not([hidden]){display:grid;gap:1rem}
.employee-form .ui-form-section{margin:0}
.employee-form .employee-organization{margin:0}
.employee-form .employee-form-links{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.employee-form-links>.form-hint{margin:0}
.employee-form .employee-form-actions{margin-top:1.25rem}
.employee-form .employee-access-intro{margin:0;line-height:1.6}
.employee-form .employee-access-option{display:flex;align-items:center;gap:.65rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);cursor:pointer;min-width:0}
[data-confirm-portal-removal]{margin-top:.75rem}
.employee-form [data-confirm-portal-removal] .employee-access-option{display:grid;grid-template-columns:auto 1fr;align-items:start}
[data-confirm-portal-removal] input{grid-column:1;grid-row:1;margin-top:.25rem}
[data-confirm-portal-removal] label>span{grid-column:2;grid-row:1}
[data-confirm-portal-removal] label>[data-field-error]{grid-row:2}
.employee-access-option input{flex-shrink:0;accent-color:var(--accent)}
.employee-access-option span{line-height:1.4;overflow-wrap:anywhere}
.employee-access-option:has(input:checked){border-color:var(--accent);background:var(--bg-surface)}
.employee-access-option:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.employee-form .employee-access-matrix{margin-top:1rem;border:1px solid var(--border);border-radius:8px}
.employee-access-matrix .table th:not(:first-child),.employee-access-matrix .table td{text-align:center}
.employee-access-matrix input{accent-color:var(--accent);width:1rem;height:1rem;cursor:pointer}
@media(max-width:640px){.employee-form .employee-form-links{align-items:flex-start;flex-direction:column}.employee-form .employee-access-option{padding:.65rem .75rem}.employee-form .ui-tabs{width:100%}.employee-form .ui-tabs button{flex:1;padding-inline:.65rem;white-space:normal}}
.ui-form-section{min-width:0;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-base)}
.ui-form-section>legend{padding:0 .4rem;color:var(--text-primary);font-size:.9rem;font-weight:600;line-height:1.5}
.ui-form-section>.form-hint{margin:.85rem 0 0;line-height:1.6}
.ui-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;min-width:0}
.ui-form-grid[hidden]{display:none!important}
.ui-form-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.ui-form-grid>.form-group{min-width:0;margin-bottom:0}
.ui-form-grid .form-label{line-height:1.45}
.ui-form-grid .form-control{width:100%;min-width:0}
.employee-organization{margin:1rem 0}
.employee-organization-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.75rem}
.employee-organization-footer>.form-hint{margin:0;flex:1;line-height:1.5}
.employee-organization-footer>.btn{flex-shrink:0}
.employee-organization .employee-organization-history{margin:.75rem 0 0;padding:0;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none}
.employee-organization-history>summary{padding:.65rem 0 0;font-size:.8rem;font-weight:500;line-height:1.5}
.employee-organization-history[open]>summary{padding-bottom:.65rem}
.employee-organization-events{list-style:none;margin:0;padding:0}
.employee-organization-events>li{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:.5rem 1rem;padding:.6rem 0;border-top:1px solid var(--border-subtle);font-size:.8rem;line-height:1.5}
.employee-organization-events time{color:var(--text-secondary);font-variant-numeric:tabular-nums}
.employee-organization-events strong{display:block;font-weight:500}
.employee-organization-events span{display:block;color:var(--text-secondary);overflow-wrap:anywhere}
.ui-attachment-list{overflow-wrap:anywhere;white-space:normal;list-style:none;margin:.5rem 0;padding:0}
.ui-attachment-list a{color:var(--text-primary);text-decoration:underline}
@media(max-width:640px){.employee-organization-footer{align-items:flex-start;flex-direction:column;gap:.5rem}.employee-organization-events>li{grid-template-columns:minmax(0,1fr);gap:.15rem}}
@media print{.employee-organization-footer>.btn{display:none}.employee-organization-history>ol{display:block}}
.ui-form-full{grid-column:1/-1}
@media(max-width:640px){.ui-form-grid,.ui-form-grid-three{grid-template-columns:minmax(0,1fr)}.ui-form-section{padding:.85rem}.ui-form-full{grid-column:auto}}
@media screen{.main-content.ui-workspace>.container{max-width:none;padding-inline:clamp(16px,1.25vw,24px)}.main-content.ui-workspace>.container>.container{max-width:none!important;width:100%;min-width:0;padding-inline:0}}
.app-sidebar .account-identity{min-width:0;flex:1}
.app-sidebar .account-dropdown summary{overflow-wrap:anywhere}
.app-sidebar .account-dropdown .btn{max-width:100%;white-space:normal;text-align:left;line-height:1.4}
.ui-workspace h1{font-size:1.7rem!important;font-weight:700!important;letter-spacing:-.035em!important;line-height:1.2;margin-bottom:.35rem!important}
.ui-workspace :is(.page-heading,.page-header){display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.ui-workspace :is(.page-heading,.page-header)>div{min-width:0}
.ui-workspace :is(.page-heading,.page-header) p{margin:0;max-width:65ch;color:var(--text-secondary)}
.ui-workspace .ui-action-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}
.ui-workspace .ui-page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}
.ui-workspace .dashboard-update{margin:0 0 1rem;font-size:.85rem;line-height:1.5;color:var(--text-secondary)}
.ui-workspace .dashboard-update time{font-variant-numeric:tabular-nums;color:var(--text-primary)}
.ui-workspace section.card>h2,.ui-workspace .card>h2{font-size:1.1rem;line-height:1.35;margin-bottom:.65rem}
.ui-workspace form.ui-filter-form{display:flex;align-items:flex-end;flex-wrap:wrap;gap:.75rem;padding:1rem!important;margin:0 0 1rem;border-radius:12px;min-width:0}
.ui-workspace .ui-filter-form>label,.ui-workspace .ui-filter-form>.form-group{display:flex;flex-direction:column;gap:.35rem;flex:1 1 200px;min-width:0;margin:0;font-size:.82rem;color:var(--text-secondary)}
.ui-workspace .ui-filter-form :is(input:not([type="checkbox"]):not([type="hidden"]),select){width:100%;min-width:0;min-height:42px;font-size:.875rem;color:var(--text-primary)}
.ui-workspace .ui-filter-form>.btn{flex:0 0 auto;align-self:flex-end}
.ui-workspace .ui-filter-form>.employee-context-field{flex:1 0 100%;width:100%;min-width:0}
.ui-workspace .employee-identity-picker .employee-search{width:0;border:0;box-shadow:none;background:transparent}
.employee-identity-note{display:block;margin-top:.35rem;color:var(--text-secondary);font-size:.8rem;line-height:1.5;overflow-wrap:anywhere}
.employee-identity-note[hidden],.employee-identity-number[hidden],.employee-option-number[hidden]{display:none}
.employee-option-note{display:block;font-size:.78rem;white-space:normal;color:inherit;font-weight:400}
.employee-identity-option>span:first-child{min-width:0;white-space:normal;overflow-wrap:anywhere}
.hr-person-filter>.employee-identity-picker{flex:1 1 100%;max-width:none}
.ui-workspace .settlement-filter>.settlement-all-employees{flex:1 1 250px}
.ui-workspace .settlement-filter>label:not(.employee-context-field):not(.settlement-all-employees){flex:0 1 140px}
@media(max-width:640px){.ui-workspace .settlement-filter>label:not(.employee-context-field):not(.settlement-all-employees){flex:1 1 120px}}
.ui-workspace .hr-person-filter>label{flex:0 0 auto;align-self:center}
.ui-workspace .hr-person-filter>select{flex:1 1 240px;max-width:none}
.ui-workspace .ui-filter-extra{flex:0 0 auto;align-self:flex-end;padding:0;margin:0;border:0;background:transparent;box-shadow:none;min-width:0}
.ui-workspace .ui-filter-extra>summary{margin:0;cursor:pointer;list-style:none}
.ui-workspace .ui-filter-extra>summary::after{content:'▾';margin-left:.4rem}
.ui-workspace .ui-filter-extra[open]{flex:1 1 100%;order:2}
.ui-workspace .ui-filter-extra[open]>summary{margin-bottom:.75rem}
.ui-workspace .ui-filter-extra[open]>summary::after{content:'▴'}
.ui-workspace .ui-filter-extra-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}
.ui-workspace .ui-filter-extra-fields>label{display:flex;flex-direction:column;gap:.35rem;min-width:0;font-size:.82rem;color:var(--text-secondary)}
@media(max-width:640px){.ui-workspace .ui-filter-extra{flex-basis:100%}.ui-workspace .ui-filter-extra>summary{width:100%}.ui-workspace .ui-filter-extra-fields{grid-template-columns:minmax(0,1fr)}}
.ui-workspace .table-responsive{max-width:100%;min-width:0;overflow-x:auto}
.ui-workspace .table :is(th,td){vertical-align:middle}
.ui-workspace .table th{font-weight:600;color:var(--text-secondary);background:var(--bg-base)}
.ui-workspace .table tbody tr:hover{background:var(--bg-card-hover)}
@media(max-width:640px){.ui-workspace h1{font-size:1.5rem!important}.ui-workspace :is(.page-heading,.page-header){align-items:flex-start}.ui-workspace .ui-filter-form>label,.ui-workspace .ui-filter-form>.form-group{flex-basis:100%}.ui-workspace .ui-filter-form>.btn{width:100%}.ui-workspace .ui-filter-form :is(input:not([type="checkbox"]):not([type="hidden"]),select){min-height:44px;font-size:1rem}.ui-workspace .ui-action-bar>.btn{flex:1 1 auto}}
.ui-workspace :is(.page-heading,.page-header){gap:1rem;margin-bottom:1.1rem}
.ui-workspace :is(.page-heading,.page-header) h1{font-size:1.7rem;letter-spacing:-.035em;line-height:1.2}
.ui-workspace :is(.page-heading,.page-header) p{font-size:.88rem;line-height:1.6}
.ui-workspace .table{font-size:.87rem}
.ui-workspace .table th{font-size:.8rem;letter-spacing:0;text-transform:none}
.ui-workspace .table :is(th,td){padding:.75rem .9rem}
.ui-workspace .table td:last-child .btn{border-radius:8px;box-shadow:none}
.ui-workspace .stats-grid{gap:.8rem;margin-bottom:1.1rem}
.ui-workspace .stat-card{padding:1rem 1.1rem}
.ui-workspace .stat-label{font-size:.78rem}
.ui-workspace .stat-sub{font-size:.78rem;line-height:1.45}
.ui-workspace .stat-value{font-size:1.7rem}
.ui-workspace .card-header{padding:.9rem 1.1rem}
.ui-workspace .btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.ui-modal-trigger{margin:.35rem .4rem .85rem 0}
.ui-dialog{position:fixed;inset:0;margin:auto;width:min(940px,calc(100vw - 2rem));max-width:none;max-height:calc(100dvh - 2rem);overflow:auto;padding:0;border:1px solid var(--border);border-radius:16px;background:var(--bg-card);color:var(--text-primary);box-shadow:0 24px 80px #0004;scrollbar-gutter:stable}
.ui-dialog::backdrop{background:#0f172a99;backdrop-filter:blur(2px)}
.ui-dialog>header{display:flex;justify-content:space-between;align-items:center;gap:1rem;position:sticky;top:0;z-index:10;padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--bg-card)}
.ui-dialog>header h2{font-size:1.15rem;margin:0}
.ui-dialog-body{padding:1.2rem;background:var(--bg-surface)}
.ui-dialog-with-actions[open]{display:flex;flex-direction:column;overflow:hidden}
.ui-dialog-with-actions>header,.ui-dialog-with-actions>.ui-dialog-actions{flex:none}
.ui-dialog-with-actions>.ui-dialog-body{min-height:0;overflow:auto;overscroll-behavior:contain}
.ui-dialog-actions{padding:.7rem 1.2rem;border-top:1px solid var(--border);background:var(--bg-card)}
.ui-workspace .ui-dialog-actions .ui-action-bar{margin:0}
@media(max-width:640px){.ui-dialog-actions{padding:.65rem .8rem}.ui-dialog-actions .btn{white-space:normal;min-height:44px}}
@media print{.ui-dialog-with-actions>.ui-dialog-body{overflow:visible}}
.ui-dialog-body>.card,.ui-dialog-body>details{margin:0!important;padding:1rem!important;box-shadow:none}
.ui-dialog-body>.card>.card-header{display:none}
.ui-dialog-body .card-body{padding:.4rem}
.ui-tabs{display:flex;align-items:center;gap:3px;padding:4px;margin:0 0 1rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface);width:max-content;max-width:100%;overflow:auto}
.ui-tabs button{border:0;border-radius:7px;background:transparent;color:var(--text-secondary);padding:.55rem .9rem;white-space:nowrap;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}
.ui-tabs button[aria-selected=true]{background:var(--bg-card);color:var(--accent);box-shadow:0 1px 4px #0001}
.ui-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.ui-table-tools{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding:.7rem 1rem;border-bottom:1px solid var(--border);font-size:.82rem;color:var(--text-secondary)}
.ui-table-tools label{display:flex;align-items:center;gap:.4rem;margin:0}
.ui-table-search{flex:1 1 200px;max-width:360px}
.ui-table-search input{width:100%;min-height:38px;font-size:.85rem}
.ui-table-tools input[type=checkbox]{accent-color:var(--accent)}
.ui-table-tools>span{margin-left:auto;font-size:.78rem}
table.ui-table-compact [data-ui-compact-hide]{display:none}
table:not(.ui-table-compact) [data-ui-compact-only]{display:none}
.absence-workspace.ui-absence-workspace{display:block}
.ui-alert-list .alert-item{padding:.9rem 1.1rem;margin-bottom:.65rem}
.ui-alert-list .alert-item h2{margin:.4rem 0;font-size:1rem}
.ui-alert-list .alert-item p{font-size:.86rem;margin:.35rem 0}
.ui-alert-list .alert-item details{padding:.5rem .7rem;margin:.5rem 0;box-shadow:none}
.ui-alert-list .alert-counts a{padding:.55rem .8rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);color:var(--text-primary);text-decoration:none;font-size:.84rem}
.ui-organization-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--border)}
.ui-organization-summary strong{font-size:.9rem}
.ui-organization-summary+.ui-modal-trigger{margin:.4rem 0 .8rem}
.ui-workspace .ui-form-sections{display:grid;gap:1.2rem}
.ui-form-navigation{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.2rem;padding:.55rem;background:var(--bg-surface);border-radius:10px}
.ui-form-navigation a{padding:.45rem .7rem;font-size:.85rem;font-weight:600;color:var(--text-secondary);text-decoration:none;border-radius:7px}
.ui-form-navigation a:hover{background:var(--bg-card);color:var(--accent)}
.ui-access-summary{margin:.75rem 0;padding:.85rem 1rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface);font-size:.86rem;line-height:1.55;color:var(--text-primary)}
[data-ui-section]{scroll-margin-top:1rem;font-size:.9rem!important;font-weight:650;color:var(--text-primary)!important;text-transform:none!important;letter-spacing:0!important}
.ui-presence-list{grid-template-columns:minmax(0,1fr)!important;gap:.5rem!important}
.ui-presence-list .presence-card{padding:.85rem 1rem!important}
.ui-presence-list .presence-card>div{padding:.3rem!important}
.ui-history-search{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem;margin:0 0 1rem}
.ui-history-search input{max-width:380px}
.ui-history-search span{font-size:.8rem;color:var(--text-secondary)}
.ui-dialog-body .bank-detail-content{padding:0;overflow-wrap:anywhere}
.ui-dialog-body .bank-day-detail{max-width:none;min-width:0}
.ui-dialog-body .organization-edit,.ui-dialog-body .organization-add{display:grid;grid-template-columns:1fr;gap:1rem}
.ui-dialog-body :is(.shift-assignment-grid,.terminal-two-fields){grid-template-columns:1fr 1fr}
.ui-account-page h1{font-size:1.75rem;letter-spacing:-.035em}
.ui-month-step{min-width:36px;min-height:38px;padding:.35rem .6rem;font-size:1.2rem;flex:none!important}
.ui-month-step[aria-disabled=true]{opacity:.35;pointer-events:none}
.ui-account-page .form-control{width:100%;min-height:44px}
.ui-account-page .form-group label{display:grid;gap:.4rem}
.ui-account-page form:not(.ui-dialog form){margin-top:1.1rem}
.ui-auth-page .container-narrow{width:min(440px,100%);box-sizing:border-box}
@media(max-width:640px){.ui-dialog-body :is(.shift-assignment-grid,.terminal-two-fields){grid-template-columns:1fr}.ui-auth-page{padding:1rem!important}.ui-auth-page .container-narrow{padding:1.4rem!important}.ui-account-page main.container{margin:1rem auto!important;padding:1rem!important}.ui-workspace [data-ui-form-navigation] div[style*="grid-template-columns"]{grid-template-columns:1fr!important}.ui-history-search input{max-width:none}.ui-presence-list .presence-card{padding:.75rem!important}}
@media print{[data-ui-history-list] details[hidden]{display:block!important}}
@media(max-width:640px){.ui-dialog{width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem)}.ui-dialog-body{padding:.8rem}.ui-dialog>header{padding:.85rem 1rem}.ui-workspace .table :is(th,td){padding:.65rem .7rem}.ui-table-tools{padding:.7rem}.ui-table-search{max-width:none;flex-basis:100%}.ui-workspace .stats-grid{gap:.6rem}}
@media print{.ui-tabs,.ui-table-tools,.ui-modal-trigger{display:none!important}[data-ui-tab][hidden]{display:block!important}table[data-ui-table] tr[hidden]{display:table-row!important}table.ui-table-compact [data-ui-compact-hide]{display:table-cell!important}table [data-ui-compact-only]{display:none!important}.ui-dialog{display:none!important}.ui-dialog[data-ui-print]{display:block!important;position:static;inset:auto;max-height:none;width:auto;overflow:visible;border:0;box-shadow:none}.ui-dialog[data-ui-print]>header{display:none}.ui-dialog[data-ui-print] .ui-dialog-body{padding:0;background:transparent}}

.ui-workspace .container-narrow > form[data-ui-form-navigation] { padding: 1rem; }
.ui-workspace [data-ui-modal="Motivo e notas do pedido"] { max-width: none !important; }
.ui-workspace [data-ui-modal="Motivo e notas do pedido"] > div { white-space: pre-wrap !important; overflow: visible !important; text-overflow: clip !important; overflow-wrap: anywhere; }

/* Keep compact tables and action rows aligned with their containing card. */
.ui-workspace table[data-ui-table]{width:100%;min-width:100%}
.ui-organization-row{display:flex;align-items:center;gap:1rem;border-bottom:1px solid var(--border);padding:.65rem 0}
.ui-organization-row .ui-organization-summary{flex:1;min-width:0;border:0;padding:0}
.ui-organization-row>.ui-modal-trigger{margin:0}
.organization-card-heading>.ui-modal-trigger{margin:0 0 0 auto;font-size:.82rem}
[data-ui-presence-toolbar]{align-items:center;flex-wrap:wrap;overflow:visible!important}
[data-ui-presence-toolbar]>.btn{margin-left:auto;white-space:nowrap}
.presence-card .d-flex strong{overflow-wrap:anywhere}
.ui-alert-list .alert-item{display:grid;grid-template-columns:185px minmax(0,1fr) auto;gap:1rem;align-items:start;padding:1rem}
.ui-alert-list .alert-priority{display:grid;gap:.4rem;font-size:.8rem}
.ui-alert-list .alert-content h2{margin:0 0 .3rem}
.ui-alert-list .alert-content>strong{font-size:.85rem}
.ui-alert-list .alert-content p{margin:.25rem 0}
.ui-alert-list .alert-content details{border:0;background:transparent;padding:0;margin:.4rem 0 0}
.ui-alert-list .alert-resolve{margin:0;align-self:center;white-space:nowrap}
@media(max-width:700px){.ui-alert-list .alert-item{grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.ui-alert-list .alert-priority{grid-column:1/-1;display:flex;align-items:center}.ui-organization-summary{flex-wrap:wrap}.organization-card-heading{flex-wrap:wrap}}

/* One button scale for the workspace and account screens. */
:is(.ui-workspace,.ui-account-page,.ui-auth-page) .btn{
 box-sizing:border-box;min-height:42px!important;height:auto!important;padding:.6rem .95rem!important;
 font-family:inherit;font-size:.85rem!important;font-weight:600!important;line-height:1.2!important;
 border-radius:8px!important;gap:.45rem;box-shadow:none!important;text-decoration:none;
}
:is(.ui-workspace,.ui-account-page,.ui-auth-page) :is(.btn-outline,.btn-neutral,.btn-secondary){background:var(--bg-card);border-color:var(--border);color:var(--text-primary)}
:is(.ui-workspace,.ui-account-page,.ui-auth-page) :is(.btn-outline,.btn-neutral,.btn-secondary):hover{background:var(--bg-card-hover);border-color:var(--border-hover)}
:is(.ui-workspace,.ui-account-page,.ui-auth-page) .btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.ui-workspace :is(.table,.settlement-table) .btn{min-height:36px!important;padding:.45rem .7rem!important;font-size:.8rem!important}
.ui-workspace .ui-month-step{min-width:42px;padding:.6rem!important}
.ui-workspace .btn-danger-outline{background:var(--bg-card);color:var(--danger);border-color:var(--danger-border);margin-left:0}
.ui-workspace .btn-danger-outline:hover{background:var(--danger-subtle)}
@media(max-width:640px){:is(.ui-workspace,.ui-account-page,.ui-auth-page) .btn{min-height:44px!important}.ui-workspace :is(.table,.settlement-table) .btn{min-height:44px!important}}
.company-calendar-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:20px 0 12px; }
.company-calendar-toolbar .form-hint { margin:0; }
.company-calendar-table time { white-space:nowrap; font-variant-numeric:tabular-nums; }
.company-calendar-table td:last-child { width:1%; }
.company-calendar-filter { display:flex; align-items:flex-end; flex-wrap:wrap; gap:.75rem; margin-top:1rem; }
.company-calendar-filter label { display:grid; gap:.35rem; max-width:150px; }
.company-calendar-actions { display:flex; align-items:center; gap:.5rem; }
.company-calendar-actions > .ui-modal-trigger, .company-calendar-actions > form { margin:0; }
.company-calendar-actions > .btn, .company-calendar-actions > form { flex-shrink:0; }
.company-calendar-table > tbody > tr > td { padding-top:.65rem; padding-bottom:.65rem; }
@media screen and (max-width:640px) {
    .company-calendar-table > thead { display:none; }
    .company-calendar-table, .company-calendar-table > tbody { display:block; width:100%; }
    .company-calendar-table > tbody > tr { display:grid; grid-template-columns:minmax(0,1fr) auto; padding:.85rem 0; border-bottom:1px solid var(--border); }
    .company-calendar-table > tbody > tr > td { display:block; width:auto; border:0; padding:.35rem .5rem; white-space:normal; }
    .company-calendar-table > tbody > tr > td:nth-child(1) { grid-column:1; grid-row:1; }
    .company-calendar-table > tbody > tr > td:nth-child(2) { grid-column:1/-1; grid-row:2; overflow-wrap:anywhere; }
    .company-calendar-table > tbody > tr > td:nth-child(3) { grid-column:1/-1; grid-row:3; }
    .company-calendar-table > tbody > tr > td:nth-child(4) { grid-column:2; grid-row:1; }
    .company-calendar-table > tbody > tr > td:last-child { width:auto; grid-column:1/-1; grid-row:4; }
    .company-calendar-actions { flex-wrap:wrap; }
}
.settings-list-row { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px; margin-bottom:10px; border:1px solid var(--border); border-radius:12px; }
.settings-list-info { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; min-width:0; overflow-wrap:anywhere; }
.settings-list-info small { flex-basis:100%; color:var(--text-secondary); }
.settings-list-row > .ui-modal-trigger { flex-shrink:0; }
.settings-type-form .form-control { width:100%; }
.settings-type-form > label { display:flex; align-items:center; gap:8px; margin:16px 0; }
.settings-period-history { margin:16px 0; }
.settings-history-table td { overflow-wrap:anywhere; }
.company-settings .hr-form > label:has(input[type="checkbox"]) { padding:12px; border:1px solid var(--border); border-radius:8px; background:var(--bg-surface); }
.company-settings .hr-form > label:has(input[type="checkbox"]:checked) { border-color:var(--accent-border); background:var(--accent-subtle); }
.company-settings .hr-form > p { margin:0; color:var(--text-secondary); font-size:.85rem; line-height:1.6; }
@media(max-width:640px) { .settings-list-row { flex-direction:column; align-items:flex-start; } .settings-history-table { min-width:540px; } }
.company-settings .settings-sensitive { margin-top:20px; }
.company-settings .settings-sensitive .card-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.company-settings .settings-sensitive .settings-empty { padding:16px; margin:12px 0 0; text-align:left; }
.company-settings .settings-sensitive h3 { margin:24px 0 12px; }
.company-settings #history-panel > .card-body + .card-body { border-top:1px solid var(--border); }
.company-settings #history-panel .card-body { padding:20px 24px; }
.company-settings #history-panel .settings-audit-entry { margin:0 0 8px; }
.company-settings #history-panel .settings-audit-entry > summary { padding:12px 16px; line-height:1.5; }
.settings-audit-date { color:var(--text-secondary); margin-right:16px; font-variant-numeric:tabular-nums; }
.settings-audit-author { display:block; margin:3px 0 0 15px; color:var(--text-secondary); font-weight:400; }
.company-settings #absence-types-panel .settings-list-row { padding:12px 16px; gap:12px; }
.company-settings #absence-types-panel .settings-list-row .ui-modal-trigger { margin:0; }
.company-settings #period-panel .card-body { max-width:none; }
.company-settings #period-panel .form-group { max-width:560px; }
.company-settings #period-panel .settings-period-history > summary { padding:12px 16px; }
.company-settings #company-policy-panel .settlement-policy-group { padding:18px; gap:12px; }
.company-settings #company-policy-panel .settlement-policy-group .form-hint { margin:0; }
@media(max-width:640px) { .company-settings #history-panel .card-body { padding:16px; } .company-settings .settings-sensitive .card-header > .btn { width:100%; } .settings-audit-date { display:block; margin:0 0 4px; } }
/* Correction review: original/proposal comparison inside the shared dialog. */
.correction-review{display:grid;gap:1rem;min-width:0;white-space:normal;overflow-wrap:anywhere}
.correction-review-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;color:var(--text-secondary);font-size:.85rem}
.correction-comparison .form-label{margin:0 0 .5rem;color:var(--text-secondary);font-size:.85rem;font-weight:500}
.correction-comparison p{margin:.4rem 0 0;color:var(--text-secondary);font-size:.875rem}
.correction-comparison .correction-proposal{border-color:var(--accent);background:var(--accent-subtle)}
.correction-time{display:block;font-size:1.5rem;line-height:1.3;font-variant-numeric:tabular-nums;color:var(--text-primary)}
.correction-empty{display:block;padding:.3rem 0;color:var(--text-primary)}
.correction-request-reason{border-left:3px solid var(--border);padding:.25rem 0 .25rem 1rem}
.correction-request-reason>strong{font-size:.85rem;color:var(--text-secondary)}
.correction-request-reason>p{margin:.35rem 0 0;white-space:pre-wrap;line-height:1.6}
.correction-context-link{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem 1rem}
.correction-context-link .form-hint{margin:0}
.correction-decision textarea{margin-top:.4rem;resize:vertical}
.correction-review .correction-review-actions{display:flex;justify-content:flex-end;gap:.6rem;border-top:1px solid var(--border);margin:1rem 0 0;padding:1rem 0 0}
.correction-review-actions>.form-hint{flex:1;margin:0;line-height:1.5}
@media(max-width:640px){.correction-review-actions>.form-hint{flex-basis:100%}.correction-review-actions>.btn{flex:1}.correction-context-link{align-items:flex-start;flex-direction:column}}
@media print{.correction-review>form{display:none}.correction-review{break-inside:avoid}}
.company-settings .settings-fold { grid-column:1/-1; min-width:0; }
.company-settings .settings-fold > summary { line-height:1.5; }
.settings-fold-status { display:inline-block; margin-left:1rem; color:var(--text-secondary); font-size:.78rem; font-weight:400; }
.company-settings .settings-fold > .card { margin:0; border:0; box-shadow:none; }
#company-policy-panel .settings-fold > .settlement-policy-group { border:0; border-radius:0; }
@media print { .company-settings .settings-fold > :not(summary) { display:block !important; } }
.ui-workspace [data-setting-dependent][hidden] { display:none !important; }

/* Compact disclosures inside employee forms, including the list's edit dialog. */
.employee-form details.ui-inline-history{padding:.75rem 0 0;margin:.75rem 0 0;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none;min-width:0}
.employee-form details.ui-inline-history>summary{padding:.25rem 0;line-height:1.5;font-size:.85rem}
.employee-form details.ui-inline-history[open]>summary{margin-bottom:.75rem}
.ui-history-events{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.ui-history-events>li{min-width:0;padding:.75rem 1rem;border-left:2px solid var(--border);background:var(--bg-card);border-radius:0 var(--radius-md) var(--radius-md) 0;overflow-wrap:anywhere}
.ui-history-events strong{font-size:.85rem}
.ui-history-events p{margin:.35rem 0;line-height:1.6;font-size:.85rem}
.ui-history-meta{display:flex;flex-wrap:wrap;gap:.25rem 1rem;color:var(--text-secondary);font-size:.78rem;line-height:1.6}
@media(max-width:640px){.ui-history-meta{flex-direction:column}.ui-history-events>li{padding:.65rem .75rem}}

/* Standalone form cards need their own inset; modal bodies already provide it. */
.card.ui-form-card{padding:1.25rem}
.entity-form-modal .card.ui-form-card{padding:0}

/* Keep collapsed settings groups compact while retaining a touch-sized summary. */
.company-settings details.settings-fold{padding:.75rem 1rem}
.company-settings details.settings-fold>summary{padding:.25rem 0;min-height:44px}
@media(max-width:640px){.company-settings .settings-fold-status{display:block;margin-left:1rem}}

/* Dialogs must not inherit alignment from the table cell that contains them. */
.ui-dialog,.settlement-decision-dialog{text-align:left;white-space:normal}
.ui-dialog>header h2{min-width:0;overflow-wrap:anywhere}
.ui-dialog>header>.btn{flex-shrink:0}
.ui-dialog [role=alert],.ui-dialog [data-ui-modal-error]{text-align:left;overflow-wrap:anywhere}
.ui-month-navigation{display:flex;gap:.5rem;align-items:center;flex:0 0 auto}
@media(max-width:640px){.ui-workspace .ui-filter-form>.ui-month-navigation{width:100%}.ui-month-navigation>.ui-month-step{flex:1 1 0!important;width:auto}}

.clocking-period-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:.75rem;margin:.75rem 0}
.clocking-period-row .form-label{display:grid;gap:.35rem;margin:0}
.clocking-period-row .form-label .form-hint{display:inline;margin:0}
.clocking-period-row .btn{align-self:end}
[data-clocking-periods]>button{margin:.5rem 0 1rem}
@media(max-width:600px){.clocking-period-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:.75rem 0;border-bottom:1px solid var(--border)}.clocking-period-row .btn{grid-column:1/-1;justify-self:end;min-height:44px}.clocking-period-row input{min-width:0;width:100%;font-size:16px}}

[data-clocking-periods] [hidden]{display:none}

@media(max-width:420px){.clocking-period-row{grid-template-columns:minmax(0,1fr)}}

.clocking-current,.clocking-history-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}
.clocking-current{margin:.5rem 0 1rem}
.clocking-current>span:last-child{color:var(--text-secondary)}
.clocking-history-entry{padding:1rem 0;border-bottom:1px solid var(--border)}
.clocking-history-entry:last-child{border-bottom:0}
.clocking-history-entry p{margin:.45rem 0 0}
.employee-form [aria-invalid="true"]{border-color:var(--danger);outline:2px solid var(--danger-border);outline-offset:1px}
.employee-field-error{display:block;color:var(--danger);font-size:.85rem;margin-top:.35rem}
.ui-workspace .card.employee-form{max-width:1100px;padding:1.25rem;overflow:visible}
.entity-form-modal .card.employee-form{padding:0}

/* Wide filters keep the selected employee alongside the period and actions. */
@media screen and (min-width: 1000px) {
    .ui-workspace .ui-filter-form:is(.requests-filter,.settlement-filter) > .employee-context-field {
        flex: 2 1 15rem;
        width: auto;
    }
    .ui-workspace .requests-filter.ui-filter-form > label { flex: 1 1 9rem; }
    .ui-workspace .settlement-filter.ui-filter-form > label:not(.employee-context-field):not(.settlement-all-employees) { flex: 0 1 7rem; }
    .ui-workspace .settlement-filter.ui-filter-form > .settlement-all-employees { flex: 1 1 10rem; }
    .ui-workspace .settlement-filter .btn-neutral { margin-left: 0; }
}
@media screen {
    [data-day-table] .settlement-row-layout:has(> .vacation-day-details) {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: .25rem .65rem;
    }
    [data-day-table] details.vacation-day-details {
        min-width: 0;
        padding: 0;
        margin: 0;
        border: 0;
        background: transparent;
        box-shadow: none;
    }
    [data-day-table] .vacation-day-details > summary {
        padding: .45rem 0;
        margin: 0;
        font-size: .84rem;
        cursor: pointer;
    }
    [data-day-table] .vacation-day-details[open] { flex-basis: 100%; order: 1; }
}

.request-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.25rem;padding:.85rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm)}
.request-facts p{margin:0;min-width:0}
.request-facts strong,.request-reason>strong{display:block;color:var(--text-secondary);font-size:.8rem;margin-bottom:.25rem}
.request-upload{margin:.75rem 0;padding:.65rem .8rem;border:1px solid var(--border);border-radius:var(--radius-sm)}
.request-upload>summary{cursor:pointer;font-weight:600}
.request-upload[open]>summary{margin-bottom:.75rem}
.request-impact{margin:1rem 0;padding:1rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.request-impact h3{margin:0 0 .5rem;font-size:1rem}
.request-impact [data-impact-result]{margin-top:.65rem}
@media(max-width:480px){.request-facts{grid-template-columns:1fr}}

/* Shared filters use available desktop width without stretching short fields. */
@media screen and (min-width:1000px){
 .ui-workspace .ui-filter-form>label,.ui-workspace .ui-filter-form>.form-group{flex:1 1 9rem}
 .ui-workspace .ui-filter-form>.employee-context-field{flex:2 1 15rem;width:auto}
 .ui-workspace .hr-person-filter.ui-filter-form{align-items:center}
 .ui-workspace .hr-person-filter.ui-filter-form>label{flex:0 0 auto}
 .ui-workspace .hr-person-filter.ui-filter-form>.employee-identity-picker{flex:1 1 18rem;width:auto;max-width:40rem}
 .ui-workspace .hr-person-filter.ui-filter-form>.btn{align-self:center}
}
.ui-dialog-body>.ui-modal-content{margin:0;padding:0;border:0;box-shadow:none;background:transparent}

@media screen and (max-width:640px){
 .ui-workspace .ui-filter-form>label:has(>[name="year"]),
 .ui-workspace .ui-filter-form>label:has(>[name="month"]){flex:1 1 calc(50% - .375rem)}
}

@media screen and (min-width:1000px){
 .ui-workspace .ui-filter-form>label:has(>[name="year"]),
 .ui-workspace .ui-filter-form>label:has(>[name="month"]){flex:0 1 9rem}
}
@media screen and (max-width:640px){
 .ui-workspace .ui-filter-form>.btn:is([aria-label="Mês anterior"],[aria-label="Mês seguinte"]){flex:1 1 calc(50% - .375rem);width:auto}
}
.provider-invitation{max-width:780px}
.provider-invitation label{display:grid;gap:.35rem}
.provider-invitation .btn{justify-self:start}

/* Blue text needs a lighter tone on dark surfaces; primary buttons keep their fill. */
[data-theme="dark"] :is(.employee-identity-number,.report-person-line>span,.notification-count strong,.ui-tabs button[aria-selected=true],.settlement-table-tools [data-day-view][aria-pressed=true]){color:#93c5fd}
[data-theme="dark"] [data-day-table] .settlement-row-action button.btn-outline[data-settlement-dialog-open^="settlement-decision"]{color:#93c5fd}
