:root{--otp-font-family: system-ui, -apple-system, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--otp-font-size-caption: 12px;--otp-font-size-secondary: 13px;--otp-font-size-body: 14px;--otp-font-size-heading: 16px;--otp-font-size-title: 20px;--otp-font-size-metric: 24px;--otp-space-1: 4px;--otp-space-2: 8px;--otp-space-3: 12px;--otp-space-4: 16px;--otp-space-5: 24px;--otp-spacing: 16px;--otp-content-width: 1280px;--otp-content-narrow: 960px;--otp-page-background: #f3f4f6;--otp-navigation: #111827;--otp-primary: #623e96;--otp-brand-accent: #f08c00;--otp-warning: #f08c00;--otp-danger: #b42318;--otp-card: #ffffff;--otp-on-primary: #ffffff;--otp-line: #98a2b3;--otp-secondary-text: #344054;--otp-unselected-surface: #e5e7eb;--otp-primary-hover: #342253;--otp-warning-text: #8a4b00;--otp-warning-surface: #fff5e8;--otp-danger-surface: #fff2f0;--otp-info-strong: #1554c0;--otp-success: #389e0d;--otp-holiday-surface: #fff0d6;--otp-weekend-surface: #e8f5e9;--otp-matrix-level-0: #ffffff;--otp-matrix-level-1: #eef6ff;--otp-matrix-level-2: #cfe3ff;--otp-matrix-level-3: #9fc5ff;--otp-matrix-stopped: #e5e7eb;--otp-focus-ring: rgba(98, 62, 150, .2);--otp-radius: 8px;--otp-primary-soft: #F1EBF9;--otp-danger-tint: #FEE4E2;--otp-warning-tint: #FEF0C7;--otp-success-tint: #DCFAE6;--otp-radius-md: 14px;--otp-shadow-1: 0 1px 2px rgba(16, 24, 40, .05);--otp-shadow-2: 0 4px 14px rgba(16, 24, 40, .07)}:root{font-family:var(--otp-font-family);color:var(--otp-navigation);background:var(--otp-page-background);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--otp-page-background)}button,input,select{font:inherit}button{cursor:pointer}.skip-link{position:fixed;z-index:1001;top:8px;left:8px;padding:8px 12px;color:var(--otp-on-primary);background:var(--otp-primary);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0);outline:3px solid var(--otp-on-primary);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex="-1"]:focus{outline:3px solid var(--otp-primary);outline-offset:2px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--otp-page-background)}.auth-card{width:min(100%,420px)}.auth-brand{display:grid;gap:12px}.auth-brand img{width:min(100%,220px);height:48px;object-fit:contain;object-position:left center}.auth-brand .ant-typography{margin:0;color:var(--otp-navigation)}.employee-name{margin:-8px 0 16px;min-height:22px;line-height:22px;color:var(--otp-primary);font-weight:600}.uap-callback-status{display:flex;align-items:center;gap:12px;padding:8px 0;color:var(--otp-secondary-text)}.app-layout{min-height:100vh}.app-layout .app-sider,.app-sider .ant-layout-sider-children{background:var(--otp-navigation)}.brand-mark{display:flex;height:64px;align-items:center;gap:8px;padding:14px 12px;color:var(--otp-on-primary);background:var(--otp-navigation);font-size:20px;font-weight:800;letter-spacing:0;white-space:nowrap}.brand-mark img{width:28px;height:28px;object-fit:contain;flex:0 0 auto}.brand-mark .brand-word{color:var(--otp-on-primary)}.brand-otp{color:var(--otp-brand-accent)}.app-header{display:flex;justify-content:flex-end;align-items:center;padding:0 var(--otp-spacing);background:var(--otp-card);border-bottom:2px solid var(--otp-line)}.app-layout .ant-btn-primary,.app-layout .ant-btn-primary:hover,.app-layout .ant-btn-primary:focus,.app-layout .ant-btn-primary:active{color:var(--otp-on-primary);background:var(--otp-primary);border-color:var(--otp-primary)}.app-header button{color:var(--otp-secondary-text);background:transparent;border:0}.app-header .ant-badge{display:inline-flex;align-items:center}.notification-drawer-item{width:100%;align-items:flex-start}.notification-history-workspace{display:grid;gap:var(--otp-spacing);max-width:var(--otp-content-narrow);margin:0 auto}.notification-history-list{display:grid;gap:10px}.app-content{padding:var(--otp-spacing)}.app-content .ant-card,.app-content .ant-alert,.app-content .ant-table-wrapper{border-radius:var(--otp-radius)}.app-content .ant-card{overflow:hidden}.platform-navigation{padding:8px 8px 20px;background:var(--otp-navigation)}.platform-navigation .ant-menu{border-inline-end:0;background:var(--otp-navigation);color:var(--otp-page-background)}.platform-navigation .ant-menu-item-group-title{padding:14px 10px 5px;color:var(--otp-page-background);font-size:11px;font-weight:700;letter-spacing:.04em}.platform-navigation .ant-menu-item,.platform-navigation .ant-menu-submenu-title{min-height:38px;margin:2px 0;padding-inline:10px;border-radius:var(--otp-radius);color:var(--otp-page-background);font-size:13px;line-height:38px}.platform-navigation .ant-menu-item a,.platform-navigation .ant-menu-submenu-title a{color:inherit;text-decoration:none}.platform-navigation .ant-menu-item:hover,.platform-navigation .ant-menu-submenu-title:hover,.platform-navigation .ant-menu-item:focus-visible,.platform-navigation .ant-menu-submenu-title:focus-visible{color:var(--otp-on-primary);background:var(--otp-primary-hover)}.platform-navigation .ant-menu-item-selected{color:var(--otp-on-primary);background:var(--otp-primary)}.platform-navigation .ant-menu-item-selected a{color:var(--otp-on-primary)}.platform-navigation .ant-menu-submenu-selected>.ant-menu-submenu-title{color:var(--otp-on-primary);background:var(--otp-primary-hover)}.platform-navigation .ant-menu-submenu-arrow{color:var(--otp-page-background)}.platform-navigation .ant-menu-sub.ant-menu-inline{background:var(--otp-navigation)}.platform-navigation .ant-menu-sub .ant-menu-item{padding-left:46px}.page-breadcrumb{margin-bottom:var(--otp-spacing)}.session-restore-loading{min-height:100vh;display:grid;place-items:center;padding:24px;color:var(--otp-secondary-text);background:var(--otp-page-background)}.welcome-page{max-width:var(--otp-content-narrow);margin:0 auto;padding:32px 0}.page-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:var(--otp-space-4)}.otp-workspace{display:grid;gap:var(--otp-space-4);width:min(100%,var(--otp-content-width));margin:0 auto}.otp-workspace>.page-header{margin-bottom:0}.otp-panel{display:grid;gap:var(--otp-space-3);padding:var(--otp-space-3) var(--otp-space-4) var(--otp-space-4);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.otp-panel>h4.ant-typography{margin:0}.otp-panel>.page-header{margin:0}.otp-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--otp-space-4)}.otp-panel-heading h2,.otp-panel-heading h4,.otp-panel-heading .ant-typography-secondary{margin:0}.page-header-card-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--otp-space-3)}.employee-profile-editor-actions{width:100%}.employee-profile-editor-action{min-width:120px}.otp-tabs{padding:0 var(--otp-space-3);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.otp-tabs .ant-tabs-nav{margin:0}.otp-tabs .ant-tabs-tab:not(.ant-tabs-tab-active){background:var(--otp-unselected-surface);border:1px solid var(--otp-line);color:var(--otp-navigation);border-radius:var(--otp-radius) var(--otp-radius) 0 0}.otp-tabs .ant-tabs-tab:not(.ant-tabs-tab-active) a{color:var(--otp-navigation)}.organization-grid{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(320px,1.2fr);gap:var(--otp-spacing);align-items:start}.organization-grid>.otp-panel{min-width:0}.organization-grid .ant-tree{min-height:120px}.organization-grid .ant-tree-indent-unit{width:24px}.organization-grid .ant-tree-node-content-wrapper{min-width:0}.organization-grid .ant-tree-switcher{margin-inline-end:8px}.organization-tree-node{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;min-width:0;gap:var(--otp-space-2);border-bottom:1px solid var(--otp-line);border-radius:4px}.organization-tree-node-department{min-height:38px;padding:6px 8px;background:var(--otp-unselected-surface)}.organization-tree-node-group{min-height:32px;padding:4px 8px;background:var(--otp-page-background)}.organization-tree-node-area{min-height:26px;padding:3px 8px;background:var(--otp-card);border-bottom:0}.organization-tree-name{min-width:0;overflow:hidden;color:var(--otp-navigation);text-overflow:ellipsis;white-space:nowrap}.organization-tree-warning{display:inline-flex;margin-inline-start:6px;color:var(--otp-warning);vertical-align:-2px}.organization-tree-node-department .organization-tree-name{font-size:var(--otp-font-size-body);font-weight:700}.organization-tree-node-group .organization-tree-name{font-size:var(--otp-font-size-secondary);font-weight:600}.organization-tree-node-area .organization-tree-name{font-size:var(--otp-font-size-caption);font-weight:500}.organization-tree-meta{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(64px,auto);gap:var(--otp-space-1);justify-content:end}.organization-tree-stat-tag{width:100%;margin-inline-end:0;overflow:hidden;padding-inline:4px;border-radius:4px;font-variant-numeric:tabular-nums;font-weight:600;text-align:right;text-overflow:ellipsis;white-space:nowrap}.organization-tree-count-tag{border-color:var(--otp-primary);background:var(--otp-primary);color:var(--otp-on-primary)}.organization-tree-ratio-tag{border-color:var(--otp-brand-accent);background:var(--otp-warning-surface);color:var(--otp-warning-text)}.organization-tree-borrowed-tag{border-color:var(--otp-primary);background:var(--otp-focus-ring);color:var(--otp-primary)}.organization-tree-stat-tag-department{opacity:1}.organization-tree-stat-tag-group{opacity:.86}.organization-tree-stat-tag-area{opacity:.68}.organization-tree-node-department .organization-tree-stat-tag{font-size:var(--otp-font-size-secondary)}.organization-tree-node-group .organization-tree-stat-tag{font-size:var(--otp-font-size-caption)}.organization-tree-node-area .organization-tree-stat-tag{font-size:11px;font-weight:500}.organization-members{display:grid}.organization-members .ant-table{margin:0}.organization-production-lines{display:flex;flex-wrap:wrap;align-items:center;gap:var(--otp-space-2)}.ant-select-dropdown .ant-select-item-option.organization-production-line-option-warning,.ant-select-dropdown .ant-select-item-option.organization-production-line-option-warning:hover,.ant-select-dropdown .ant-select-item-option.organization-production-line-option-warning.ant-select-item-option-active,.ant-select-dropdown .ant-select-item-option.organization-production-line-option-warning.ant-select-item-option-selected{background:var(--otp-warning-surface);color:var(--otp-warning-text)}.employee-assignment-picker{display:grid;gap:var(--otp-space-3)}.employee-roster-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--otp-space-3);margin-bottom:var(--otp-space-3)}.employee-roster-search{width:min(100%,520px)}.employee-roster-filters{width:100%;margin-bottom:var(--otp-space-3)}.employee-roster-filters .ant-select{min-width:118px}.employee-assignment-selected{display:grid;gap:var(--otp-space-2);min-height:28px}.employee-assignment-list{display:grid;max-height:min(360px,48vh);gap:var(--otp-space-2);overflow-y:auto;padding:var(--otp-space-2);border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-page-background)}.employee-assignment-list .ant-checkbox-wrapper{display:flex;align-items:center;min-height:34px;margin-inline-start:0;padding:4px 6px;border-radius:4px}.employee-assignment-list .ant-checkbox-wrapper:hover{background:var(--otp-unselected-surface)}.employee-assignment-row{display:inline-flex;align-items:baseline;gap:var(--otp-space-3)}.employee-assignment-row>span:first-child{min-width:72px;color:var(--otp-secondary-text);font-variant-numeric:tabular-nums}.organization-change-field{display:grid;gap:var(--otp-space-2)}.organization-change-date-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--otp-space-3)}.organization-drawer-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--otp-space-3)}.otp-drawer-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--otp-space-3);width:100%}.otp-drawer-actions-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--otp-space-2);margin-left:auto}.otp-drawer-actions .ant-btn{min-width:96px}.organization-member-row-action{cursor:pointer}.organization-member-row-action:focus-visible td{outline:2px solid var(--otp-primary);outline-offset:-2px}.secondment-form{display:grid;gap:var(--otp-space-4)}.secondment-employee-summary{display:grid;gap:var(--otp-space-1);padding:var(--otp-space-3);border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-page-background)}.secondment-form-actions{width:100%}.secondment-tag{margin-inline-end:0;font-weight:600}.secondment-tag--lent{border-color:var(--otp-brand-accent);background:var(--otp-warning-surface);color:var(--otp-warning-text)}.secondment-tag--borrowed{border-color:var(--otp-primary);background:var(--otp-focus-ring);color:var(--otp-primary)}.assignment-tools{max-width:640px;margin-top:var(--otp-spacing);padding:var(--otp-spacing);background:var(--otp-card);border:1px solid var(--otp-line)}.reporting-matrix{display:grid;gap:var(--otp-spacing);width:min(100%,var(--otp-content-width));margin:var(--otp-spacing) auto 0;padding:var(--otp-spacing);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.reporting-matrix-workspace{display:grid;gap:var(--otp-spacing);width:min(100%,var(--otp-content-width));margin-inline:auto}.matrix-filters{display:flex;flex-wrap:wrap;gap:var(--otp-spacing)}.matrix-filters label{display:grid;min-width:240px;gap:6px;color:var(--otp-secondary-text);font-size:14px}.reason-catalog{display:grid;gap:var(--otp-spacing);margin-top:var(--otp-spacing);padding:var(--otp-spacing);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.settings-page{display:grid;gap:var(--otp-spacing);width:min(100%,var(--otp-content-width));margin:0 auto}.quota-maintenance-layout{display:grid;grid-template-columns:minmax(248px,300px) minmax(0,1fr);gap:var(--otp-space-4);align-items:stretch;min-width:0}.quota-maintenance-tree,.quota-maintenance-panel{min-width:0;height:100%}.quota-maintenance-tree .ant-card-head,.quota-maintenance-panel .ant-card-head{min-height:56px}.quota-maintenance-tree .ant-card-body{min-height:420px;max-height:calc(100vh - 248px);padding:var(--otp-space-2);overflow:auto}.quota-maintenance-tree-hint{margin-inline-end:0;color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);white-space:nowrap}.quota-maintenance-tree .ant-tree{min-width:0}.quota-maintenance-tree .ant-tree-node-content-wrapper{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quota-maintenance-panel-title{display:grid;gap:var(--otp-space-1);min-width:0}.quota-maintenance-panel-title .ant-typography{margin:0}.quota-maintenance-panel-title h4.ant-typography{overflow:hidden;color:var(--otp-navigation);font-size:var(--otp-font-size-heading);text-overflow:ellipsis;white-space:nowrap}.quota-maintenance-panel-title .ant-typography-secondary{font-size:var(--otp-font-size-caption);font-weight:400}.quota-period-warning{display:inline-flex;align-items:center;margin-inline-start:var(--otp-space-1);color:var(--otp-warning);cursor:help;outline:none}.quota-period-warning:focus-visible{border-radius:var(--otp-radius);box-shadow:0 0 0 2px var(--otp-focus-ring)}.quota-period-warning-tooltip{display:grid;gap:4px;max-width:280px}.quota-maintenance-panel-actions{flex-wrap:wrap;justify-content:flex-end}.quota-apply-button--disabled.ant-btn-primary,.quota-apply-button--disabled.ant-btn-primary:hover,.quota-apply-button--disabled.ant-btn-primary:focus-visible{color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border-color:var(--otp-line);box-shadow:none;cursor:not-allowed}.quota-version-date-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--otp-space-3)}.quota-period-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:4px;line-height:1.2}.quota-period-date{display:inline-flex;min-width:0;flex-direction:column;gap:2px;align-items:center}.quota-period-date strong{font-variant-numeric:tabular-nums;white-space:nowrap}.quota-period-heading small{color:var(--otp-secondary-text);font-size:11px;font-weight:500;white-space:nowrap}.quota-period-actions{display:inline-flex;align-items:center;gap:4px;min-height:24px}.quota-period-actions .ant-btn{padding-inline:4px;font-size:var(--otp-font-size-caption)}.quota-ratio-input{width:100%}.quota-ratio-cell{display:grid;gap:var(--otp-space-1);min-width:0}.quota-maintenance-panel .ant-table-tbody>tr>td{padding-block:10px;vertical-align:middle}.quota-ratio-cell .ant-select{width:100%}.quota-mode-heading{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-weight:400}.quota-ratio-value--readonly{color:var(--otp-secondary-text)}.quota-ratio-value{font-variant-numeric:tabular-nums}.quota-pipeline-tag{margin-inline-end:0;color:var(--otp-warning-text);background:var(--otp-warning-surface);border-color:var(--otp-warning)}.quota-covered-intervals{display:grid;gap:var(--otp-space-2);margin:var(--otp-space-3) 0;padding:var(--otp-space-3);border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-unselected-surface)}.quota-covered-intervals ul{display:grid;gap:4px;margin:0;padding-inline-start:20px;color:var(--otp-secondary-text)}.quota-date-cell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%}.quota-date-cell--covered{color:var(--otp-secondary-text)}.quota-date-cell--covered i{position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:3px;background:var(--otp-line);opacity:.35;pointer-events:none}@media (max-width: 900px){.quota-maintenance-layout{grid-template-columns:1fr}.quota-maintenance-tree .ant-card-body{max-height:none}}.settings-list-panel{overflow:hidden}.settings-primary-cell{display:grid;gap:2px}.settings-primary-cell strong{color:var(--otp-navigation);font-weight:600}.settings-primary-cell span{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.settings-drawer .ant-drawer-header{border-bottom:1px solid var(--otp-line)}.settings-drawer-actions{justify-content:flex-end;width:100%}.settings-color-preview{display:inline-flex;align-items:center;gap:6px}.settings-color-preview i{display:inline-block;width:18px;height:18px;border:1px solid var(--otp-line);border-radius:3px}.settings-drawer-actions .ant-btn{min-width:96px}.organization-panel{display:grid;gap:var(--otp-spacing);margin-bottom:var(--otp-spacing);padding:var(--otp-spacing);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.organization-panel>label{display:grid;max-width:260px;gap:6px;color:var(--otp-secondary-text);font-size:14px}.organization-mode-list{display:grid;gap:8px}.organization-mode-row{justify-content:space-between;padding:10px 0;border-top:1px solid var(--otp-line)}.notification-center{display:grid;gap:var(--otp-spacing)}.notification-center-list{display:grid;gap:10px}.notification-center-item{display:grid;gap:8px;padding:16px;background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.notification-center-item p{margin:0}.notification-center-unread{border-color:var(--otp-primary)}.reason-create-form{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(220px,1.4fr) 120px auto;gap:12px;align-items:end}.reason-create-form label{display:grid;gap:6px;color:var(--otp-secondary-text);font-size:14px}.reason-create-form .ant-input-number{width:100%}.matrix-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.matrix-heading h3,.matrix-heading h4{margin:0}.matrix-employee{display:grid;gap:2px}.matrix-employee span{color:var(--otp-secondary-text);font-size:12px}.matrix-day-editor,.matrix-day-editor .ant-input-number,.matrix-select{width:100%}.revision-reason-field{display:grid;gap:6px;max-width:560px;color:var(--otp-secondary-text);font-size:14px}.matrix-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.matrix-alert{margin-bottom:0}.quota-summary{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;padding:14px 16px;background:var(--otp-card);border:1px solid var(--otp-line)}.quota-summary .ant-alert{flex-basis:100%}select,input[type=date]{width:100%;min-height:32px;padding:4px 8px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation)}.data-management-page{display:grid;gap:var(--otp-spacing);width:min(100%,1120px);margin:0 auto 28px}.data-management-page label{display:grid;gap:6px;color:var(--otp-secondary-text);font-size:14px}.import-result-panel{display:grid;gap:14px}.import-result-panel .ant-statistic{min-width:88px}.import-result-panel pre{max-height:180px;overflow:auto;margin:0;white-space:pre-wrap}.analytics-dashboard-page{display:grid;gap:var(--otp-space-3);width:min(100%,var(--otp-content-width));margin-inline:auto;min-width:0}.analytics-filter-card{display:flex;align-items:center;justify-content:space-between;gap:var(--otp-space-3);padding:var(--otp-space-3)}.analytics-period-controls,.analytics-organization-controls{display:flex;align-items:center;gap:var(--otp-space-2);min-width:0}.analytics-period-controls .ant-picker{width:224px}.analytics-organization-controls .ant-select{width:148px}.analytics-dashboard-alert{margin:0}.analytics-dashboard-skeleton{display:grid;gap:var(--otp-space-3);min-height:420px;padding:var(--otp-space-4);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.analytics-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--otp-space-2)}.analytics-metric{display:grid;align-content:center;min-width:0;min-height:82px;padding:var(--otp-space-3);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.analytics-metric span{color:var(--otp-secondary-text);font-size:var(--otp-font-size-secondary)}.analytics-metric strong{overflow:hidden;color:var(--otp-navigation);font-size:var(--otp-font-size-title);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.analytics-metric-accent{border-color:var(--otp-brand-accent)}.analytics-metric-accent strong{color:var(--otp-warning-text)}.analytics-metric-danger{border-color:var(--otp-danger)}.analytics-metric-danger strong{color:var(--otp-danger)}.analytics-chart-wall{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--otp-space-2);min-width:0}.analytics-chart,.analytics-pending-panel{min-width:0;min-height:258px;margin:0;padding:var(--otp-space-3);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.analytics-chart{grid-column:span 3}.analytics-chart-trend,.analytics-chart-organization{grid-column:span 6}.analytics-chart-accuracy{grid-column:1 / -1;min-height:214px}.analytics-chart figcaption,.analytics-pending-panel h3{margin:0;color:var(--otp-navigation);font-size:var(--otp-font-size-heading);font-weight:700}.analytics-chart-canvas{width:100%;height:176px;outline:none}.analytics-chart-canvas:focus-visible{border-radius:var(--otp-radius);box-shadow:0 0 0 2px var(--otp-focus-ring)}.analytics-chart-summary{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);line-height:1.6}.analytics-chart-summary ul{display:grid;gap:var(--otp-space-1);margin:0;padding:0;list-style:none}.analytics-chart-summary li{display:flex;justify-content:space-between;gap:var(--otp-space-2)}.analytics-chart-summary strong{color:var(--otp-navigation);font-variant-numeric:tabular-nums}.analytics-pending-panel{display:grid;grid-column:span 3;align-content:center;gap:var(--otp-space-2)}.analytics-pending-panel strong{color:var(--otp-warning-text);font-size:var(--otp-font-size-metric);font-variant-numeric:tabular-nums}.analytics-pending-panel span{color:var(--otp-secondary-text)}.analytics-chart-wall-area .analytics-chart-trend{grid-column:span 6}.analytics-chart-wall-area .analytics-chart:not(.analytics-chart-trend):not(.analytics-chart-accuracy),.analytics-chart-wall-area .analytics-pending-panel{grid-column:span 3}.otp-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;width:100%;background:var(--otp-line);border:1px solid var(--otp-line);border-radius:var(--otp-radius);overflow:hidden}.otp-summary>*{display:grid;gap:var(--otp-space-1);align-content:center;padding:var(--otp-space-3) var(--otp-space-4);background:var(--otp-card)}.otp-summary .ant-statistic-title{color:var(--otp-secondary-text);font-size:var(--otp-font-size-secondary)}.otp-summary .ant-statistic-content{font-variant-numeric:tabular-nums}.workbench-header{align-items:end}.workbench-toolbar{display:flex;align-items:center;gap:var(--otp-space-2);color:var(--otp-secondary-text);font-size:var(--otp-font-size-secondary)}.workbench-toolbar input{min-height:32px;padding:4px 8px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);color:var(--otp-navigation);background:var(--otp-card)}.workbench-window{margin-block:var(--otp-space-2);color:var(--otp-secondary-text);font-size:var(--otp-font-size-secondary);font-variant-numeric:tabular-nums}.workbench-summary{margin-block-end:var(--otp-space-3)}.workbench-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--otp-space-2);margin-block:var(--otp-space-2) var(--otp-space-3)}.workbench-event-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--otp-space-2);padding:var(--otp-space-3);border:1px solid var(--otp-line);border-left:4px solid #f2a65a;border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation);text-align:left;cursor:pointer;font:inherit}.workbench-event-card.is-reason{border-left-color:var(--otp-primary)}.workbench-event-card:hover,.workbench-event-card:focus-visible{background:var(--otp-unselected-surface);border-color:var(--otp-primary);outline:2px solid var(--otp-focus-ring);outline-offset:1px}.workbench-event-card.is-done{border-left-color:#7ac792;cursor:default}.workbench-event-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;color:#ad4e00;background:#ffe8cc}.workbench-event-card.is-reason .workbench-event-icon{color:var(--otp-primary);background:var(--otp-unselected-surface)}.workbench-event-card.is-done .workbench-event-icon{color:#1c7a3d;background:#e2f5e8}.workbench-event-body{display:grid;min-width:0;gap:2px}.workbench-event-title{font-size:var(--otp-font-size-heading);font-weight:600}.workbench-event-sub{overflow:hidden;color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);text-overflow:ellipsis;white-space:nowrap}.workbench-event-count{color:var(--otp-navigation);font-size:26px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.workbench-event-count small{font-size:var(--otp-font-size-caption);font-weight:500;color:var(--otp-secondary-text)}.workbench-event-state{color:var(--otp-primary)}.workbench-event-card.is-done .workbench-event-state{color:#1c7a3d}.workbench-section-title{margin:0 0 var(--otp-space-2)!important;font-size:var(--otp-font-size-heading)!important}.workbench-reason-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0;min-height:132px;gap:var(--otp-space-2);padding:var(--otp-space-3) calc(var(--otp-space-4) + 20px) var(--otp-space-3) var(--otp-space-3);color:var(--otp-navigation);background:var(--otp-card);border:1px solid var(--otp-line);border-left:3px solid var(--otp-primary);border-radius:var(--otp-radius);text-align:left;cursor:pointer;font:inherit}.workbench-reason-card:hover,.workbench-reason-card:focus-visible{color:var(--otp-navigation);background:var(--otp-unselected-surface);border-color:var(--otp-primary);outline:2px solid var(--otp-focus-ring);outline-offset:1px}.workbench-personal-summary{grid-template-columns:repeat(2,minmax(120px,1fr))}.workbench-area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--otp-space-2)}.workbench-area-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;min-width:0;min-height:132px;gap:var(--otp-space-2);padding:var(--otp-space-3) calc(var(--otp-space-4) + 20px) var(--otp-space-3) var(--otp-space-3);color:var(--otp-navigation);background:var(--otp-card);border:1px solid var(--otp-line);border-left:3px solid #f2a65a;border-radius:var(--otp-radius)}.workbench-area-card:hover,.workbench-area-card:focus-visible{color:var(--otp-navigation);background:var(--otp-unselected-surface);border-color:var(--otp-primary);outline:2px solid var(--otp-focus-ring);outline-offset:1px}.workbench-area-identity{display:grid;min-width:0;gap:var(--otp-space-1)}.workbench-area-identity strong,.workbench-area-identity span,.workbench-area-context{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workbench-area-identity strong{font-size:var(--otp-font-size-heading)}.workbench-area-identity span,.workbench-area-context{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.workbench-area-context{align-self:end}.workbench-area-metrics{display:grid;grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--otp-space-2)}.workbench-area-metrics>span{display:grid;min-width:0;gap:2px}.workbench-area-metrics strong{color:var(--otp-navigation);font-size:var(--otp-font-size-heading);font-variant-numeric:tabular-nums}.workbench-area-metrics small{overflow:hidden;color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);text-overflow:ellipsis;white-space:nowrap}.workbench-area-range{display:inline-flex;grid-column:1 / -1;align-items:center;gap:var(--otp-space-1);color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-variant-numeric:tabular-nums}.workbench-area-chevron{position:absolute;right:var(--otp-space-3);top:50%;color:var(--otp-primary);transform:translateY(-50%)}.workbench-tree-secondary{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.workbench-tree-action{justify-self:end;color:var(--otp-primary);font-weight:600}.workbench-tree-action:hover,.workbench-tree-action:focus-visible{color:var(--otp-primary-hover)}.workbench-personal{padding:var(--otp-space-3)}.workbench-personal>h3.ant-typography{margin:0;font-size:var(--otp-font-size-heading)}.workbench-personal-list{display:grid;gap:1px;background:var(--otp-line);border:1px solid var(--otp-line)}.workbench-personal-row{display:grid;grid-template-columns:140px 1fr auto;align-items:center;min-height:38px;gap:var(--otp-space-2);padding:0 var(--otp-space-2);background:var(--otp-card)}@media (max-width: 760px){.workbench-header{align-items:start}.workbench-toolbar{flex-wrap:wrap}.workbench-area-grid{grid-template-columns:minmax(0,1fr)}.workbench-personal-row{grid-template-columns:1fr auto}.workbench-personal-row .workbench-tree-secondary{grid-column:1 / -1}.workbench-events{grid-template-columns:minmax(0,1fr)}}.production-workspace-content{min-width:0}.production-import-button{display:inline-flex}.production-import-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.production-line-group{display:flex;flex-wrap:wrap;align-items:center;gap:var(--otp-space-2);min-width:0}.production-line-group-name{font-weight:700;color:var(--otp-navigation)}.production-line-group-meta{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.production-line-group-actions{display:inline-flex;gap:var(--otp-space-1)}.ant-table-tbody .production-line-group-row>td{background:var(--otp-unselected-surface)}.production-line-planners{color:var(--otp-secondary-text)}.production-line-planners-empty{color:var(--otp-warning);font-size:var(--otp-font-size-caption)}.production-line-csv-preview{display:grid;gap:var(--otp-space-2)}.production-line-csv-failures{display:grid;gap:2px;max-height:180px;overflow-y:auto;padding:var(--otp-space-2);background:var(--otp-unselected-surface);border-radius:var(--otp-radius)}.production-plan-matrix-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.production-plan-matrix-table{width:max-content;border-collapse:collapse;color:var(--otp-navigation);font-variant-numeric:tabular-nums}.production-plan-matrix-table th,.production-plan-matrix-table td{padding:var(--otp-space-1) 6px;border:1px solid var(--otp-line);vertical-align:middle}.production-plan-matrix-table td{width:116px;min-width:116px;text-align:center}.production-plan-matrix-table thead th{position:sticky;top:0;z-index:2;width:116px;min-width:116px;height:48px;background:var(--otp-unselected-surface);text-align:center}.production-plan-matrix-table thead th:first-child{left:0;z-index:3;width:208px;min-width:208px;text-align:left}.production-plan-matrix-table thead th.production-plan-matrix-metric-heading{left:208px;z-index:3;width:84px;min-width:84px;background:var(--otp-unselected-surface)}.production-plan-matrix-table tbody>tr>th{position:sticky;left:0;z-index:1;width:208px;min-width:208px;background:var(--otp-card);text-align:left}.production-plan-matrix-table tbody>tr>th.production-plan-matrix-metric{position:sticky;left:208px;z-index:1;width:84px;min-width:84px;padding-inline:6px;background:var(--otp-unselected-surface);color:var(--otp-navigation);font-size:var(--otp-font-size-caption);white-space:nowrap}.production-plan-matrix-row-heading{display:grid;gap:2px}.production-plan-matrix-row-heading>span:first-child{font-weight:700}.production-plan-matrix-line-head{display:grid;gap:2px}.production-plan-matrix-line-title-row{display:flex;min-width:0;align-items:center;gap:var(--otp-space-2)}.production-plan-matrix-line-title{min-width:0;overflow:hidden;color:var(--otp-navigation);font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.production-plan-matrix-batch-button{flex:0 0 auto;width:24px;height:24px;padding:0;color:var(--otp-primary)}.production-plan-matrix-batch-button:hover,.production-plan-matrix-batch-button:focus-visible{color:var(--otp-primary);background:var(--otp-focus-ring)}.production-plan-batch-popover{display:grid;gap:var(--otp-space-3);width:min(320px,calc(100vw - 48px))}.production-plan-batch-popover>label{display:grid;gap:var(--otp-space-1);color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-weight:600}.production-plan-batch-popover .ant-input-number,.production-plan-batch-popover .ant-picker{width:100%}.production-plan-matrix-line-sub{display:flex;min-width:0;align-items:center;gap:var(--otp-space-2);color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);white-space:nowrap}.production-plan-matrix-factory{display:inline-block;flex:0 0 auto;padding:2px 7px;border-radius:var(--otp-radius);font-weight:700}.production-plan-matrix-factory-one{background:var(--otp-warning-surface);color:var(--otp-warning-text)}.production-plan-matrix-factory-two{background:color-mix(in srgb,var(--otp-primary) 12%,var(--otp-card));color:var(--otp-primary)}.production-plan-matrix-factory-neutral{background:var(--otp-unselected-surface);color:var(--otp-secondary-text)}.production-plan-matrix-planner{min-width:0;overflow:hidden;text-overflow:ellipsis}.production-plan-matrix-row-legend{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-weight:500}.production-plan-date-header{color:var(--otp-navigation)}.production-plan-matrix-table thead th.production-plan-date-header-weekend{background:var(--otp-weekend-surface)}.production-plan-matrix-table thead th.production-plan-date-header-weekend .production-plan-date-label{color:var(--otp-success)}.production-plan-matrix-table thead th.production-plan-date-header-statutory_holiday{background:var(--otp-holiday-surface)}.production-plan-matrix-table thead th.production-plan-date-header-statutory_holiday .production-plan-date-label{color:var(--otp-warning-text);font-weight:700}.production-plan-date-label,.production-plan-date-value{display:block;white-space:nowrap}.production-plan-date-label{font-size:var(--otp-font-size-caption);font-weight:700}.production-plan-date-value{font-size:var(--otp-font-size-caption);color:var(--otp-secondary-text)}.production-plan-matrix-cell{padding:var(--otp-space-1) 6px;background:var(--otp-matrix-level-0)}.production-plan-matrix-cell .ant-select,.production-plan-matrix-cell .ant-input-number,.production-plan-matrix-cell .ant-select-auto-complete{width:100%;min-height:28px}.production-plan-matrix-cell .ant-select-auto-complete .ant-select-selector{min-height:28px}.production-plan-matrix-cell .ant-select-selection-search-input{text-align:center}.production-plan-matrix-cell .ant-input-number-input{padding-inline:4px;text-align:center}.production-plan-matrix-cell-headcount .ant-input-number{border-color:var(--otp-line)}.production-plan-matrix-cell-hours .production-plan-hours-control{width:100%;padding:1px;border:1px solid var(--production-hours-heat, var(--otp-line));border-radius:var(--otp-radius);background:var(--production-hours-heat, var(--otp-card))}.production-plan-hours-control .ant-select-auto-complete{border:0}.production-plan-matrix-cell-hours .production-plan-hours-control .ant-select-auto-complete .ant-select-selector{border-color:transparent;background:inherit;box-shadow:none}.production-plan-matrix-cell-hours .production-plan-hours-control-unfilled{border-color:var(--otp-danger)}.production-plan-hours-control:focus-within{border-color:var(--otp-primary-hover);outline:2px solid var(--otp-focus-ring);outline-offset:1px}.production-plan-hours-control-unfilled .ant-select-selection-placeholder{color:var(--otp-danger);opacity:1;font-weight:600}.production-plan-matrix-cell-day-weekend{background:var(--otp-weekend-surface)}.production-plan-matrix-cell-day-statutory_holiday{background:var(--otp-holiday-surface)}.production-plan-matrix-cell-day-adjusted_workday{background:var(--otp-unselected-surface)}.plan-overview-cycle-picker{display:grid;min-width:220px;gap:var(--otp-space-1);color:var(--otp-secondary-text);font-size:var(--otp-font-size-secondary);font-weight:600}.plan-overview-cycle-picker .ant-select{min-width:220px}.overtime-plan-workspace{display:grid;gap:var(--otp-spacing);width:min(100%,var(--otp-content-width));min-width:0;margin:0 auto}.overtime-plan-workspace>*{min-width:0}.daily-plan-panel,.daily-plan-table{min-width:0}.daily-plan-status{width:100%;min-height:32px;padding:4px 28px 4px 10px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation)}.daily-plan-status:focus-visible{border-color:var(--otp-primary);outline:3px solid var(--otp-focus-ring);outline-offset:1px}.overtime-plan-panel{display:grid;gap:12px;padding:var(--otp-spacing);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.overtime-plan-range-mode{display:inline-flex;flex-wrap:wrap;border:1px solid var(--otp-line);border-radius:var(--otp-radius);overflow:hidden}.overtime-plan-range-mode button{min-width:52px;padding:4px 12px;border:none;background:var(--otp-card);color:var(--otp-secondary-text);font-size:13px;cursor:pointer}.overtime-plan-range-mode button+button{border-left:1px solid var(--otp-line)}.overtime-plan-range-mode button.is-active{background:var(--otp-primary);color:var(--otp-on-primary)}.overtime-plan-range-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 16px}.overtime-plan-range-field{display:grid;gap:4px;width:220px;color:var(--otp-secondary-text);font-size:12px}.overtime-plan-range-field input,.overtime-plan-range-controls input{width:100%;min-height:32px;padding:4px 8px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation)}.overtime-plan-range-field input:focus-visible,.overtime-plan-range-controls input:focus-visible{border-color:var(--otp-primary);outline:3px solid var(--otp-focus-ring);outline-offset:1px}.overtime-plan-range-field .ant-select{width:100%}.overtime-plan-associated-task{width:min(100%,260px)}.overtime-plan-export-form{display:grid;gap:14px}.overtime-plan-export-form .overtime-plan-range-field{width:100%}.overtime-plan-export-form .overtime-plan-range-field input,.overtime-plan-export-form .overtime-plan-range-field select{width:100%;min-height:32px;padding:4px 8px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation)}.overtime-plan-export-form .overtime-plan-range-field input:disabled,.overtime-plan-export-form .overtime-plan-range-field select:disabled{opacity:.65;cursor:not-allowed}.overtime-plan-export-hint{margin:0;color:var(--otp-secondary-text);font-size:12px}.overtime-plan-export-actions{display:flex;gap:12px;padding-top:4px}.overtime-plan-range-hint{align-self:center;color:var(--otp-secondary-text);font-size:12px}.overtime-plan-task-summary{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding-top:10px;border-top:1px solid var(--otp-line);color:var(--otp-secondary-text);font-size:13px}.overtime-plan-task-summary strong{color:var(--otp-navigation)}.overtime-plan-matrix-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.overtime-plan-matrix{width:max-content;border-collapse:collapse;color:var(--otp-navigation)}.overtime-plan-matrix th,.overtime-plan-matrix td{padding:5px 6px;border:1px solid var(--otp-line);vertical-align:top}.overtime-plan-matrix td{width:112px;min-width:112px;vertical-align:middle;text-align:center}.overtime-plan-matrix thead th{position:sticky;top:0;z-index:2;width:112px;min-width:112px;background:var(--otp-unselected-surface);text-align:center;font-weight:600}.overtime-plan-matrix thead th.overtime-plan-scope-heading{position:sticky;left:0;z-index:3;width:200px;min-width:200px}.overtime-plan-date-label{display:block}.overtime-plan-date-value{display:block;margin-top:2px;color:var(--otp-secondary-text);font-size:11px;font-weight:500}.overtime-plan-matrix thead th.overtime-plan-date-header-weekend{background:var(--otp-weekend-surface)}.overtime-plan-matrix thead th.overtime-plan-date-header-weekend .overtime-plan-date-label{color:var(--otp-success)}.overtime-plan-matrix thead th.overtime-plan-date-header-statutory_holiday{background:var(--otp-holiday-surface)}.overtime-plan-matrix thead th.overtime-plan-date-header-statutory_holiday .overtime-plan-date-label{color:var(--otp-warning-text);font-weight:700}.overtime-plan-matrix td.overtime-plan-matrix-cell-weekend{background:var(--otp-weekend-surface)}.overtime-plan-matrix td.overtime-plan-matrix-cell-statutory_holiday{background:var(--otp-holiday-surface)}.overtime-plan-matrix tbody>tr>th{position:sticky;left:0;z-index:1;width:200px;min-width:200px;background:var(--otp-card);text-align:left}.overtime-plan-matrix tbody>tr>th strong,.overtime-plan-matrix tbody>tr>th span{display:block}.overtime-plan-matrix tbody>tr>th span{margin-top:3px;color:var(--otp-secondary-text);font-size:11px;font-weight:500}.overtime-plan-matrix .overtime-plan-department-row>th,.overtime-plan-matrix .overtime-plan-department-row>td{background:var(--otp-unselected-surface);border-top:2px solid var(--otp-primary)}.overtime-plan-matrix .overtime-plan-department-row>th{border-left:3px solid var(--otp-primary)}.overtime-plan-matrix .overtime-plan-group-row>th,.overtime-plan-matrix .overtime-plan-group-row>td{background:var(--otp-card)}.overtime-plan-matrix .overtime-plan-group-row>th{border-left:3px solid var(--otp-warning)}.overtime-plan-matrix .overtime-plan-hierarchy-fill{width:auto;min-width:0;padding:0;text-align:left}.overtime-plan-hierarchy-summary{display:inline-block;margin-left:12px;padding:3px 9px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-secondary-text);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.overtime-plan-hierarchy-summary.is-over{border-color:var(--otp-danger);background:var(--otp-danger-surface);color:var(--otp-danger)}.overtime-plan-hierarchy-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:30px}.overtime-plan-hierarchy-heading>button{display:flex;width:100%;min-width:0;align-items:center;gap:6px;padding:4px 2px;border:0;background:transparent;color:var(--otp-navigation);cursor:pointer;text-align:left}.overtime-plan-hierarchy-heading>button:hover,.overtime-plan-hierarchy-heading>button:focus-visible{color:var(--otp-primary);outline:2px solid var(--otp-primary);outline-offset:1px}.overtime-plan-hierarchy-heading>button strong,.overtime-plan-hierarchy-heading>button span{display:inline;margin:0}.overtime-plan-hierarchy-meta{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-weight:500}.overtime-plan-department-row .overtime-plan-hierarchy-heading>button strong{font-size:var(--otp-font-size-secondary);font-weight:700}.overtime-plan-group-row .overtime-plan-hierarchy-heading{padding-left:14px}.overtime-plan-group-row .overtime-plan-hierarchy-heading>button strong{font-size:var(--otp-font-size-secondary);font-weight:600}.overtime-plan-hierarchy-heading .overtime-plan-line-trigger{flex:0 0 auto;color:var(--otp-primary)}.overtime-plan-hierarchy-heading .overtime-plan-line-trigger span{color:inherit;font-size:11px}.overtime-plan-matrix .overtime-plan-area-row>th{padding-left:42px;box-shadow:inset 3px 0 0 var(--otp-line)}.overtime-plan-area-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.overtime-plan-area-name{min-width:0}.overtime-plan-area-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overtime-plan-area-heading .overtime-plan-line-trigger{flex:0 0 auto;color:var(--otp-primary)}.overtime-plan-area-heading .overtime-plan-line-trigger span{color:inherit;font-size:11px}.overtime-plan-line-tooltip{display:grid;gap:4px}.overtime-plan-line-tooltip strong,.overtime-plan-line-tooltip span{display:block}.overtime-plan-date-cell{display:grid;grid-template-columns:1fr auto;column-gap:4px;row-gap:4px;width:96px;margin-inline:auto;min-height:48px;padding:5px 6px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation);text-align:left;cursor:pointer}.overtime-plan-date-cell:hover,.overtime-plan-date-cell:focus-visible{border-color:var(--otp-primary);background:var(--otp-unselected-surface);outline:2px solid var(--otp-primary);outline-offset:1px}.overtime-plan-date-cell.is-incomplete{border-color:var(--otp-warning-text);background:var(--otp-warning-surface)}.overtime-plan-date-cell.is-over{border-color:var(--otp-danger);background:var(--otp-danger-surface)}.overtime-plan-date-cell strong{align-self:center;justify-self:start;font-size:12px;font-variant-numeric:tabular-nums}.overtime-plan-date-cell span{color:var(--otp-secondary-text);font-size:11px;font-variant-numeric:tabular-nums}.overtime-plan-cell-rated{justify-self:end;align-self:center}.overtime-plan-cell-headcount{justify-self:start;align-self:center}.overtime-plan-cell-status{justify-self:end;align-self:center}.overtime-plan-cell-over{color:var(--otp-danger)}.overtime-plan-cell-complete{color:var(--otp-success)}.overtime-plan-cell-missing{color:var(--otp-warning-text)}.overtime-plan-matrix tbody>tr>th .overtime-plan-scope-total{display:inline-block;margin-top:4px;padding:1px 6px;border-radius:var(--otp-radius);background:var(--otp-unselected-surface);color:var(--otp-secondary-text);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.overtime-plan-matrix tbody>tr>th .overtime-plan-scope-total.is-over{background:var(--otp-danger-surface);color:var(--otp-danger)}.overtime-plan-quota-guide{margin-bottom:12px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);overflow:hidden}.overtime-plan-quota-table{width:100%;border-collapse:collapse;font-size:12px}.overtime-plan-quota-table th,.overtime-plan-quota-table td{padding:5px 8px;border:1px solid var(--otp-line);text-align:center}.overtime-plan-quota-table thead th{background:var(--otp-unselected-surface);font-weight:600}.overtime-plan-quota-table tbody th{background:var(--otp-card);text-align:left;font-weight:600;white-space:nowrap}.overtime-plan-quota-value{font-variant-numeric:tabular-nums}.overtime-plan-quota-over{color:var(--otp-danger);font-weight:700}.overtime-plan-date-empty{display:block;padding:18px 6px;color:var(--otp-secondary-text);text-align:center}.overtime-plan-employee-list{display:grid;gap:1px;border:1px solid var(--otp-line);background:var(--otp-line)}.overtime-plan-employee-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--otp-card)}.overtime-plan-employee-row strong,.overtime-plan-employee-row span{display:block}.overtime-plan-employee-row span{margin-top:2px;color:var(--otp-secondary-text);font-size:12px}.overtime-plan-day-editor{display:grid;gap:12px}.overtime-plan-day-summary{display:flex;flex-wrap:wrap;align-items:stretch;gap:0;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-unselected-surface);color:var(--otp-secondary-text);font-size:12px;font-variant-numeric:tabular-nums}.overtime-plan-day-summary-compact{width:fit-content;max-width:100%}.overtime-plan-day-summary>span{display:grid;gap:2px;min-width:112px;padding:8px 10px;border-right:1px solid var(--otp-line)}.overtime-plan-day-summary strong{color:var(--otp-navigation);font-size:11px}.overtime-plan-day-summary-status{align-self:center;padding:8px 10px;color:var(--otp-danger)}.overtime-plan-day-summary.is-over{border-color:var(--otp-danger);background:var(--otp-danger-surface)}.overtime-plan-day-editor-summary{display:flex;flex-wrap:wrap;gap:14px;padding:9px 10px;color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border:1px solid var(--otp-line);font-size:12px}.overtime-plan-day-rows{display:grid;gap:1px;background:var(--otp-line);border:1px solid var(--otp-line)}.overtime-plan-day-row{display:grid;grid-template-columns:132px 140px 180px 64px;gap:8px;align-items:center;padding:8px 10px;background:var(--otp-card)}.overtime-plan-day-employee strong,.overtime-plan-day-employee span{display:block}.overtime-plan-day-employee span{margin-top:2px;color:var(--otp-secondary-text);font-size:11px}.overtime-plan-arrangement-input,.overtime-plan-day-reason{min-width:0;width:100%}.overtime-plan-day-reason{display:grid;gap:7px}.overtime-plan-day-reason-fixed{width:180px}.overtime-plan-day-row>.ant-select-auto-complete,.overtime-plan-day-reason>.ant-select,.overtime-plan-day-reason>.ant-input{width:100%}.overtime-plan-day-row>.ant-tag{display:inline-flex;align-items:center;justify-content:center;width:64px;margin-inline-end:0;white-space:nowrap;box-sizing:border-box}.overtime-plan-day-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid var(--otp-line)}.organization-workspace-content{min-width:0}.organization-effective-date{display:inline-flex;align-items:center;gap:var(--otp-space-2);color:var(--otp-secondary-text);font-size:14px}.attendance-workspace-shell{display:grid;gap:var(--otp-spacing);width:min(100%,var(--otp-content-width));margin:0 auto}.attendance-workspace-header{margin-bottom:0}.attendance-tabs{background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius);padding:0 12px}.attendance-tabs .ant-tabs-nav{margin:0}.attendance-tabs .ant-tabs-tab:not(.ant-tabs-tab-active){background:var(--otp-unselected-surface);border:1px solid var(--otp-line);color:var(--otp-navigation);border-radius:var(--otp-radius) var(--otp-radius) 0 0}.attendance-tabs .ant-tabs-tab:not(.ant-tabs-tab-active) a{color:var(--otp-navigation)}.attendance-workspace-content{min-width:0}.operations-workspace-shell{display:grid;gap:var(--otp-spacing);width:min(100%,var(--otp-content-width));margin:0 auto}.operations-workspace-content{min-width:0}.operations-status-tag{margin-inline-end:0;border-radius:var(--otp-radius);font-size:var(--otp-font-size-caption);font-weight:600;line-height:20px}.operations-status-tag--success{color:var(--otp-success);background:var(--otp-unselected-surface);border-color:var(--otp-success)}.operations-status-tag--warning{color:var(--otp-warning-text);background:var(--otp-warning-surface);border-color:var(--otp-warning)}.operations-status-tag--danger{color:var(--otp-danger);background:var(--otp-danger-surface);border-color:var(--otp-danger)}.operations-status-tag--neutral{color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border-color:var(--otp-line)}.mail-batch-workspace{align-items:start}.mail-batch-filters{display:flex;flex-wrap:wrap;align-items:end;gap:var(--otp-space-3)}.mail-batch-filter-field{display:grid;flex:1 1 240px;gap:var(--otp-space-1);color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-weight:600}.mail-batch-filter-field .ant-select{width:100%}.mail-batch-filter-action{display:flex;align-items:end;min-height:32px}.mail-batch-table{overflow:hidden;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card)}.mail-batch-detail h4,.audit-event-detail h4{margin:0;color:var(--otp-navigation);font-size:var(--otp-font-size-heading);font-weight:700}.actual-attendance-matrix,.actual-detail-page{display:grid;gap:var(--otp-space-3)}.actual-detail-filter-panel{background:var(--otp-unselected-surface)}.actual-detail-filter-panel .attendance-matrix-filters{gap:16px}.attendance-filter-group-organization.actual-detail-organization-filters{flex:1 1 440px;min-width:0;grid-template-columns:repeat(3,minmax(120px,1fr))}.actual-detail-organization-filters .ant-select{width:100%;min-width:0}.actual-detail-keyword-filter{flex:0 0 240px;margin-left:auto;padding-left:20px;border-left:1px solid var(--otp-line)}.actual-detail-keyword-filter .ant-input-affix-wrapper{min-height:32px;border-color:var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card)}.actual-detail-keyword-filter .ant-input-affix-wrapper:focus-within{border-color:var(--otp-primary);outline:2px solid var(--otp-focus-ring);outline-offset:1px}.actual-detail-keyword-filter .ant-input::placeholder{color:var(--otp-secondary-text)}.actual-detail-results{overflow:hidden;background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.actual-detail-results .ant-table-wrapper{overflow-x:auto}.actual-detail-results .ant-table-thead>tr>th{color:var(--otp-navigation);background:var(--otp-unselected-surface)}.actual-detail-results .ant-table-tbody>tr.actual-detail-table-row{cursor:pointer}.actual-detail-results .ant-table-tbody>tr.actual-detail-table-row:hover>td{background:var(--otp-unselected-surface)}.actual-detail-results .ant-table-tbody>tr.actual-detail-table-row:focus-visible>td{background:var(--otp-unselected-surface);outline:2px solid var(--otp-primary);outline-offset:-2px}.actual-detail-identity{display:grid;min-width:0;gap:2px}.actual-detail-identity strong,.actual-detail-identity span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.actual-detail-identity strong{color:var(--otp-navigation);font-weight:600}.actual-detail-identity span{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.actual-detail-hours{font-variant-numeric:tabular-nums}.actual-detail-rate-hours{color:var(--otp-navigation);font-variant-numeric:tabular-nums;white-space:nowrap}.actual-detail-drawer-title{display:grid;min-width:0;gap:2px}.actual-detail-drawer-title h2{margin:0;color:var(--otp-navigation);font-size:var(--otp-font-size-heading)}.actual-detail-drawer-title span{overflow:hidden;color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);text-overflow:ellipsis;white-space:nowrap}.actual-detail-drawer-summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(150px,.8fr);gap:var(--otp-space-2) var(--otp-space-4);margin-bottom:var(--otp-space-3);padding:var(--otp-space-2) var(--otp-space-3);color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border:1px solid var(--otp-line);border-radius:var(--otp-radius);font-size:var(--otp-font-size-caption)}.actual-detail-drawer-meta{display:flex;align-items:center;gap:var(--otp-space-4);min-width:0;margin:0}.actual-detail-drawer-meta div{display:grid;gap:1px;min-width:0}.actual-detail-drawer-meta dt,.actual-detail-drawer-rates-label{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.actual-detail-drawer-meta dd{margin:0;overflow:hidden;color:var(--otp-navigation);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.actual-detail-drawer-total{display:flex;align-items:center;justify-content:space-between;gap:var(--otp-space-2);min-width:0;padding-left:var(--otp-space-3);border-left:1px solid var(--otp-line)}.actual-detail-drawer-total strong{color:var(--otp-navigation);font-size:var(--otp-font-size-heading);font-variant-numeric:tabular-nums;white-space:nowrap}.actual-detail-drawer-rates-wrap{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--otp-space-3);padding-top:var(--otp-space-2);border-top:1px solid var(--otp-line)}.actual-detail-drawer-rates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;color:var(--otp-navigation);background:var(--otp-line);font-variant-numeric:tabular-nums}.actual-detail-drawer-rates li{display:flex;align-items:center;justify-content:space-between;gap:var(--otp-space-2);min-width:0;padding:3px var(--otp-space-2);background:var(--otp-card)}.actual-detail-drawer-rates li strong{color:var(--otp-navigation);font-weight:600;white-space:nowrap}.actual-detail-drawer .ant-table-thead>tr>th.actual-detail-table-header{color:var(--otp-navigation);background:var(--otp-unselected-surface);font-weight:700}.actual-detail-drawer .ant-table-tbody>tr>td{vertical-align:middle}.actual-detail-day-type{display:inline-block;min-width:58px;padding:2px 6px;border:1px solid transparent;border-radius:var(--otp-radius);font-size:var(--otp-font-size-caption);font-weight:600;text-align:center;white-space:nowrap}.actual-detail-day-type--workday{color:var(--otp-info-strong);background:var(--otp-matrix-level-1);border-color:var(--otp-matrix-level-2)}.actual-detail-day-type--weekend{color:var(--otp-success);background:var(--otp-weekend-surface);border-color:var(--otp-success)}.actual-detail-day-type--adjusted-workday{color:var(--otp-warning-text);background:var(--otp-warning-surface);border-color:var(--otp-warning)}.actual-detail-day-type--statutory-holiday{color:var(--otp-warning-text);background:var(--otp-holiday-surface);border-color:var(--otp-warning)}.actual-detail-day-type--unknown{color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border-color:var(--otp-line)}.actual-detail-filter-error{grid-column:1 / -1}.actual-detail-filter-error .ant-alert{margin:0}.actual-detail-filter-panel input[type=date],.actual-detail-filter-panel .ant-select.ant-select-outlined .ant-select-selector{min-height:32px;border-color:var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation)}.actual-detail-filter-panel input[type=date]:focus-visible{border-color:var(--otp-primary);outline:2px solid var(--otp-focus-ring);outline-offset:1px}.actual-detail-import-result{margin:0}.actual-import-drawer .ant-card{border-color:var(--otp-line);border-radius:var(--otp-radius)}.attendance-filter-panel{display:grid;gap:var(--otp-space-2);padding:var(--otp-space-3);background:var(--otp-unselected-surface);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.attendance-cutoff-note{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.attendance-matrix-filters{display:flex;flex-wrap:wrap;align-items:end;gap:20px}.attendance-filter-group{display:grid;gap:10px}.attendance-filter-group-time{grid-template-columns:repeat(2,minmax(140px,1fr))}.attendance-filter-group-organization{grid-template-columns:repeat(4,minmax(120px,1fr));flex:1 1 520px;padding-left:20px;border-left:1px solid var(--otp-line)}.attendance-matrix-filters label{display:grid;min-width:0;gap:6px;color:var(--otp-secondary-text);font-size:14px}.attendance-matrix-filters input{min-width:0}.attendance-filter-query{min-width:84px}.quota-usage-filter-row{gap:var(--otp-space-3)}.quota-usage-time-filter{grid-template-columns:150px;flex:0 0 150px}.quota-usage-month-input{width:100%;min-height:32px;padding:4px 11px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation);font:inherit;line-height:22px}.quota-usage-month-input:hover,.quota-usage-month-input:focus-visible{border-color:var(--otp-primary);outline:2px solid var(--otp-primary);outline-offset:1px}.quota-usage-organization-filters{grid-template-columns:repeat(3,160px);flex:0 1 auto;padding-left:0;border-left:0}.quota-usage-filter-row .attendance-filter-query{align-self:end}.quota-usage-remaining{position:relative}.quota-usage-remaining .ant-statistic{width:100%}.quota-usage-remaining-percentage{position:absolute;right:14px;bottom:12px;color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-variant-numeric:tabular-nums}.quota-usage-remaining-percentage.is-negative{color:var(--otp-danger)}.actual-attendance-matrix .ant-typography-secondary{color:var(--otp-secondary-text)}.attendance-export-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;color:var(--otp-secondary-text);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.attendance-matrix-summary{display:grid;gap:var(--otp-space-2)}.attendance-matrix-metrics{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:var(--otp-space-2)}.attendance-matrix-metrics .ant-statistic{min-height:82px;padding:12px 14px;background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.attendance-matrix-metrics .ant-statistic-title{margin-bottom:4px;color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.attendance-matrix-metrics .ant-statistic-content{color:var(--otp-navigation);font-size:26px;font-variant-numeric:tabular-nums}.attendance-matrix-metric.is-planned .ant-statistic-content{color:var(--otp-primary)}.attendance-matrix-metric.is-actual .ant-statistic-content{color:var(--otp-info-strong)}.attendance-matrix-metric.is-missing .ant-statistic-content{color:var(--otp-danger)}.analytics-source-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.analytics-export-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;color:var(--otp-secondary-text);background:var(--otp-card);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.attendance-matrix-table{max-width:100%}.attendance-matrix-table .ant-table-container{max-width:100%;overflow-x:auto}.attendance-matrix-sub,.attendance-matrix-empty{display:block;color:var(--otp-secondary-text);font-size:11px}.attendance-matrix-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card)}.attendance-matrix-grid{width:max-content;table-layout:fixed;border-collapse:separate;border-spacing:0;color:var(--otp-navigation)}.attendance-matrix-grid th,.attendance-matrix-grid td{border-right:1px solid var(--otp-line);border-bottom:1px solid var(--otp-line);padding:4px}.attendance-matrix-grid thead th{height:48px;width:112px;min-width:112px;background:var(--otp-unselected-surface);font-size:12px;text-align:center;vertical-align:middle}.attendance-matrix-grid tbody td{width:112px;min-width:112px;background:var(--otp-card);text-align:center;vertical-align:middle}.attendance-matrix-grid tbody tr:last-child th,.attendance-matrix-grid tbody tr:last-child td{border-bottom:0}.attendance-matrix-sticky{position:sticky;left:0;z-index:2;width:200px;min-width:200px;background:var(--otp-card);box-shadow:1px 0 0 var(--otp-line)}.attendance-matrix-grid thead .attendance-matrix-sticky{z-index:3;background:var(--otp-unselected-surface)}.attendance-matrix-scope{padding:5px 6px;text-align:left}.attendance-matrix-scope-name,.attendance-matrix-scope-context{display:block}.attendance-matrix-scope-name{overflow:hidden;color:var(--otp-navigation);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.attendance-matrix-scope-context{margin-top:3px;color:var(--otp-secondary-text);font-size:11px;font-weight:500}.attendance-matrix-scope-total{display:inline-block;margin-top:4px;padding:1px 6px;border-radius:var(--otp-radius);background:var(--otp-unselected-surface);color:var(--otp-secondary-text);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.quota-usage-scope-totals{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.quota-usage-scope-total,.quota-usage-scope-percentage{display:inline-block;padding:1px 6px;border-radius:var(--otp-radius);background:var(--otp-unselected-surface);color:var(--otp-secondary-text);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.quota-usage-scope-total.is-over,.quota-usage-scope-percentage.is-over{background:var(--otp-danger-surface);color:var(--otp-danger)}.attendance-date-header{display:grid;gap:2px;line-height:1.2}.attendance-date-header strong{font-size:13px}.attendance-date-header small{font-size:11px;font-weight:500}.attendance-matrix-grid thead th.attendance-date-weekend{background:var(--otp-weekend-surface)}.attendance-matrix-grid thead th.attendance-date-statutory_holiday{background:var(--otp-holiday-surface);color:var(--otp-warning-text)}.attendance-matrix-grid thead th.attendance-date-adjusted_workday{background:var(--otp-unselected-surface)}.attendance-matrix-grid tbody td.attendance-date-weekend{background:var(--otp-weekend-surface)}.attendance-matrix-grid tbody td.attendance-date-statutory_holiday{background:var(--otp-holiday-surface)}.attendance-matrix-date-card{position:relative;display:grid;width:96px;min-height:48px;margin:auto;padding:5px 6px;border:1px solid var(--otp-line);border-radius:var(--otp-radius);background:var(--otp-card);color:var(--otp-navigation);text-align:left;font:inherit;font-size:11px;line-height:1.35;cursor:pointer;font-variant-numeric:tabular-nums}.attendance-reason-flag{position:absolute;top:-6px;right:-4px;padding:0 5px;border-radius:999px;font-size:10px;font-weight:600;line-height:14px;pointer-events:none}.attendance-reason-flag.is-pending{color:#ad4e00;background:#ffe8cc;border:1px solid #f2a65a}.attendance-reason-flag.is-done{color:#1c7a3d;background:#e2f5e8;border:1px solid #7ac792}.attendance-matrix-date-card:hover,.attendance-matrix-date-card:focus-visible{border-color:var(--otp-primary);background:var(--otp-unselected-surface);outline:2px solid var(--otp-primary);outline-offset:1px}.attendance-matrix-date-card.is-compact{grid-template-columns:1fr;row-gap:2px}.attendance-matrix-card-line{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;width:100%;color:var(--otp-secondary-text);font-weight:400;white-space:nowrap}.attendance-matrix-card-value{justify-self:end;color:var(--otp-navigation);font-variant-numeric:tabular-nums}.attendance-matrix-card-line.is-difference{color:var(--otp-navigation);font-weight:600}.attendance-matrix-card-line.is-difference.is-positive,.attendance-matrix-card-line.is-difference.is-positive .attendance-matrix-card-value{color:var(--otp-primary)}.attendance-matrix-card-line.is-difference.is-negative,.attendance-matrix-card-line.is-difference.is-negative .attendance-matrix-card-value{color:var(--otp-danger)}.attendance-matrix-card-status{display:block;margin-bottom:2px;color:var(--otp-navigation);font-weight:700}.attendance-matrix-date-card.is-over{border-color:var(--otp-danger);background:var(--otp-danger-surface)}.attendance-matrix-date-card.is-unplanned{border-color:var(--otp-warning);background:var(--otp-warning-surface)}.attendance-matrix-date-card.is-within-plan{border-color:var(--otp-success);background:var(--otp-weekend-surface)}.attendance-matrix-date-card.is-no-plan,.attendance-matrix-date-card.is-no-overtime{border-color:var(--otp-line);background:var(--otp-unselected-surface)}.attendance-matrix-date-card.is-unavailable{border-color:var(--otp-line);background:var(--otp-card);border-style:dashed}.attendance-matrix-date-card.is-over:hover,.attendance-matrix-date-card.is-over:focus-visible{background:var(--otp-danger-surface)}.attendance-matrix-date-card.is-unplanned:hover,.attendance-matrix-date-card.is-unplanned:focus-visible{background:var(--otp-warning-surface)}.attendance-matrix-date-card.is-within-plan:hover,.attendance-matrix-date-card.is-within-plan:focus-visible{background:var(--otp-weekend-surface)}.attendance-matrix-date-card.is-no-plan:hover,.attendance-matrix-date-card.is-no-plan:focus-visible{background:var(--otp-unselected-surface)}.attendance-matrix-empty-state{padding:28px;color:var(--otp-secondary-text);text-align:center}.attendance-detail-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:var(--otp-secondary-text)}.attendance-detail-drawer .ant-table{font-size:13px}@media (max-width: 720px){.attendance-detail-drawer.ant-drawer .ant-drawer-content-wrapper{width:100%}.attendance-detail-drawer .ant-table{min-width:680px}.actual-detail-drawer-summary{grid-template-columns:1fr}.actual-detail-drawer-total{padding-left:0;border-left:0}.actual-detail-drawer-rates-wrap{grid-template-columns:1fr;gap:var(--otp-space-1)}.attendance-filter-group-time,.attendance-filter-group-organization{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.attendance-filter-group-organization{padding-left:0;border-left:0;border-top:1px solid var(--otp-line);padding-top:var(--otp-space-2)}.attendance-filter-query{width:100%}.actual-detail-keyword-filter{flex-basis:100%;margin-left:0;padding-left:0;border-left:0;border-top:1px solid var(--otp-line);padding-top:var(--otp-space-2)}.quota-usage-time-filter{grid-template-columns:minmax(0,1fr);flex-basis:100%}.quota-usage-organization-filters{grid-template-columns:repeat(2,minmax(0,1fr));flex-basis:100%}.quota-usage-organization-filters .ant-select{width:100%}.attendance-matrix-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1100px){.analytics-filter-card{align-items:stretch;flex-direction:column}.analytics-period-controls,.analytics-organization-controls{flex-wrap:wrap}.analytics-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-chart-trend,.analytics-chart-organization{grid-column:span 8}.analytics-chart,.analytics-pending-panel{grid-column:span 4}}@media (max-width: 720px){.page-header{flex-direction:column}.otp-panel-heading,.page-header-card-actions{align-items:stretch;flex-direction:column}.page-header-card-actions{justify-content:flex-start}.matrix-heading{flex-direction:column}.reason-create-form,.organization-grid{grid-template-columns:1fr}.app-content{padding:16px}.analytics-period-controls,.analytics-organization-controls{display:grid;grid-template-columns:1fr}.analytics-period-controls .ant-picker,.analytics-organization-controls .ant-select{width:100%}.attendance-matrix-filters,.analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-chart,.analytics-chart-trend,.analytics-chart-organization,.analytics-chart-accuracy,.analytics-pending-panel,.analytics-chart-wall-area .analytics-chart:not(.analytics-chart-trend):not(.analytics-chart-accuracy),.analytics-chart-wall-area .analytics-pending-panel{grid-column:1 / -1}.otp-summary{grid-template-columns:1fr}.production-plan-matrix-table th,.production-plan-matrix-table td{min-width:104px}.production-plan-matrix-table thead th:first-child,.production-plan-matrix-table tbody>tr>th{width:190px;min-width:190px}.production-plan-matrix-table tbody>tr>th.production-plan-matrix-metric{left:190px;width:76px;min-width:76px}.production-plan-matrix-table thead th.production-plan-matrix-metric-heading{left:190px;width:76px;min-width:76px}.quota-summary{align-items:flex-start;flex-direction:column;gap:6px}}@media (max-width: 480px){.attendance-matrix-filters{grid-template-columns:1fr}.quota-summary{align-items:flex-start;flex-direction:column;gap:6px}}.role-management-page{width:min(100%,var(--otp-content-width))}.role-management-layout{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1.75fr);gap:var(--otp-space-4);align-items:start}.role-list-panel{position:sticky;top:var(--otp-space-4);min-width:0}.role-group{display:grid;gap:var(--otp-space-1)}.role-group+.role-group{padding-top:var(--otp-space-3);border-top:1px solid var(--otp-line)}.role-group-title{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-weight:700}.role-list-item{display:flex;align-items:center;justify-content:space-between;gap:var(--otp-space-2);width:100%;min-height:38px;padding:var(--otp-space-2) var(--otp-space-3);color:var(--otp-navigation);background:var(--otp-card);border:1px solid transparent;border-radius:var(--otp-radius);text-align:left}.role-list-item:hover,.role-list-item:focus-visible{border-color:var(--otp-primary);background:var(--otp-unselected-surface);outline:2px solid var(--otp-focus-ring);outline-offset:1px}.role-list-item.is-selected{color:var(--otp-on-primary);background:var(--otp-primary);border-color:var(--otp-primary)}.role-list-item-name{min-width:0;overflow:hidden;font-size:var(--otp-font-size-body);font-weight:600;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.role-list-item:not(.is-selected) .role-list-item-name{font-weight:500}.role-list-item-meta{display:inline-flex;flex:0 0 auto;align-items:center;gap:var(--otp-space-2)}.role-list-item.is-selected .ant-tag{color:var(--otp-on-primary);background:transparent;border-color:var(--otp-on-primary)}.role-detail-panel{min-width:0}.role-detail-heading,.role-permission-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--otp-space-4)}.role-detail-heading .ant-typography,.role-permission-heading .ant-typography{margin:0}.role-detail-heading h3,.role-permission-heading h4{font-size:var(--otp-font-size-heading);font-weight:700;line-height:1.5;text-wrap:balance}.role-permission-heading .ant-typography-secondary{font-size:var(--otp-font-size-secondary);line-height:1.5}.role-detail-heading .ant-tag,.role-permission-heading .ant-tag,.role-permission-heading .ant-btn-sm{font-size:var(--otp-font-size-caption)}.role-detail-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) max-content;gap:var(--otp-space-3);padding:var(--otp-space-3);background:var(--otp-unselected-surface);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.role-detail-meta>div{display:grid;gap:var(--otp-space-1);min-width:0}.role-detail-status{justify-items:start}.role-detail-status .ant-switch{width:56px;min-width:56px}.role-detail-meta .ant-typography-secondary{font-size:var(--otp-font-size-caption);line-height:1.4}.role-detail-meta strong{overflow:hidden;color:var(--otp-navigation);font-size:var(--otp-font-size-body);font-weight:600;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.role-permission-matrix{overflow:hidden;border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.role-permission-empty{padding:var(--otp-space-4) 0}.role-permission-empty .ant-empty{margin:0}.role-permission-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:var(--otp-space-3);min-height:40px;padding:var(--otp-space-2) var(--otp-space-3);border-bottom:1px solid var(--otp-line)}.role-permission-row:last-child{border-bottom:0}.role-permission-row>span{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);line-height:1.4}.role-permission-row>strong{color:var(--otp-navigation);font-size:var(--otp-font-size-body);line-height:1.4}.account-status-tag,.account-password-tag,.account-role-tag{margin-inline-end:0;border-radius:var(--otp-radius);font-size:var(--otp-font-size-caption);font-weight:600;line-height:20px}.account-status-tag--enabled{color:var(--otp-success);background:var(--otp-weekend-surface);border-color:var(--otp-success)}.account-status-tag--disabled{color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border-color:var(--otp-line)}.account-password-tag--pending{color:var(--otp-warning-text);background:var(--otp-warning-surface);border-color:var(--otp-warning)}.account-password-tag--changed{color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border-color:var(--otp-line)}.account-role-tag--global{color:var(--otp-primary);background:var(--otp-focus-ring);border-color:var(--otp-primary)}.account-role-tag--organization{color:var(--otp-warning-text);background:var(--otp-warning-surface);border-color:var(--otp-warning)}.account-role-tag--employee{color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border-color:var(--otp-line)}@media (max-width: 720px){.role-management-layout{grid-template-columns:1fr}.role-list-panel{position:static}.role-detail-meta{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.actual-reason-page{display:grid;gap:var(--otp-spacing);width:min(100%,var(--otp-content-width));margin:0 auto}.actual-reason-filter{display:flex;flex-wrap:wrap;align-items:end;gap:var(--otp-space-3)}.actual-reason-filter>label{display:grid;gap:var(--otp-space-1);color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption);font-weight:600}.actual-reason-summary{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:var(--otp-space-2);margin-left:auto}.actual-reason-summary .ant-statistic{min-width:96px;padding:var(--otp-space-2) var(--otp-space-3);background:var(--otp-unselected-surface);border:1px solid var(--otp-line);border-radius:var(--otp-radius)}.actual-reason-summary .ant-statistic-title{margin-bottom:0;font-size:var(--otp-font-size-caption)}.actual-reason-summary .ant-statistic-content{font-size:var(--otp-font-size-heading)}.actual-reason-results{min-width:0;padding:0;overflow:hidden;grid-template-columns:minmax(0,1fr)}.actual-reason-results .ant-table-wrapper{min-width:0}.actual-reason-batch-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--otp-space-2);max-width:100%;padding:var(--otp-space-3);border-bottom:1px solid var(--otp-line);box-sizing:border-box}.actual-reason-batch-actions .ant-select{width:220px;max-width:100%}.actual-reason-table .ant-table-thead>tr>th{color:var(--otp-navigation);background:var(--otp-unselected-surface);text-align:center}.actual-reason-table .ant-table-cell{vertical-align:middle}.actual-reason-identity{display:grid;gap:2px}.actual-reason-identity strong{color:var(--otp-navigation);font-weight:600}.actual-reason-identity span{color:var(--otp-secondary-text);font-size:var(--otp-font-size-caption)}.actual-reason-status{color:var(--otp-secondary-text);background:var(--otp-unselected-surface);border-color:var(--otp-line)}.actual-reason-status--warning{color:var(--otp-warning-text);background:var(--otp-warning-surface);border-color:var(--otp-warning)}.actual-reason-row-actions{display:flex;gap:var(--otp-space-1)}.attendance-reason-confirmed{margin:0}.attendance-reason-none{color:var(--otp-secondary-text)}.attendance-reason-cell{display:grid;gap:4px}.attendance-custom-reason-hint{color:#ad4e00;font-size:12px}.attendance-detail-employee{white-space:nowrap}.attendance-detail-drawer .attendance-detail-toolbar{display:flex;align-items:center;gap:var(--otp-space-3)}.attendance-detail-drawer .attendance-detail-toolbar>span{margin-right:auto;color:var(--otp-secondary-text)}@media (max-width: 960px){.actual-reason-summary{flex-basis:100%;margin-left:0}}.quota-maintenance-header-actions{display:flex;gap:var(--otp-spacing-sm);align-items:center}.work-calendar-day-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;max-height:52vh;overflow:auto;padding-right:4px}.work-calendar-day-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--otp-color-line);border-radius:var(--otp-radius-sm)}@media (max-width: 640px){.work-calendar-day-list{grid-template-columns:1fr}}
