.mobile-app-header,.mobile-navigation:not([open]){display:none}@media (max-width:960px){html{scroll-padding-top:80px}.app-layout{display:block;min-height:100dvh}.desktop-sidebar{display:none}.mobile-app-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:max(10px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:#fff}.mobile-app-header .brand,.mobile-navigation-head .brand{width:190px;min-width:0;margin:0;padding:0;border-bottom:0}.mobile-menu-button,.mobile-menu-close{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#344054;font-size:13px;font-weight:700}.mobile-menu-close{width:44px;padding:0}.mobile-navigation{position:fixed;inset:0 auto 0 0;width:min(360px,calc(100vw - 28px));max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0;overflow:hidden;border:0;border-radius:0 18px 18px 0;background:#fff;color:var(--ink);box-shadow:12px 0 40px rgba(16,24,40,.18)}.mobile-navigation::-webkit-backdrop{background:rgba(16,24,40,.44)}.mobile-navigation::backdrop{background:rgba(16,24,40,.44)}.mobile-navigation-inner{display:flex;flex-direction:column;height:100%;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}.mobile-navigation-head{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:8px;padding:0 0 12px;border-bottom:1px solid var(--line)}.mobile-navigation .sidebar-scroll{flex:1 1;max-height:none;padding:12px 0}.mobile-navigation .sidebar-navigation>summary{display:none}.mobile-navigation nav{display:grid;grid-gap:4px;gap:4px}.mobile-navigation .nav-section-label{display:block;font-size:10px;margin:9px 10px 5px}.mobile-navigation .administration-nav-group>summary,.mobile-navigation .nav-link{min-height:46px;justify-content:flex-start;padding:11px 12px;font-size:14px}.mobile-navigation .nav-link span{display:inline}.mobile-navigation .sub-nav-link{min-height:44px;font-size:13px}.mobile-navigation .sidebar-user{display:grid;grid-template-columns:36px minmax(0,1fr);padding:12px 4px 0;grid-gap:8px;gap:8px}.mobile-navigation .sidebar-user small,.mobile-navigation .sidebar-user strong{white-space:normal;overflow-wrap:anywhere}.mobile-navigation .sidebar-user strong{font-size:13px}.mobile-navigation .sidebar-user small{font-size:12px}.mobile-navigation .sidebar-user .link-button{min-height:40px;font-size:13px;color:var(--brand-red)}.content{padding:20px max(18px,env(safe-area-inset-right)) calc(84px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.content :where(section,article,form,fieldset),.content>*{min-width:0}.content :where(.panel-head,.toolbar,.form-actions,.page-header-actions){max-width:100%;flex-wrap:wrap}.content .table-wrap{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.content .table-wrap:focus-visible{outline:2px solid var(--brand-dark);outline-offset:-2px}.content .station-directory-toolbar .toolbar,.content .station-responsibility-form{grid-template-columns:repeat(2,minmax(0,1fr))}.content .station-directory-card>dl>div,.content .station-responsibility-form>*{min-width:0;overflow-wrap:anywhere}.content .station-escalation-row{grid-template-columns:30px minmax(0,1fr)}.content .station-escalation-contact{min-width:0;overflow-wrap:anywhere}.owner-preview-bar{position:relative;top:auto;margin-bottom:12px;z-index:40}.content .master-workspace-nav{top:64px;margin:0 -18px 14px;padding-inline:18px}.content .people-pulse-filters label>span{font-size:11px}.content :is(button,a,summary,input,select,textarea):focus-visible{outline:2px solid var(--brand-dark);outline-offset:2px}}@media (max-width:760px){body{font-size:14px;line-height:1.5}.content{padding:16px max(12px,env(safe-area-inset-right)) calc(84px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.content .page-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:16px}.content .page-header h1{font-size:25px;line-height:1.18;letter-spacing:-.03em;overflow-wrap:anywhere}.content .field-help,.content .muted,.content .page-header p:not(.eyebrow),.content .panel-subtitle,.content .stat-meta{font-size:13px;line-height:1.5}.content .page-header-actions,.content .page-header>.toolbar{width:100%;justify-content:flex-start}.content .page-header-actions>.button,.content .page-header>.toolbar>.button{flex:1 1 auto}.content .panel-head{padding:14px;gap:10px;align-items:flex-start}.content .panel-head h2{font-size:16px;line-height:1.35}.content .panel-body{padding:14px}.content .button,.content .button.small{min-height:44px;padding:10px 13px;font-size:13px;white-space:normal;line-height:1.3}.content .row-actions-trigger{width:44px;height:44px}.row-actions-popover{max-width:calc(100vw - 24px)}.row-actions-popover :is(a,button){min-height:44px;font-size:14px}.content :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]){min-width:0;max-width:100%;min-height:44px;font-size:16px!important;line-height:1.4}.content input[type=date],.content input[type=datetime-local],.content input[type=month]{display:block;width:100%;min-width:0;-webkit-appearance:none}.content input[type=file]{width:100%;overflow:hidden}.content input[type=file]::-webkit-file-upload-button{min-height:34px;margin-right:8px;border:1px solid var(--line);border-radius:6px;background:#f8fafc}.content input[type=file]::file-selector-button{min-height:34px;margin-right:8px;border:1px solid var(--line);border-radius:6px;background:#f8fafc}.content textarea{min-height:104px}.content .attendance-date-field,.content .compact-select,.content .field label,.content .form-grid>label{font-size:13px}.content :is(.checkbox-row,.access-check,.inline-check){min-height:44px;font-size:13px}.content input[type=checkbox],.content input[type=radio]{width:18px;height:18px;flex:0 0 auto}.content .form-actions{display:flex;flex-wrap:wrap;gap:8px}.content .form-actions>.button,.content .form-actions>form{flex:1 1 120px}.content .form-actions>form>.button{width:100%}.content .status-pill{font-size:11px;line-height:1.3}.content small{font-size:12px;line-height:1.45}.content :is(.details-grid dt,.details-grid dd,.field-help,.fine-print){font-size:13px}.content .alert{font-size:13px;overflow-wrap:anywhere}.content :is(.details-grid,.form-grid,.mobile-field,.master-entry-grid,.payroll-create-form,.payroll-principles,.payroll-calendar-create,.employee-agreement-form,.employee-announcement-form,.shift-assignment-grid,.asset-form-grid,.report-centre-grid,.salary-config-details,.salary-bulk-import-fields){grid-template-columns:minmax(0,1fr)}.content :is(.details-grid,.form-grid)>*{min-width:0;overflow-wrap:anywhere}.content .readiness-stat-grid,.content .settings-directory,.content .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.content .stat{min-width:0;padding:12px}.content .stat-label{font-size:12px}.content .stat-value{font-size:24px;overflow-wrap:anywhere}.content .readiness-stat-grid>a{padding:12px;gap:8px}.content .readiness-stat-grid strong{font-size:23px}.content :is(.people-filter-bar,.approval-filter-bar,.payroll-filter-bar,.compact-filter-toolbar,.people-pulse-filters){display:flex;flex-flow:row wrap;align-items:stretch;gap:8px}.content :is(.people-filter-bar,.approval-filter-bar,.payroll-filter-bar,.compact-filter-toolbar,.people-pulse-filters)>:is(input,label,.directory-multi-select,.approval-date-filter){flex:1 1 100%;width:100%;min-width:0;max-width:none}.content :is(.attendance-filter-bar,.report-filter-grid,.people-report-filter-grid,.people-report-filter-grid.has-salary-filter,.location-filter-grid,.system-log-filters,.roster-station-selector){grid-template-columns:minmax(0,1fr)}.content :is(.attendance-filter-bar,.report-filter-grid,.people-report-filter-grid,.system-log-filters)>*{grid-column:auto;min-width:0}.content .attendance-date-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.content .attendance-date-control>.attendance-date-field{grid-column:1/-1}.content .directory-multi-select{min-width:0;max-width:100%}.content .directory-filter-trigger{min-height:44px;font-size:14px;padding:10px 12px}.content .directory-multi-select fieldset{position:fixed;inset:auto 12px max(12px,env(safe-area-inset-bottom)) 12px;width:auto;max-height:min(460px,65dvh);overflow-y:auto;z-index:70}.content .directory-filter-options{max-height:32dvh}.content .directory-filter-options label{min-height:44px}.content .directory-filter-options strong{font-size:13px;white-space:normal}.content .directory-filter-hint,.content .directory-filter-options small{font-size:12px}.content .directory-filter-bulk-actions button,.content .directory-filter-footer button{min-height:40px;font-size:12px}.content .searchable-option,.content .searchable-select-trigger{min-height:44px;font-size:14px}.content .table-wrap table{font-size:13px}.content .table-wrap th{font-size:11px;padding:12px;letter-spacing:.025em}.content .table-wrap td{padding:12px}.content .table-wrap .table-note,.content .table-wrap td small{font-size:12px}.content .table-wrap:not(.payroll-people-table) table:has(th:nth-child(5)){min-width:620px}.content .table-wrap[data-scrollable]:before{content:"Swipe to see all columns →";position:-webkit-sticky;position:sticky;left:0;display:block;width:-moz-fit-content;width:fit-content;max-width:100%;padding:8px 12px;color:#667085;font-size:12px;background:#fff}.content .approval-worklist-table table,.content .attendance-table table,.content .people-directory-table table{min-width:1050px}.content .table-wrap .empty-cell{white-space:normal}.content .table-wrap table:has(>tbody>tr:only-child>.empty-cell:only-child){min-width:0}.content .payroll-people-table table{min-width:1040px;table-layout:auto}.content :is(.employee-edit-tabs,.approval-inbox-tabs,.approval-request-switch,.people-type-nav,.master-workspace-links,.master-tabs,.attendance-section-tabs,.workspace-tabs,.integrity-queue-tabs){max-width:100%;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain}.content :is(.employee-edit-tabs,.approval-inbox-tabs,.approval-request-switch,.people-type-nav,.master-workspace-links,.master-tabs,.attendance-section-tabs,.workspace-tabs)>:is(a,button){flex:0 0 auto;min-height:44px;font-size:13px}.content .master-tabs{position:static}.content .master-workspace-nav{position:static;margin-inline:-12px;padding-inline:12px}.content .master-group-picker{min-width:0;max-width:100%}.content .master-group-picker select{width:100%}.content .master-centre-groups{grid-template-columns:minmax(0,1fr)}.content .master-centre-group{min-height:48px}.content .people-tree-review-row,.content .station-directory-card>dl,.content .station-directory-toolbar .toolbar,.content .station-responsibility-form{grid-template-columns:minmax(0,1fr)}.content .people-tree-quick-assign{width:auto;margin-left:0;flex-wrap:wrap}.content .people-tree-savebar{position:static}.content .people-tree-canvas,.content .roster-calendar-wrap,.content .station-timetable-scroll{max-width:100%;overscroll-behavior-x:contain}.content .roster-calendar .roster-person-column{width:132px;min-width:132px}.content .roster-cell-button{min-height:52px}.content .roster-shift-card{min-height:48px}.content .roster-search{min-width:0;flex-basis:100%}.content .roster-planner-toolbar>select{width:100%}.content .payroll-lifecycle-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.content .payroll-lifecycle-step{padding:10px;gap:6px}.content .payroll-run-command>div:first-child{flex:0 0 auto;flex-wrap:wrap}.content .payroll-run-actions{width:100%}.content .employee-avatar-card-copy h2{font-size:20px;overflow-wrap:anywhere}.content .designation-summary-meta{flex-wrap:wrap}.content .designation-master-row>summary{gap:8px}.content .owner-preview-popover{width:min(430px,calc(100vw - 24px))}.modal-backdrop,.salary-config-modal-backdrop,.worker-lifecycle-modal-backdrop{padding:8px;overflow-y:auto}.modal-backdrop>[role=dialog],.salary-config-modal,.worker-lifecycle-modal{max-width:100%;max-height:calc(100dvh - 16px)}.modal-backdrop .confirm-modal{overflow-y:auto}:is(.worker-lifecycle-modal-body,.salary-config-modal-body,.integrity-flag-modal-body,.people-report-download-body){padding:14px;min-height:0}:is(.worker-lifecycle-modal-foot,.salary-config-modal-actions,.integrity-flag-modal-actions,.people-report-download-actions){flex-wrap:wrap;padding:12px 14px max(12px,env(safe-area-inset-bottom))}:is(.worker-lifecycle-modal,.salary-config-modal,.payroll-breakdown-modal,.attendance-row-detail-modal,.leave-row-detail-modal,.announcement-readership-modal,.confirm-modal) .button{min-height:44px;font-size:13px}:is(.worker-lifecycle-modal,.salary-config-modal,.confirm-modal) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]){min-width:0;max-width:100%;min-height:44px;font-size:16px!important}:is(.worker-lifecycle-modal,.salary-config-modal) .form-grid{grid-template-columns:minmax(0,1fr)}.content .people-report-download-summary{grid-template-columns:minmax(0,1fr)}.modal-close-button{min-width:44px;min-height:44px}.people-assistant-launcher{bottom:max(16px,env(safe-area-inset-bottom))}.people-assistant-panel{max-height:100dvh}.people-assistant-composer{padding-bottom:max(12px,env(safe-area-inset-bottom))}}@media (min-width:761px) and (max-width:960px){.content .button,.content .directory-filter-trigger,.content .searchable-select-trigger{min-height:44px;font-size:13px}.content :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]){min-height:44px;min-width:0;max-width:100%;font-size:16px!important}.content :is(.people-pulse-filters.station-manpower-filters,.people-tree-filters){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.content .people-tree-filters>.field{grid-column:1/-1}.content .people-pulse-filters label{min-width:0}}@media (max-width:359px){.mobile-app-header .brand{width:180px}.mobile-menu-button span{display:none}.content .settings-directory,.content .stats-grid{grid-template-columns:minmax(0,1fr)}.content .page-header h1{font-size:23px}}