*{margin:0;padding:0;box-sizing:border-box}:root{--app-bg: #f4f6fb;--card-shadow: 0 2px 10px rgba(15, 23, 42, .06);--card-shadow-hover: 0 12px 28px rgba(15, 23, 42, .12);--app-zoom: .8;--app-vh: calc(100vh / var(--app-zoom));--app-dvh: calc(100dvh / var(--app-zoom));--app-vw: calc(100vw / var(--app-zoom))}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overflow-x:hidden;width:100%;background:var(--app-bg);color:#0f172a;zoom:var(--app-zoom)}#root{width:100%;min-height:var(--app-vh);min-height:var(--app-dvh)}.ant-layout{min-height:var(--app-vh);min-height:var(--app-dvh)}button,.ant-btn,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ant-layout-sider,.ant-layout-sider-children{background:#fff!important}.page-container{padding:24px;background:linear-gradient(180deg,#f6f8fc,#eef1f7);min-height:calc(var(--app-vh) - 64px)}.page-header{margin-bottom:24px}.page-title{position:relative;padding-left:14px;font-size:24px;font-weight:700;color:#0f172a;margin-bottom:6px;letter-spacing:-.2px}.page-title:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:5px;border-radius:4px;background:linear-gradient(180deg,#2563eb,#4f46e5)}.page-description{color:#64748b;padding-left:14px;font-size:14px}.card-container{background:#fff;border-radius:16px;padding:24px;border:1px solid #eef1f6;box-shadow:0 2px 10px #0f172a0f}.table-container{margin-top:24px;overflow-x:auto;-webkit-overflow-scrolling:touch}.empty-state{text-align:center;padding:48px 24px}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}.hide-on-mobile{display:inline-flex}.show-on-mobile,.mobile-only{display:none!important}.desktop-only{display:inline-flex}.ant-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.ant-modal{max-width:calc(var(--app-vw) - 16px)}.ant-drawer-body{padding:16px}img,video{max-width:100%;height:auto}@media (max-width: 1024px){.page-container,.card-container{padding:16px}.page-title{font-size:20px}}@media (max-width: 768px){.hide-on-mobile{display:none!important}.show-on-mobile,.mobile-only{display:inline-flex!important}.desktop-only{display:none!important}.page-container{padding:12px;min-height:calc(var(--app-vh) - 56px)}.card-container{padding:12px;border-radius:6px}.page-title{font-size:18px}.page-description{font-size:13px}.page-header{margin-bottom:16px}input,textarea,select,.ant-input,.ant-input-password input,.ant-input-number-input,.ant-select-selection-search-input,.ant-picker-input>input{font-size:16px!important}.ant-btn{min-height:40px}.ant-btn-sm{min-height:32px}.ant-btn-lg{min-height:48px}.ant-layout-header{height:56px!important;line-height:56px!important;padding:0 12px!important}.ant-layout-content{margin:12px!important}.ant-table{font-size:13px}.ant-table-thead>tr>th,.ant-table-tbody>tr>td{padding:8px!important;white-space:nowrap}.ant-table-wrapper{overflow-x:auto}.ant-card-body{padding:16px!important}.ant-card-head{padding:0 16px!important;min-height:48px!important}.ant-form-item{margin-bottom:12px}.ant-form-item-label{padding:0 0 4px!important}.ant-modal{max-width:calc(var(--app-vw) - 16px);margin:8px auto;top:8px!important;padding-bottom:8px}.ant-modal-body{padding:16px!important;max-height:calc(var(--app-vh) - 180px);overflow-y:auto}.ant-drawer-content-wrapper{max-width:90vw!important}.ant-dropdown,.ant-select-dropdown,.ant-picker-dropdown{max-width:calc(var(--app-vw) - 16px)}.ant-statistic-content{font-size:18px!important}.ant-statistic-title{font-size:13px!important}.ant-descriptions-item-label,.ant-descriptions-item-content{padding:8px!important}.ant-tabs-nav{overflow-x:auto}.ant-pagination-options{display:none}h1,.ant-typography h1{font-size:22px!important}h2,.ant-typography h2{font-size:20px!important}h3,.ant-typography h3{font-size:18px!important}h4,.ant-typography h4{font-size:16px!important}}@media (max-width: 480px){.page-container{padding:8px}.card-container{padding:10px}.ant-layout-content{margin:8px!important}.ant-table-thead>tr>th,.ant-table-tbody>tr>td{padding:6px!important;font-size:12px}.ant-btn{font-size:13px}}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px}*::-webkit-scrollbar-thumb:hover{background:#94a3b8}.ant-card{transition:box-shadow .2s ease,transform .2s ease}.ant-card-bordered{border-color:#eef1f6}.card-container{box-shadow:var(--card-shadow);border-radius:16px}.ant-layout-sider{border-right:1px solid #eef1f6;box-shadow:2px 0 12px #0f172a08}.ant-menu-light .ant-menu-item,.ant-menu-light .ant-menu-submenu-title{font-weight:500}.ant-menu-light .ant-menu-item-selected{font-weight:600}.ant-layout-header{border-bottom:1px solid #eef1f6}.ant-btn-primary:not(:disabled):hover{transform:translateY(-1px)}.ant-btn{transition:transform .15s ease,box-shadow .2s ease,background .2s ease}.ant-table-wrapper .ant-table{border-radius:14px}.ant-card .ant-table-wrapper .ant-table{border-radius:10px}.ant-table-thead>tr>th{font-weight:600!important;letter-spacing:.2px;text-transform:none}.ant-table-thead>tr>th:before{display:none!important}.ant-table-tbody>tr>td{border-bottom-color:#f1f5f9}.ant-table-tbody>tr.ant-table-row:hover>td{background:#f8fafc!important}.filter-bar{background:#f8fafc;border:1px solid #eef1f6;border-radius:12px;padding:14px;margin-bottom:20px}.filter-bar__grid{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}@media (min-width: 640px){.filter-bar__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bar__search{grid-column:span 2}}@media (min-width: 1280px){.filter-bar__grid{grid-template-columns:1.6fr repeat(4,minmax(0,1fr))}.filter-bar__search{grid-column:auto}}.filter-bar__applied{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px dashed #e2e8f0}.filter-bar__applied-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#64748b}.filter-bar__applied .ant-tag{margin:0;background:#fff;border-color:#dbeafe;color:#1d4ed8}.balance-tile{border-radius:12px;border:1px solid #eef1f6}.balance-tile__label{font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;color:#64748b;margin-bottom:6px}.balance-tile__value{font-size:26px;font-weight:700;line-height:1.15;letter-spacing:-.5px}.balance-tile__of{margin-left:6px;font-size:13px;font-weight:500;color:#94a3b8;letter-spacing:0}.section-heading{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.section-heading__text{position:relative;padding-left:12px;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#475569}.section-heading__text:before{content:"";position:absolute;left:0;top:1px;bottom:1px;width:3px;border-radius:3px;background:linear-gradient(180deg,#2563eb,#4f46e5)}.section-heading__hint{font-size:11.5px;font-weight:500;color:#94a3b8;letter-spacing:.1px}.ant-tag{border-radius:6px;font-weight:500}.ant-tabs-tab{font-weight:500}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{font-weight:600}.ant-tabs-top>.ant-tabs-nav:before{border-bottom-color:#eef1f6}.ant-segmented{border-radius:10px;padding:3px;background:#f1f5f9}.ant-segmented .ant-segmented-item-selected{border-radius:8px;box-shadow:0 2px 6px #0f172a14}.ant-statistic-title{color:#64748b;font-weight:500}.ant-statistic-content{color:#0f172a;font-weight:700}.ant-modal-content{border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0f172a3d}.ant-modal-header{border-radius:16px 16px 0 0}.ant-modal-title{font-weight:700}.ant-drawer-header{border-bottom-color:#eef1f6}.ant-form-item-label>label{color:#334155;font-weight:500}.ant-input,.ant-input-affix-wrapper,.ant-select-selector,.ant-picker,.ant-input-number{border-color:#e2e8f0!important}.ant-input:hover,.ant-input-affix-wrapper:hover,.ant-select:hover .ant-select-selector,.ant-picker:hover{border-color:#93c5fd!important}.ant-pagination-item-active{border-radius:8px;font-weight:600}.ant-descriptions-item-label{color:#64748b;font-weight:500}.ant-descriptions-bordered .ant-descriptions-view{border-radius:12px;overflow:hidden}.ant-avatar{font-weight:600}.empty-state,.ant-empty{color:#94a3b8}.page-title{color:#0f172a}.page-description{color:#64748b}@supports (padding: max(0px)){.ant-layout-header{padding-left:max(12px,env(safe-area-inset-left))!important;padding-right:max(12px,env(safe-area-inset-right))!important}.ant-layout-footer{padding-bottom:max(24px,env(safe-area-inset-bottom))!important}}@media print{.ant-layout-sider,.ant-layout-header,.no-print{display:none!important}.ant-layout{margin-left:0!important}}.route-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:60vh;background:var(--app-bg)}.route-fallback-ring{width:34px;height:34px;border:3px solid #dbe3f4;border-top-color:#2563eb;border-radius:50%;animation:route-fallback-spin .7s linear infinite}.route-fallback-text{font-size:13px;font-weight:600;letter-spacing:.4px;color:#64748b}@keyframes route-fallback-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.route-fallback-ring{animation-duration:2s}}.dashboard-page .ant-card.card-container{padding:0}.dashboard-page .ant-card.card-container>.ant-card-head{padding:0 18px;min-height:46px}.dashboard-page .ant-card.card-container>.ant-card-body{padding:12px 18px}.hrms-rich-text .ql-toolbar.ql-snow{border:1px solid #d9d9d9;border-bottom:none;border-radius:6px 6px 0 0;background:#fafafa}.hrms-rich-text .ql-container.ql-snow{border:1px solid #d9d9d9;border-radius:0 0 6px 6px;font-size:14px;font-family:inherit;background:#fff}.hrms-rich-text:focus-within .ql-toolbar.ql-snow,.hrms-rich-text:focus-within .ql-container.ql-snow{border-color:#4096ff}.hrms-rich-text .ql-editor.ql-blank:before{font-style:normal;color:#bfbfbf}.ant-form-item-has-error .hrms-rich-text .ql-toolbar.ql-snow,.ant-form-item-has-error .hrms-rich-text .ql-container.ql-snow{border-color:#ff4d4f}.hrms-rich-text-output p,.hrms-rich-text-output ul,.hrms-rich-text-output ol,.hrms-rich-text-output blockquote{margin:0 0 6px}.hrms-rich-text-output>*:last-child{margin-bottom:0}.hrms-rich-text-output ul,.hrms-rich-text-output ol{padding-left:22px}.hrms-rich-text-output blockquote{border-left:3px solid #e5e7eb;padding-left:10px;color:#475569}:root{--app-bg: var(--t-bg);--card-shadow: var(--t-shadow);--card-shadow-hover: var(--t-shadow-hover);--glass-blur: blur(18px) saturate(150%);--radius-card: 16px}html,body{background:var(--t-bg)}body{font-family:Plus Jakarta Sans,Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;color:var(--t-text);font-feature-settings:"ss01","cv11";letter-spacing:-.005em}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(900px 600px at 8% -8%,var(--t-glow-a),transparent 60%),radial-gradient(700px 520px at 100% 6%,var(--t-glow-b),transparent 62%),radial-gradient(800px 600px at 92% 100%,var(--t-glow-c),transparent 60%),radial-gradient(600px 460px at 0% 96%,var(--t-glow-d),transparent 62%)}#root{position:relative;z-index:1}.ant-layout,.ant-layout-content{background:transparent!important}h1,h2,h3,h4,h5,.ant-typography h1,.ant-typography h2,.ant-typography h3,.page-title,.ant-card-head-title,.ant-modal-title{font-family:inherit;letter-spacing:-.02em;color:var(--t-text)}.ant-typography,.ant-typography-secondary,.ant-form-item-label>label{font-family:inherit}.ant-typography-secondary,.ant-typography.ant-typography-secondary{color:var(--t-text-muted)!important}.ant-card,.card-container,.filter-bar,.balance-tile{background:var(--t-surface)!important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--t-border)!important;border-radius:var(--radius-card);box-shadow:var(--t-shadow);color:var(--t-text)}.ant-card-head{border-bottom:1px solid var(--t-border);background:transparent}.ant-card .ant-card,.ant-modal .ant-card{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--t-surface-muted)!important;box-shadow:none}.ant-card-hoverable:hover{box-shadow:var(--t-shadow-hover);transform:translateY(-2px)}.ant-layout-sider,.ant-layout-sider-children{background:var(--t-surface)!important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.ant-layout-sider{border-right:1px solid var(--t-border);box-shadow:none}.ant-layout-header{background:var(--t-surface)!important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--t-border);box-shadow:none!important;color:var(--t-text)}.ant-modal-content,.ant-drawer-content,.ant-dropdown-menu,.ant-select-dropdown,.ant-picker-dropdown .ant-picker-panel-container,.ant-popover-inner,.ant-popconfirm .ant-popover-inner,.ant-tooltip-inner{background:var(--t-surface-solid)!important;border:1px solid var(--t-border);color:var(--t-text)}.ant-modal-content{background:var(--t-surface)!important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--t-shadow-hover)}.ant-modal-header,.ant-modal-content .ant-modal-title{background:transparent;color:var(--t-text)}.ant-modal-mask,.ant-drawer-mask{backdrop-filter:blur(4px)}.ant-select-item-option-selected:not(.ant-select-item-option-disabled){background:var(--t-primary-soft);color:var(--t-primary)}.page-container{background:transparent}.page-title{color:var(--t-text);font-weight:800}.page-title:before,.section-heading__text:before{background:var(--t-primary)}.page-description,.section-heading__hint,.balance-tile__of,.section-heading__text,.balance-tile__label{color:var(--t-text-muted)}.ant-menu,.ant-menu-light,.ant-menu-inline,.ant-menu-sub.ant-menu-inline{background:transparent!important;color:var(--t-text-muted)}.ant-menu-light .ant-menu-item,.ant-menu-light .ant-menu-submenu-title{font-weight:600}.ant-menu-light .ant-menu-item-selected{background:var(--t-primary-soft)!important;color:var(--t-primary)!important}.ant-btn{box-shadow:none!important;font-weight:600}.ant-btn-primary{background:var(--t-primary)}.ant-btn-primary:not(:disabled):hover{background:var(--t-primary-hover)!important}.ant-btn-default,.ant-btn-dashed{background:var(--t-surface);border-color:var(--t-border-strong);color:var(--t-text)}.ant-btn-text{color:var(--t-text-muted)}.ant-btn-text:not(:disabled):hover{background:var(--t-primary-soft)!important;color:var(--t-primary)}.ant-table,.ant-table-wrapper .ant-table{background:transparent!important;color:var(--t-text)}.ant-table-thead>tr>th,.ant-table-thead>tr>td{background:var(--t-surface-muted)!important;color:var(--t-text-muted)!important;border-bottom:1px solid var(--t-border)!important;font-weight:700!important;font-size:12.5px;letter-spacing:.02em}.ant-table-tbody>tr>td{border-bottom:1px solid var(--t-border)!important;background:transparent}.ant-table-tbody>tr.ant-table-row:hover>td{background:var(--t-primary-soft)!important}.ant-table-placeholder .ant-table-cell,.ant-table-placeholder:hover>td{background:transparent!important}.ant-pagination .ant-pagination-item{background:transparent;border-color:var(--t-border)}.ant-pagination .ant-pagination-item a{color:var(--t-text)}.ant-pagination-item-active{background:var(--t-primary-soft);border-color:var(--t-primary)}.ant-pagination-item-active a{color:var(--t-primary)!important}.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-picker,.ant-select-selector,.ant-input-outlined{background:var(--t-surface)!important;border-color:var(--t-border-strong)!important;color:var(--t-text)}.ant-input:hover,.ant-input-affix-wrapper:hover,.ant-select:hover .ant-select-selector,.ant-picker:hover{border-color:var(--t-primary)!important}.ant-input:focus,.ant-input-affix-wrapper-focused,.ant-select-focused .ant-select-selector,.ant-picker-focused{border-color:var(--t-primary)!important;box-shadow:0 0 0 3px var(--t-primary-soft)!important}.ant-form-item-label>label{color:var(--t-text-muted);font-weight:600}input::placeholder,textarea::placeholder{color:var(--t-text-faint)!important}.ant-tag{font-weight:600;border-radius:6px}.ant-tabs-top>.ant-tabs-nav:before{border-bottom-color:var(--t-border)}.ant-tabs-tab{color:var(--t-text-muted)}.ant-segmented{background:var(--t-surface-muted)}.ant-segmented .ant-segmented-item-selected{background:var(--t-surface-solid);box-shadow:none;color:var(--t-primary)}.ant-statistic-title,.ant-descriptions-item-label,.empty-state,.ant-empty{color:var(--t-text-muted)}.ant-statistic-content{color:var(--t-text)}.ant-descriptions-bordered .ant-descriptions-item-label{background:var(--t-surface-muted)}.ant-descriptions-bordered .ant-descriptions-view,.ant-descriptions-bordered .ant-descriptions-row>th,.ant-descriptions-bordered .ant-descriptions-row>td{border-color:var(--t-border)}.ant-divider{border-color:var(--t-border)}.ant-alert{border-radius:12px}.filter-bar__applied{border-top-color:var(--t-border)}.filter-bar__applied .ant-tag{background:var(--t-primary-soft);border-color:transparent;color:var(--t-primary)}*{scrollbar-color:var(--t-border-strong) transparent}*::-webkit-scrollbar-thumb{background:var(--t-border-strong)}*::-webkit-scrollbar-thumb:hover{background:var(--t-text-faint)}.header-punch-panel{background:var(--t-surface-muted)!important;border-color:var(--t-border)!important}.header-punch-clock{color:var(--t-text)!important}.header-punch-sep,.header-punch-progress{background:var(--t-border-strong)!important}.brand-strip{display:flex;height:3px;border-radius:3px;overflow:hidden}.brand-strip>span:nth-child(1){background:#2f6fe4;flex:1}.brand-strip>span:nth-child(2){background:#f5a524;flex:1}.brand-strip>span:nth-child(3){background:#1fa85a;flex:1}.brand-strip>span:nth-child(4){background:#e5413a;flex:1}@media (prefers-reduced-motion: reduce){.ant-card-hoverable:hover{transform:none}}@media print{body:before{display:none}}.ant-table-cell-fix-left,.ant-table-cell-fix-right,.ant-table-tbody>tr>td.ant-table-cell-fix-left,.ant-table-tbody>tr>td.ant-table-cell-fix-right{background:var(--t-surface-solid)!important;z-index:3}.ant-table-thead>tr>th.ant-table-cell-fix-left,.ant-table-thead>tr>th.ant-table-cell-fix-right{background:#eef2f8!important}.ant-table-tbody>tr.ant-table-row:hover>td.ant-table-cell-fix-left,.ant-table-tbody>tr.ant-table-row:hover>td.ant-table-cell-fix-right{background:#edf3fe!important}.ant-table-thead>tr>th{background:#eef2f8!important}.ant-table-cell-fix-right-first:after,.ant-table-cell-fix-left-last:after{box-shadow:none!important}.ant-tabs-tab .anticon,.ant-tabs-tab-btn .anticon{margin-inline-end:8px}
