*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:#0f172a;background:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.platform-copyright{z-index:60;color:#475569;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffc7;border:1px solid #94a3b838;border-radius:999px;align-items:center;max-width:calc(100vw - 36px);padding:6px 10px;font-size:12px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex;position:fixed;bottom:14px;left:18px;box-shadow:0 10px 26px #0f172a14}.platform-copyright:hover{color:#0f4c5c;border-color:#0f4c5c33}body:has(.login-page) .platform-copyright{display:none}.app-shell{min-height:100vh}.app-sider{border-right:1px solid #e2e8f0;box-shadow:10px 0 30px #0f172a0a}.app-brand{color:#0f172a;white-space:nowrap;align-items:center;gap:10px;height:56px;margin:12px;font-weight:700;display:flex;overflow:hidden}.app-brand-mark{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;box-shadow:0 8px 18px #0f172a14}.app-brand-mark img{width:24px;height:24px;display:block}.app-menu{padding:0 8px;border-inline-end:0!important}.app-menu .ant-menu-title-content{min-width:0}.app-menu:not(.ant-menu-inline-collapsed) .ant-menu-title-content{text-overflow:clip;white-space:normal;line-height:1.25;overflow:visible}.app-menu:not(.ant-menu-inline-collapsed) .ant-menu-item,.app-menu:not(.ant-menu-inline-collapsed) .ant-menu-submenu-title{align-items:center;height:auto;min-height:40px}.app-topbar{z-index:9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;height:60px;padding:0 20px;display:flex;position:sticky;top:0}.app-topbar-title,.topbar-user{align-items:center;gap:12px;display:flex}.topbar-user{cursor:pointer;color:#334155}.topbar-actions{align-items:center;gap:16px;display:flex}.notification-panel{flex-direction:column;width:360px;max-height:420px;display:flex}.notification-panel-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:4px;padding-bottom:8px;display:flex}.notification-panel .ant-list{overflow-y:auto}.notification-item{cursor:pointer;border-radius:6px;padding:8px!important}.notification-item:hover{background:#f5f8ff}.notification-item-body{color:#64748b;font-size:12px}.notification-item-date{color:#94a3b8;margin-top:2px;font-size:11px}.app-content{width:min(100%,1440px);margin:0 auto;padding:20px 20px 28px}.mobile-tabbar{z-index:10;background:#fffffff5;border-top:1px solid #e2e8f0;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #0f172a14}.mobile-tabbar .ant-menu{border-bottom:0;justify-content:space-around;display:flex}.ant-card{border-color:#e2e8f0;box-shadow:0 12px 32px #0f172a0d}.ant-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.ant-card .ant-table-wrapper{border:0;border-radius:0}.dashboard-page{flex-direction:column;gap:18px;display:flex}.dashboard-hero{background:linear-gradient(135deg,#0f172af5,#0f4c5ce6),#0f172a;border:1px solid #0f172a14;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:24px;min-height:168px;padding:28px;display:flex;box-shadow:0 24px 70px #0f172a29}.dashboard-eyebrow{color:#67e8f9;letter-spacing:0;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:900;display:block}.dashboard-hero .ant-typography{color:#ffffffc2}.dashboard-hero h2.ant-typography{color:#fff;letter-spacing:0;max-width:780px;margin:0 0 8px;font-size:34px;line-height:1.15}.dashboard-subtitle{font-size:14px;color:#e2e8f0c2!important}.dashboard-role-list{justify-content:flex-end;max-width:460px}.dashboard-role-tag{color:#ffffffdb;letter-spacing:0;background:#ffffff14;border-color:#94a3b842;border-radius:8px;margin:0;padding:5px 9px;font-size:11px;font-weight:800}.dashboard-card-link{height:100%;color:inherit;text-decoration:none;display:block}.dashboard-card{border-color:#e2e8f0;border-radius:8px;height:100%;min-height:164px;transition:transform .16s,box-shadow .16s,border-color .16s;overflow:hidden;box-shadow:0 16px 40px #0f172a0f}.dashboard-card:hover{border-color:#2563eb3d;transform:translateY(-3px);box-shadow:0 24px 54px #0f172a1f}.dashboard-card .ant-card-body{flex-direction:column;gap:10px;height:100%;padding:20px;display:flex}.dashboard-card-top{justify-content:space-between;align-items:center;display:flex}.dashboard-card-icon{border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:inline-flex}.dashboard-card-arrow{color:#94a3b8;transition:transform .16s,color .16s}.dashboard-card:hover .dashboard-card-arrow{color:#2563eb;transform:translate(3px)}.dashboard-card h5.ant-typography{color:#0f172a;letter-spacing:0;margin:4px 0 0;font-size:16px}.dashboard-card .ant-typography{color:#64748b;line-height:1.45}.dashboard-card.tone-teal .dashboard-card-icon{color:#0f766e;background:#ccfbf1}.dashboard-card.tone-blue .dashboard-card-icon{color:#1d4ed8;background:#dbeafe}.dashboard-card.tone-amber .dashboard-card-icon{color:#b45309;background:#fef3c7}.dashboard-card.tone-violet .dashboard-card-icon{color:#6d28d9;background:#ede9fe}.dashboard-card.tone-emerald .dashboard-card-icon{color:#047857;background:#dcfce7}.app-page-drawer .ant-drawer-header{border-bottom-color:#e2e8f0;padding:16px 20px}.app-page-drawer .ant-drawer-title{color:#0f172a;min-width:0;font-weight:800}.app-page-drawer .ant-drawer-body{background:#f8fafc;padding:20px}.app-form-drawer .ant-form,.app-page-drawer .ant-descriptions,.app-wide-drawer .plan-preview{background:#fff}.app-form-drawer .ant-form{border:1px solid #e2e8f0;border-radius:8px;padding:16px}.ant-table-thead>tr>th{white-space:nowrap;font-weight:600}.ant-table-thead>tr>th.ant-table-column-sort,.ant-table-thead>tr>th.ant-table-cell-fix-left,.ant-table-thead>tr>th.ant-table-cell-fix-right{background:#f1f5f9}.ant-table-thead>tr>th .ant-table-filter-trigger:hover,.ant-table-thead>tr>th .ant-table-filter-trigger.active{color:#2563eb!important;background:#2563eb1a!important}.ant-table-thead>tr>th.ant-table-column-sort{box-shadow:inset 0 -2px #2563eb}.ant-table-thead>tr>th .ant-table-column-sorter-up.active,.ant-table-thead>tr>th .ant-table-column-sorter-down.active{color:#2563eb!important}.table-filter-dropdown{width:min(360px,92vw);padding:0;overflow:hidden}.table-filter-dropdown>.ant-typography{color:#334155;text-align:center;background:#f1f5f9;padding:10px 12px;font-weight:600;display:block}.table-filter-dropdown .ant-input-affix-wrapper,.table-filter-dropdown .ant-input{width:calc(100% - 24px);margin:10px 12px}.table-filter-header,.table-filter-option{grid-template-columns:24px minmax(0,1fr) 56px;align-items:center;column-gap:8px;display:grid}.table-filter-header{color:#334155;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:8px 12px;font-weight:700}.table-filter-options{max-height:280px;padding:4px 0;overflow:auto}.table-filter-option{color:#0f172a;cursor:pointer;min-height:32px;padding:5px 12px}.table-filter-option:hover{background:#eff6ff}.table-filter-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.table-filter-count{color:#64748b;text-align:right}.table-filter-actions{border-top:1px solid #e2e8f0;justify-content:space-between;width:100%;padding:8px 12px}.clickable-row td{transition:background .18s}.signature-canvas{touch-action:none;cursor:crosshair;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;height:220px;margin-top:8px;display:block}.holiday-cell-note,.weekend-cell-note{color:#dc2626;background:#fef2f2;border-radius:6px;margin-top:4px;padding:2px 4px;font-size:11px;line-height:1.2}:is(.ant-picker-calendar-date:has(.holiday-cell-note),.ant-picker-calendar-date:has(.weekend-cell-note)){background:#fef7f7;border-color:#fecaca}.work-calendar-nonworking-row>td{background:#fbf7ef}.work-calendar-page{gap:16px;display:grid}.work-calendar-header{background:#fff;border:1px solid #dbe3ef;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:16px;padding:18px 20px;display:flex;box-shadow:0 12px 32px #0f172a0d}.work-calendar-header .ant-typography{margin:0}.work-calendar-header h3.ant-typography{margin:2px 0 4px}.work-calendar-range{color:#334155;background:#eef2f7;border-radius:6px;padding:4px 8px;font-weight:700;display:inline-flex}.work-calendar-actions{justify-content:flex-end}.work-calendar-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.work-calendar-metric{background:#fff;border:1px solid #dbe3ef;border-radius:8px;min-height:88px;padding:14px;box-shadow:0 8px 22px #0f172a0a}.work-calendar-metric span{color:#64748b;text-transform:uppercase;font-size:12px;font-weight:800;display:block}.work-calendar-metric strong{color:#0f172a;margin-top:10px;font-size:26px;line-height:1;display:block}.work-calendar-metric.workday{border-top:4px solid #15803d}.work-calendar-metric.weekend{border-top:4px solid #d97706}.work-calendar-metric.holiday{border-top:4px solid #dc2626}.cutoff-calendar-card .ant-card-head{background:#fff;border-bottom-color:#e2e8f0;min-height:58px}.cutoff-calendar-card .ant-card-body{padding:14px}.work-calendar-card-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.work-calendar-card-title>span{color:#0f172a;font-weight:800}.work-calendar-legend{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.work-calendar-legend-item{color:#475569;align-items:center;gap:6px;font-size:12px;font-weight:800;display:inline-flex}.work-calendar-legend-item:before{content:"";border-radius:999px;width:8px;height:8px}.work-calendar-legend-item.workday:before{background:#15803d}.work-calendar-legend-item.weekend:before{background:#d97706}.work-calendar-legend-item.holiday:before{background:#dc2626}.work-calendar-legend-item.working-override:before{background:#2563eb}.cutoff-day-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px;display:grid}.cutoff-weekday-grid,.cutoff-day-grid-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.cutoff-weekday-grid{margin-bottom:8px}.cutoff-weekday-header{color:#475569;text-align:center;text-transform:uppercase;background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;padding:9px 6px;font-size:12px;font-weight:800}.cutoff-day-card{width:100%;min-height:128px;font:inherit;text-align:left;background:#fff;border:1px solid #dbe3ef;border-radius:8px;padding:12px;display:block;box-shadow:0 8px 20px #0f172a0a}.cutoff-day-card:not(:disabled){cursor:pointer}.cutoff-day-card:disabled{color:inherit;cursor:default}.cutoff-day-card:focus-visible{outline-offset:2px;outline:3px solid #2563eb3d}.cutoff-day-card.empty{visibility:hidden;box-shadow:none}.cutoff-day-card.workday{border-top:4px solid #15803d}.cutoff-day-card.weekend{background:#fff7ed;border-top:4px solid #d97706}.cutoff-day-card.holiday{background:#fff1f2;border-top:4px solid #dc2626}.cutoff-day-card.working-override{background:#eff6ff;border-top:4px solid #2563eb}.cutoff-day-topline{color:#64748b;text-transform:uppercase;justify-content:space-between;font-size:12px;font-weight:800;display:flex}.cutoff-day-number{color:#0f172a;margin:10px 0 12px;font-size:32px;font-weight:800;line-height:1}.cutoff-day-status{color:#475569;gap:3px;font-size:12px;font-weight:800;display:grid}.cutoff-day-card.workday .cutoff-day-status span{color:#15803d}.cutoff-day-card.weekend .cutoff-day-status span{color:#9a3412}.cutoff-day-card.holiday .cutoff-day-status span,.cutoff-day-card.holiday .cutoff-day-status strong{color:#be123c}.cutoff-day-card.working-override .cutoff-day-status span,.cutoff-day-card.working-override .cutoff-day-status strong{color:#1d4ed8}.cutoff-day-status strong{color:#0f172a;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}@media (width<=900px){.dashboard-hero{flex-direction:column;align-items:flex-start;padding:22px}.dashboard-role-list{justify-content:flex-start;max-width:none}.work-calendar-header{flex-direction:column;align-items:stretch}.work-calendar-actions{justify-content:flex-start}.work-calendar-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.work-calendar-card-title{flex-direction:column;align-items:flex-start}.work-calendar-legend{justify-content:flex-start}}@media (width<=640px){.work-calendar-header{padding:14px}.work-calendar-actions,.work-calendar-actions .ant-picker,.work-calendar-actions .ant-btn{width:100%}.work-calendar-metrics{gap:8px}.work-calendar-metric{min-height:76px;padding:10px}.work-calendar-metric strong{font-size:22px}.cutoff-calendar-card .ant-card-body{padding:10px}.cutoff-weekday-grid{display:none}.cutoff-day-grid-week{grid-template-columns:repeat(2,minmax(0,1fr))}.cutoff-day-card.empty{display:none}.cutoff-day-card{min-height:112px;padding:10px}.cutoff-day-number{font-size:26px}}.workplan-summary-card{box-shadow:0 14px 34px #0f172a0f}.workplan-summary-card .ant-descriptions-view{border-radius:8px}.workplan-sheet-card .ant-card-body{padding:14px}.workplan-table{border-radius:8px;overflow:hidden}.workplan-table .ant-table{background:#fff}.workplan-table .ant-table-thead>tr>th{color:#334155;text-align:center;background:#f8fafc;border-color:#e5e7eb}.workplan-table .ant-table-thead>tr:first-child>th{color:#0f172a;background:#eef2f7;font-weight:700}.workplan-table .ant-table-tbody>tr>td{text-align:center;border-color:#edf2f7;padding:8px 6px}.workplan-table .ant-table-tbody>tr>td:first-child{color:#334155;text-align:left;background:#f8fafc;font-weight:700}.workplan-nonworking-column{background:#fbf7ef}.workplan-nonworking-header{color:#9a3412}.workplan-holiday-label{text-overflow:ellipsis;white-space:nowrap;color:#9a3412;max-width:72px;font-size:10px;font-weight:600;overflow:hidden}.workplan-code-select .ant-select-selector{box-shadow:0 1px 2px #0f172a0a;background:#fff!important;border-color:#cbd5e1!important;border-radius:999px!important;height:28px!important}.workplan-code-select .ant-select-selection-item{color:#0f172a;text-align:center;font-weight:600;line-height:26px!important}.workplan-code-pill{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:999px;justify-content:center;align-items:center;min-width:38px;height:28px;padding:0 10px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #0f172a0a}.plan-preview{color:#0f172a;background:#fff;border:1px solid #dbe3ef;border-radius:8px;overflow:hidden}.plan-preview-title{background:#f8fafc;border-bottom:1px solid #dbe3ef;padding:14px 16px;font-size:16px;font-weight:800}.plan-preview-meta{border-bottom:1px solid #dbe3ef;grid-template-columns:96px minmax(0,1fr);gap:8px 12px;padding:14px 16px;display:grid}.plan-preview-meta>span{color:#64748b;font-weight:700}.plan-preview-scroll{overflow-x:auto}.plan-preview-table{border-collapse:collapse;table-layout:fixed;width:max-content;min-width:100%}.plan-preview-table th,.plan-preview-table td{text-align:center;border:1px solid #dbe3ef;min-width:42px;height:38px;font-weight:700}.plan-preview-table th{z-index:1;color:#334155;text-align:left;background:#f1f5f9;min-width:82px;padding-left:10px;position:sticky;left:0}.plan-preview-table td.nonworking{color:#9a3412;background:#fbf7ef}.plan-preview-footer{border-top:1px solid #dbe3ef;grid-template-columns:minmax(220px,1fr) minmax(260px,1fr);gap:18px;padding:14px 16px;display:grid}.plan-preview-total,.plan-preview-code-list>div{grid-template-columns:1fr auto;gap:12px;padding:4px 0;display:grid}.plan-preview-total span,.plan-preview-code-list span:last-child{color:#475569}.plan-preview-code-list>strong{margin-bottom:6px;display:block}.plan-preview-code-list span:first-child{font-weight:800}.my-workplan-card .ant-card-body{padding:12px}.my-workplan-grid{grid-template-columns:repeat(auto-fill,minmax(224px,1fr));gap:12px;display:grid}.my-workplan-day{background:#fff;border:1px solid #dbe3ef;border-radius:8px;overflow:hidden;box-shadow:0 8px 20px #0f172a0a}.my-workplan-day.weekend{background:#fff7ed;border-color:#fdba74}.my-workplan-day.holiday{background:#fff1f2;border-color:#fca5a5}.my-workplan-day.weekend.holiday{background:#fff1f2;border-color:#fb7185}.my-workplan-day.variance{border-color:#d97706;box-shadow:inset 0 0 0 1px #d977062e,0 8px 20px #0f172a0a}.my-workplan-day-head{background:#f8fafcd1;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;min-height:48px;padding:8px 12px;display:flex}.my-workplan-day.weekend .my-workplan-day-head{background:#ffedd5;border-bottom-color:#fed7aa}.my-workplan-day.holiday .my-workplan-day-head{background:#ffe4e6;border-bottom-color:#fecdd3}.my-workplan-day-head>div{align-items:baseline;gap:6px;min-width:0;display:flex}.my-workplan-day-head strong{color:#0f172a;font-size:22px;line-height:1}.my-workplan-day-head span{color:#64748b;text-transform:uppercase;font-size:12px;font-weight:700}.my-workplan-day-head>span{color:#334155;flex:none}.my-workplan-note{color:#9a3412;background:#fff7ed;border-radius:6px;gap:2px;margin:10px 12px 0;padding:7px 8px;font-size:12px;font-weight:700;line-height:1.25;display:grid}.my-workplan-day.holiday .my-workplan-note{color:#be123c;background:#ffe4e6}.my-workplan-note span{letter-spacing:0;text-transform:uppercase;font-size:10px}.my-workplan-note strong{color:inherit;font-size:12px}.my-workplan-fields{gap:8px;padding:10px 12px 12px;display:grid}.my-workplan-field-row{grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;display:grid}.my-workplan-fields label{color:#475569;text-transform:uppercase;font-size:12px;font-weight:800}.my-workplan-code-select{width:100%}.my-workplan-code-select .ant-select-selector{box-shadow:0 1px 2px #0f172a0a;background:#fff!important;border-color:#cbd5e1!important;border-radius:8px!important;min-height:34px!important}.my-workplan-code-select .ant-select-selection-item,.my-workplan-code-select .ant-select-selection-placeholder{color:#0f172a;font-size:13px;font-weight:700}.my-workplan-code-select .ant-select-selection-placeholder{color:#94a3b8}.my-workplan-legend{margin-top:14px}.my-workplan-savebar{z-index:8;background:linear-gradient(#f8fafc00,#f8fafc 32%);justify-content:flex-end;margin-top:16px;padding:12px 0;display:flex;position:sticky;bottom:0}@media (width<=768px){.plan-preview-footer{grid-template-columns:1fr}.my-workplan-grid{grid-template-columns:1fr;gap:10px}.my-workplan-card .ant-card-body{padding:10px}.my-workplan-day-head{min-height:44px}.my-workplan-field-row{grid-template-columns:52px minmax(0,1fr)}.my-workplan-code-select .ant-select-selector{min-height:38px!important}.my-workplan-savebar{margin-left:-12px;margin-right:-12px;padding:12px}.my-workplan-savebar .ant-btn{width:100%}}@media (width<=576px){.topbar-username{display:none}.app-topbar{height:56px;padding:0 12px}.app-content{padding:12px 12px 76px}.ant-card .ant-card-body{padding:16px}.app-page-drawer .ant-drawer-header{padding:12px 14px}.app-page-drawer .ant-drawer-extra{margin-inline-start:8px}.app-page-drawer .ant-drawer-body,.app-form-drawer .ant-form{padding:12px}.ant-table{font-size:13px}.signature-canvas{height:180px}.holiday-cell-note,.weekend-cell-note{display:none}}.clickable-row{cursor:pointer}.my-profile-page{gap:16px;display:grid}.my-profile-hero{background:linear-gradient(135deg,#0f172af0,#1e40afdb 54%,#059669c7),#0f172a;border:1px solid #dbe3ef;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:stretch;gap:16px;padding:22px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 48px #0f172a29}.my-profile-identity{align-items:center;gap:18px;min-width:0;min-height:178px;display:flex}.my-profile-avatar{color:#fff;background:#ffffff29;border:1px solid #ffffff73;flex:none;font-size:30px;font-weight:900;box-shadow:0 18px 34px #0f172a42}.my-profile-title{min-width:0}.my-profile-eyebrow{color:#ffffffd1;background:#ffffff1f;border:1px solid #ffffff42;border-radius:6px;margin-bottom:6px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex}.my-profile-title h2.ant-typography{color:#fff;overflow-wrap:anywhere;margin:0 0 8px;font-size:34px;line-height:1.08}.my-profile-role{color:#ffffffe0;overflow-wrap:anywhere;background:#ffffff21;border-radius:6px;max-width:100%;padding:3px 8px;font-size:12px;font-weight:800;display:inline-flex}.my-profile-metrics{grid-template-columns:1fr;align-content:stretch;gap:10px;display:grid}.my-profile-metric{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1f;border:1px solid #fff3;border-radius:8px;align-content:center;gap:5px;min-width:0;min-height:0;padding:12px 14px;display:grid;box-shadow:inset 0 1px #ffffff24}.my-profile-metric span,.my-profile-panel-title{text-transform:uppercase;font-size:12px;font-weight:900}.my-profile-metric span{color:#ffffffa8}.my-profile-metric strong{color:#fff;overflow-wrap:anywhere;font-size:16px;line-height:1.25}.my-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.my-profile-panel{background:#fff;border:1px solid #dbe3ef;border-radius:8px;min-width:0;height:100%;padding:18px;box-shadow:0 12px 32px #0f172a0d}.my-profile-panel-primary{grid-column:1/-1}.my-profile-panel-title{color:#334155;align-items:center;gap:8px;margin-bottom:16px;display:flex}.my-profile-panel-title .anticon{color:#2563eb;font-size:16px}.my-profile-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.my-profile-panel-primary .my-profile-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.my-profile-field{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:10px;min-width:0;min-height:72px;padding:12px;display:grid}.my-profile-field.compact{min-height:64px}.my-profile-field.wide{grid-column:1/-1}.my-profile-bank-row{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.my-profile-field-icon{color:#2563eb;background:#eef2f7;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.my-profile-field div{gap:4px;min-width:0;display:grid}.my-profile-field span:not(.my-profile-field-icon){color:#64748b;font-size:12px;font-weight:800}.my-profile-field strong{color:#0f172a;overflow-wrap:anywhere;font-size:14px;line-height:1.35}.my-profile-field .ant-tag{width:fit-content;margin-inline-end:0}.my-profile-mail-settings{color:#64748b;gap:4px;margin-top:12px;font-size:12px;display:grid}.mailbox-page{gap:20px;display:grid}.mailbox-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.mailbox-unlock-panel{background:#fff;border:1px solid #dbe3ef;border-radius:8px;gap:12px;padding:16px;display:grid}.mailbox-inbox-panel{background:#fff;border:1px solid #dbe3ef;border-radius:8px;padding:16px}.mailbox-inbox-item{cursor:pointer;border-radius:6px;padding:8px 10px!important}.mailbox-inbox-item:hover{background:#f5f8ff}.mailbox-inbox-snippet{color:#94a3b8;font-size:12px}.mailbox-inbox-date{color:#94a3b8;white-space:nowrap;font-size:12px}.mailbox-message-meta{color:#475569;gap:4px;margin-bottom:16px;display:grid}.mailbox-message-body{white-space:pre-wrap}.mailbox-attachments{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.mail-compose-actions{justify-content:flex-end;gap:8px;display:flex}.change-password-page{background:#eef2f7;place-items:center;min-height:100vh;padding:20px;display:grid}.change-password-panel{background:#fff;border:1px solid #dbe3ef;border-radius:8px;gap:14px;width:min(100%,420px);padding:28px;display:grid;box-shadow:0 25px 50px -12px #0f172a33}.change-password-icon{color:#2563eb;background:#eff6ff;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;font-size:clamp(44px,5vw,60px);display:inline-flex}.change-password-panel h3.ant-typography{margin:0}.change-password-form{gap:14px;display:grid}.change-password-user{color:#334155;background:#f8fafc;border-radius:8px;width:fit-content;padding:6px 10px;font-weight:700}.change-password-actions{justify-content:flex-end;gap:8px;display:flex}.login-page{background:linear-gradient(135deg,#020815 0%,#061a35 48%,#030b19 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";pointer-events:none;clip-path:inset(0 0 0 50%);opacity:.9;filter:blur(.1px);background:linear-gradient(115deg,#7ecdff6b,#2aa9e22e 48%,#0000 70%) border-box;border:clamp(34px,4.2vw,64px) solid #0000;border-radius:50%;width:max(96vw,920px);height:max(54vw,520px);position:absolute;bottom:-18vw;left:-42vw;transform:rotate(45deg);box-shadow:150px -150px 0 -8px #2aa9e229,300px -300px 0 -14px #074f9238,450px -450px 0 -20px #7ecdff1f}.login-page:after{content:"";pointer-events:none;clip-path:inset(0 0 0 50%);opacity:.78;border:clamp(34px,4.2vw,64px) solid #0a559e38;border-radius:50%;width:max(96vw,920px);height:max(54vw,520px);position:absolute;bottom:calc(-18vw - 150px);left:calc(150px - 42vw);transform:rotate(45deg)}.login-grid-overlay{pointer-events:none;background-image:linear-gradient(#8dcfff14 1px,#0000 1px),linear-gradient(90deg,#8dcfff14 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000 0%,#0000 72%);mask-image:radial-gradient(circle,#000 0%,#0000 72%)}.login-shell{z-index:1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0718309e;border:1px solid #84ccff42;border-radius:24px;grid-template-columns:minmax(0,.95fr) minmax(380px,1fr);width:min(100%,980px);min-height:560px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px #000a2073,inset 0 1px #ffffff14}.login-left-panel{color:#fff;background:linear-gradient(135deg,#092246fa,#084e91c2),linear-gradient(#0000,#2aa9e21a);flex-direction:column;justify-content:space-between;gap:32px;padding:42px;display:flex;position:relative}.login-left-panel:before{content:"";pointer-events:none;opacity:.9;background-image:url("data:image/svg+xml,%3Csvg width='420' height='560' viewBox='0 0 420 560' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%237ecdfb' stroke-linejoin='round'%3E%3Cpath d='M44 22 88 47 88 98 44 123 0 98 0 47Z' stroke-opacity='.24' stroke-width='1.5'/%3E%3Cpath d='M139 10 178 33 178 78 139 101 100 78 100 33Z' stroke-opacity='.18' stroke-width='1.4'/%3E%3Cpath d='M71 146 100 163 100 196 71 213 42 196 42 163Z' stroke-opacity='.26' stroke-width='1.2'/%3E%3Cpath d='M172 124 232 159 232 228 172 263 112 228 112 159Z' stroke-opacity='.16' stroke-width='1.7'/%3E%3Cpath d='M25 258 62 279 62 322 25 343 -12 322 -12 279Z' stroke-opacity='.22' stroke-width='1.4'/%3E%3Cpath d='M119 314 151 332 151 369 119 387 87 369 87 332Z' stroke-opacity='.2' stroke-width='1.2'/%3E%3Cpath d='M226 302 270 327 270 378 226 403 182 378 182 327Z' stroke-opacity='.13' stroke-width='1.5'/%3E%3Cpath d='M68 418 128 453 128 522 68 557 8 522 8 453Z' stroke-opacity='.16' stroke-width='1.7'/%3E%3Cpath d='M188 448 223 468 223 509 188 529 153 509 153 468Z' stroke-opacity='.14' stroke-width='1.3'/%3E%3Cpath d='M304 160 336 178 336 215 304 233 272 215 272 178Z' stroke-opacity='.09' stroke-width='1.1'/%3E%3Cpath d='M318 374 352 394 352 433 318 453 284 433 284 394Z' stroke-opacity='.08' stroke-width='1.1'/%3E%3Cpath d='M232 18 261 35 261 68 232 85 203 68 203 35Z' stroke-opacity='.12' stroke-width='1.1'/%3E%3Cpath d='M30 118 51 130 51 154 30 166 9 154 9 130Z' stroke-opacity='.2' stroke-width='1'/%3E%3Cpath d='M266 92 288 105 288 130 266 143 244 130 244 105Z' stroke-opacity='.1' stroke-width='1'/%3E%3Cpath d='M98 226 119 238 119 262 98 274 77 262 77 238Z' stroke-opacity='.19' stroke-width='1'/%3E%3Cpath d='M170 258 194 272 194 299 170 313 146 299 146 272Z' stroke-opacity='.17' stroke-width='1.1'/%3E%3Cpath d='M44 354 70 369 70 399 44 414 18 399 18 369Z' stroke-opacity='.21' stroke-width='1.1'/%3E%3Cpath d='M160 390 184 404 184 431 160 445 136 431 136 404Z' stroke-opacity='.16' stroke-width='1'/%3E%3Cpath d='M256 430 282 445 282 475 256 490 230 475 230 445Z' stroke-opacity='.1' stroke-width='1.1'/%3E%3Cpath d='M116 514 137 526 137 550 116 562 95 550 95 526Z' stroke-opacity='.15' stroke-width='1'/%3E%3C/g%3E%3Cg fill='%239fe2ff' fill-opacity='.36'%3E%3Ccircle cx='44' cy='22' r='2.4'/%3E%3Ccircle cx='88' cy='98' r='2.1'/%3E%3Ccircle cx='100' cy='163' r='2'/%3E%3Ccircle cx='172' cy='124' r='2.2'/%3E%3Ccircle cx='62' cy='322' r='2'/%3E%3Ccircle cx='128' cy='453' r='2.3'/%3E%3Ccircle cx='232' cy='18' r='1.8'/%3E%3Ccircle cx='30' cy='166' r='1.7'/%3E%3Ccircle cx='119' cy='238' r='1.7'/%3E%3Ccircle cx='194' cy='299' r='1.8'/%3E%3Ccircle cx='70' cy='399' r='1.8'/%3E%3Ccircle cx='282' cy='445' r='1.5'/%3E%3C/g%3E%3C/svg%3E");background-position:0;background-repeat:no-repeat;background-size:min(100%,420px) 100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000 0% 42%,#0000006b 62%,#0000 86%);mask-image:linear-gradient(90deg,#000 0% 42%,#0000006b 62%,#0000 86%)}.login-left-panel:after{content:none}.login-brand-block,.login-hero-copy,.login-footer-line{z-index:1;position:relative}.login-brand-block{align-items:center;gap:14px;display:flex}.login-brand-mark{background:#fffffff5;border:1px solid #a8dcff94;border-radius:8px;flex:0 0 62px;justify-content:center;align-items:center;width:62px;height:62px;display:inline-flex;overflow:hidden;box-shadow:0 0 28px #2aa9e247}.login-brand-mark img{object-fit:contain;width:50px;height:50px}.login-brand-eyebrow{color:#e7f6ff;letter-spacing:0;text-transform:uppercase;font-size:13px;font-weight:900}.login-brand-subtitle{color:#dcf1ffb3;margin-top:3px;font-size:12px;font-weight:700}.login-system-chip{color:#9fe2ff;letter-spacing:0;background:#2aa9e21f;border:1px solid #87d4ff70;border-radius:8px;width:fit-content;margin-bottom:16px;padding:7px 10px;font-size:11px;font-weight:900}.login-hero-copy h1{color:#fff;letter-spacing:0;margin:0;font-size:34px;font-weight:900;line-height:1.08}.login-hero-copy h1 span{color:#9fdfff;display:block}.login-hero-copy p{color:#e0f2feb8;max-width:320px;margin:14px 0 24px;font-size:14px;line-height:1.6}.login-feature-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.login-feature-card{background:#ffffff12;border:1px solid #96d7ff33;border-radius:8px;align-items:flex-start;gap:10px;min-height:76px;padding:12px;display:flex;box-shadow:inset 0 1px #ffffff14}.login-feature-icon{color:#fff;border-radius:8px;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;font-size:17px;display:flex}.login-feature-title{color:#fff;font-size:12px;font-weight:800;line-height:1.2}.login-feature-desc{color:#dff2ff85;margin-top:4px;font-size:11px;line-height:1.35}.login-footer-line{color:#e0f2fe75;align-items:center;font-size:11px;font-weight:700;line-height:1.2;text-decoration:none;display:flex}.login-footer-line:hover{color:#ffffffd6}.login-form-panel{background:linear-gradient(#f7fbfffa,#e4f2fff5);justify-content:center;align-items:center;padding:48px 42px;display:flex}.login-form-card{width:100%;max-width:360px}.login-form-header{text-align:center;margin-bottom:32px}.login-form-eyebrow{color:#075aa7;letter-spacing:0;text-transform:none;margin-bottom:18px;font-family:Segoe Print,Bradley Hand,Comic Sans MS,cursive;font-size:clamp(24px,3vw,36px);font-weight:700;line-height:.82}.login-form-title.ant-typography{color:#071b38;letter-spacing:0;margin:0 0 10px;font-size:30px;font-weight:900;line-height:1.15}.login-form-subtitle.ant-typography{color:#435b7d;max-width:320px;margin-inline:auto;font-size:15px;line-height:1.6;display:block}.login-error{margin-bottom:16px}.login-form-card .ant-form-item-label>label{color:#0d2747;font-size:14px;font-weight:800}.login-form-card .ant-form-item{margin-bottom:20px}.login-form-card .ant-input-affix-wrapper{background:#fff;border-color:#c3ddf4;border-radius:8px}.login-form-card .ant-input-affix-wrapper:hover,.login-form-card .ant-input-affix-wrapper-focused{border-color:#2aa9e2;box-shadow:0 0 0 3px #2aa9e224}.login-submit.ant-btn-primary{background:linear-gradient(135deg,#06498f,#2aa9e2);border:0;border-radius:8px;font-weight:900;box-shadow:0 14px 28px #06498f42}.login-submit.ant-btn-primary:hover{background:linear-gradient(135deg,#073b78,#1d98d4)!important}@media (width<=768px){.login-page{align-items:stretch;padding:16px}.login-shell{grid-template-columns:1fr;min-height:auto}.login-left-panel{display:none}.login-form-panel{padding:36px 22px}}@media (width<=1100px){.my-profile-hero{grid-template-columns:1fr}.my-profile-identity{min-height:0}.my-profile-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.my-profile-grid{grid-template-columns:1fr}.my-profile-panel-primary{grid-area:auto}.my-profile-panel-primary .my-profile-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.my-profile-hero{padding:16px}.my-profile-identity{align-items:flex-start}.my-profile-avatar{font-size:22px;width:64px!important;height:64px!important;line-height:64px!important}.my-profile-title h2.ant-typography{font-size:24px}.my-profile-metrics,.my-profile-fields,.my-profile-panel-primary .my-profile-fields{grid-template-columns:1fr}.my-profile-bank-row{grid-template-columns:repeat(2,minmax(0,1fr))}.my-profile-panel{padding:14px}}@media (width<=430px){.my-profile-identity{grid-template-columns:56px minmax(0,1fr);gap:12px;display:grid}.my-profile-avatar{font-size:19px;width:56px!important;height:56px!important;line-height:56px!important}.my-profile-field{grid-template-columns:32px minmax(0,1fr);min-height:64px;padding:10px}.my-profile-field-icon{width:32px;height:32px}.my-profile-bank-row .my-profile-field{grid-template-columns:1fr;gap:8px}}.my-attendance-page,.self-service-page{gap:16px;display:grid}.self-service-header{background:linear-gradient(135deg,#0f172af2,#2563ebdb 60%,#059669c7),#0f172a;border:1px solid #dbe3ef;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:16px;padding:20px;display:flex;box-shadow:0 20px 48px #0f172a24}.self-service-header h3.ant-typography{color:#fff;margin:4px 0}.self-service-header .ant-typography{color:#ffffffb8}.self-service-eyebrow{background:#ffffff1f;border:1px solid #ffffff42;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex;color:#ffffffd1!important}.self-service-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.self-service-stat{background:#fff;border:1px solid #dbe3ef;border-radius:8px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:6px 12px;min-height:100px;padding:16px;display:grid;box-shadow:0 12px 32px #0f172a0d}.self-service-stat .anticon{color:#2563eb;background:#eef2f7;border-radius:8px;grid-row:span 2;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:inline-flex}.self-service-stat span{color:#64748b;text-transform:uppercase;font-size:12px;font-weight:900}.self-service-stat strong{color:#0f172a;font-size:28px;line-height:1}.self-service-table{box-shadow:0 12px 32px #0f172a0d}.help-center-steps{gap:8px;margin:0;padding-left:20px;display:grid}.help-center-steps li{line-height:1.6}.self-service-drawer .ant-drawer-body{background:#f8fafc}.self-service-drawer .ant-form{background:#fff;border:1px solid #dbe3ef;border-radius:8px;padding:16px;box-shadow:0 10px 28px #0f172a0a}.my-attendance-header{background:linear-gradient(135deg,#0f172af2,#2563ebdb 60%,#059669c7),#0f172a;border:1px solid #dbe3ef;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:16px;padding:20px;display:flex;box-shadow:0 20px 48px #0f172a24}.my-attendance-header h3.ant-typography{color:#fff;margin:4px 0}.my-attendance-header .ant-typography{color:#ffffffb8}.my-attendance-eyebrow{background:#ffffff1f;border:1px solid #ffffff42;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex;color:#ffffffd1!important}.my-attendance-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.my-attendance-stat{background:#fff;border:1px solid #dbe3ef;border-radius:8px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:6px 12px;min-height:100px;padding:16px;display:grid;box-shadow:0 12px 32px #0f172a0d}.my-attendance-stat .anticon{color:#2563eb;background:#eef2f7;border-radius:8px;grid-row:span 2;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:inline-flex}.my-attendance-stat span{color:#64748b;text-transform:uppercase;font-size:12px;font-weight:900}.my-attendance-stat strong{color:#0f172a;font-size:28px;line-height:1}.my-attendance-calendar{background:#fff;border:1px solid #dbe3ef;border-radius:8px;padding:16px;box-shadow:0 12px 32px #0f172a0d}.my-attendance-calendar .ant-picker-calendar-date{min-height:132px}.my-attendance-calendar .ant-picker-cell:not(.ant-picker-cell-in-view){pointer-events:none}.my-attendance-calendar .ant-picker-cell:not(.ant-picker-cell-in-view) .ant-picker-calendar-date{opacity:.48;background:#f8fafc}.my-attendance-calendar-entry{color:#334155;gap:5px;padding-top:4px;font-size:12px;display:grid}.my-attendance-calendar-entry>span{color:#475569;font-weight:700}.my-attendance-calendar-entry>em{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.my-attendance-calendar-entry .ant-tag{width:fit-content;margin-inline-end:0}.my-attendance-calendar .ant-picker-cell:has(.calendar-day--weekend) .ant-picker-calendar-date{background:#feecec}.my-attendance-calendar .ant-picker-cell:has(.calendar-day--holiday) .ant-picker-calendar-date{background:#fecdd3}.my-attendance-calendar .ant-picker-calendar-date-today{box-shadow:none!important;background:#e2e8f0!important;border-color:#0000!important}.my-attendance-calendar .ant-picker-calendar-date-today:before{border:0!important}.my-attendance-calendar .ant-picker-cell-selected .ant-picker-calendar-date{box-shadow:none!important;background:#dbeafe!important;border-color:#0000!important}.overtime-entry-grid{grid-template-columns:minmax(150px,1.4fr) repeat(2,minmax(110px,.8fr)) minmax(140px,1fr);gap:12px;display:grid}.overtime-entry-money-grid{grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr);gap:12px;display:grid}.overtime-calculation-card{overflow:hidden}.overtime-calculation-table .ant-table{font-size:11px}.overtime-calculation-table .ant-table-cell{text-align:center;white-space:normal;word-break:normal;line-height:1.25;padding:7px 4px!important}.overtime-calculation-table .ant-table-thead>tr>th{color:#172033;background:#fff7b3;border-color:#c7b93a;font-size:10px;font-weight:700;text-align:center!important}.overtime-calculation-table .ant-table-tbody>tr>td{border-color:#d7dce5}.ot-date-remarks{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;font-weight:400;overflow:hidden}@media (width<=760px){.overtime-entry-grid,.overtime-entry-money-grid{grid-template-columns:1fr;gap:0}}.calendar-holiday-label{text-overflow:ellipsis;white-space:nowrap;margin-bottom:5px;font-size:11px;display:block;overflow:hidden;color:#be123c!important;font-weight:800!important}.my-team-calendar-day{gap:5px;display:grid}.my-team-calendar-entry{background:#ffffffe0;border:1px solid #dbe3ef;border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:6px;padding:6px;font-size:11px;display:grid}.my-team-calendar-entry>div{gap:2px;min-width:0;display:grid}.my-team-calendar-entry strong,.my-team-calendar-entry span,.my-team-calendar-entry em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.my-team-calendar-entry span,.my-team-calendar-entry em{color:#64748b;font-style:normal}.my-team-calendar-entry .ant-tag{margin-inline-end:0}.my-attendance-table-title,.my-attendance-table-task{gap:4px;display:grid}.my-attendance-table-title strong,.my-attendance-table-task strong{color:#0f172a}.my-attendance-table-title span{color:#64748b;font-size:12px;font-weight:700}.my-attendance-drawer .ant-drawer-body{background:#f8fafc}.my-attendance-drawer form{gap:14px;display:grid}.my-attendance-drawer-section{background:#fff;border:1px solid #dbe3ef;border-radius:8px;padding:14px;box-shadow:0 10px 28px #0f172a0a}.my-attendance-section-title{color:#334155;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:12px;font-size:12px;font-weight:900;display:flex}.my-attendance-section-title .anticon{color:#2563eb;font-size:16px}.my-attendance-readonly-grid,.my-attendance-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.my-attendance-readonly-grid>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:4px;min-width:0;min-height:70px;padding:12px;display:grid}.my-attendance-readonly-grid .wide,.my-attendance-form-grid .wide{grid-column:1/-1}.my-attendance-readonly-grid span{color:#64748b;text-transform:uppercase;font-size:12px;font-weight:900}.my-attendance-readonly-grid strong{color:#0f172a;overflow-wrap:anywhere;font-size:14px;line-height:1.35}.my-attendance-status-guide{gap:8px;margin-top:4px;display:grid}.my-attendance-status-guide>div{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:92px minmax(0,1fr) minmax(0,1.1fr);gap:10px;padding:9px 10px;font-size:12px;line-height:1.35;display:grid}.my-attendance-status-guide strong{color:#0f172a}.my-attendance-status-guide em{color:#64748b;font-style:normal}.attendance-task-list{gap:10px;display:grid}.attendance-task-list-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.attendance-task-entry-form{background:#f8fafc;border:1px solid #dbe3ef;border-radius:8px;grid-template-columns:120px 120px minmax(160px,1fr) auto;align-items:end;gap:10px;padding:12px;display:grid}.attendance-task-entry-form .ant-form-item{margin-bottom:0}.attendance-task-readonly{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.attendance-task-readonly>div{gap:4px;min-width:0;display:grid}.attendance-task-readonly span{color:#64748b;text-transform:uppercase;font-size:11px;font-weight:800}.attendance-task-readonly strong{color:#0f172a;overflow-wrap:anywhere}.attendance-task-readonly-description{border-top:1px solid #e2e8f0;grid-column:1/-1;padding-top:8px}.attendance-task-list .ant-collapse{background:#fff;border-color:#dbe3ef}.attendance-task-collapse-label{grid-template-columns:minmax(110px,210px) 70px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.attendance-task-collapse-label>span{color:#64748b}.attendance-task-collapse-label>em{color:#334155;text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.attendance-task-collapse-label .ant-tag{margin-inline-end:0}.attendance-task-description{grid-column:1/-1}.attendance-task-status-help{gap:6px;width:min(420px,75vw);display:grid}.attendance-task-status-help>div{border-bottom:1px solid #e2e8f0;grid-template-columns:90px minmax(0,1fr);gap:10px;padding:6px 0;display:grid}.attendance-task-status-help>div:last-child{border-bottom:0}.attendance-task-status-help span{color:#64748b}.attendance-task-expanded-list{gap:6px;padding:4px 28px;display:grid}.attendance-task-expanded-list>div{background:#fff;border:1px solid #e2e8f0;border-radius:6px;grid-template-columns:100px 70px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.attendance-task-expanded-list span{color:#64748b}.attendance-task-expanded-list em{color:#334155;font-style:normal}@media (width<=700px){.self-service-header{flex-direction:column;align-items:stretch;padding:16px}.self-service-header .ant-btn,.self-service-header .ant-picker{width:100%}.self-service-stats{grid-template-columns:1fr}.my-attendance-header{flex-direction:column;align-items:stretch;padding:16px}.my-attendance-header .ant-btn{width:100%}.my-attendance-stats,.my-attendance-readonly-grid,.my-attendance-form-grid{grid-template-columns:1fr}.my-attendance-calendar{padding:8px;overflow-x:auto}.my-attendance-calendar .ant-picker-calendar{min-width:760px}.my-attendance-status-guide>div{grid-template-columns:1fr;gap:3px}.attendance-task-entry-form,.attendance-task-readonly{grid-template-columns:1fr 1fr}.attendance-task-entry-form .attendance-task-description{grid-column:1/-1}.attendance-task-collapse-label{grid-template-columns:auto auto minmax(0,1fr)}.attendance-task-collapse-label .ant-tag{display:none}}.my-payslip-page{gap:16px;display:grid}.my-payslip-hero{background:linear-gradient(135deg,#0f172af2,#2563ebdb 58%,#059669c2),#0f172a;border:1px solid #dbe3ef;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:16px;padding:20px;display:flex;box-shadow:0 20px 48px #0f172a24}.my-payslip-hero h3.ant-typography{color:#fff;margin:4px 0}.my-payslip-hero .ant-typography{color:#ffffffb8}.my-payslip-eyebrow{background:#ffffff1f;border:1px solid #ffffff42;border-radius:6px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex;color:#ffffffd1!important}.my-payslip-panel{background:#fff;border:1px solid #dbe3ef;border-radius:8px;padding:18px;box-shadow:0 12px 32px #0f172a0d}.my-payslip-card{gap:16px;display:grid}.my-payslip-action{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;justify-content:flex-start;align-items:center;gap:12px;padding:12px;font-weight:800;display:flex}.my-payslip-period-picker{min-width:156px}.my-payslip-slip{background:#fff;flex-direction:column;gap:18px;min-height:520px;padding:4px 0 0;display:flex}.my-payslip-loading{color:#64748b;justify-content:center;align-items:center;min-height:220px;font-size:13px;display:flex}.my-payslip-section h4{color:#43536a;letter-spacing:.08em;border-bottom:1px solid #dbe3ef;margin:0;padding-bottom:7px;font-size:12px;font-weight:900}.my-payslip-line-list{gap:10px;padding:10px 0;display:grid}.my-payslip-line,.my-payslip-section-total,.my-payslip-take-home{grid-template-columns:minmax(0,1fr) max-content;align-items:baseline;gap:16px;display:grid}.my-payslip-line{color:#64748b;padding:0 0 0 12px;font-size:13px}.my-payslip-line.nested{padding-left:28px}.my-payslip-line.header{color:#43536a;padding-top:2px;font-weight:800}.my-payslip-line strong,.my-payslip-section-total strong{color:#334155;font-weight:800}.my-payslip-section-total{color:#43536a;letter-spacing:.08em;border-top:1px solid #dbe3ef;padding-top:9px;font-size:12px;font-weight:900}.my-payslip-take-home{color:#1f2937;letter-spacing:.02em;border-top:1px solid #dbe3ef;margin-top:auto;padding-top:20px;font-size:14px;font-weight:900}.my-payslip-take-home-actions{justify-content:flex-end;align-items:center;gap:12px;display:inline-flex}.my-payslip-take-home strong{color:#059669;letter-spacing:0;font-size:18px}.my-payslip-preview-drawer .ant-drawer-body{background:#e2e8f0;padding:0;overflow:hidden}.my-payslip-pdf-frame{background:#e2e8f0;border:0;width:100%;height:calc(100vh - 56px)}@media (width<=700px){.my-payslip-hero{flex-direction:column;align-items:stretch;padding:16px}.my-payslip-hero .ant-btn{width:100%}.my-payslip-action{flex-direction:column;align-items:stretch}.my-payslip-action .ant-picker,.my-payslip-action .ant-btn{width:100%}.my-payslip-take-home{grid-template-columns:1fr}.my-payslip-take-home-actions{justify-content:space-between}}@media (width<=576px){.platform-copyright{max-width:calc(100vw - 24px);font-size:11px;bottom:70px;left:12px}.dashboard-hero{min-height:0;padding:18px}.dashboard-hero h2.ant-typography{font-size:25px}.dashboard-card{min-height:148px}}@media print{.platform-copyright{display:none}}.overtime-batch-header-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.overtime-batch-header-item{background:#fafbfc;border:1px solid #edf0f5;border-radius:8px;flex-direction:column;justify-content:center;gap:7px;min-width:0;min-height:72px;padding:11px 14px;display:flex}.overtime-batch-header-po{background:#fffdf5}@media (width<=1000px){.overtime-batch-header-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overtime-batch-header-po{grid-column:1/-1}}@media (width<=560px){.overtime-batch-header-grid{grid-template-columns:1fr}.overtime-batch-header-po{grid-column:auto}}.workforce-leave-history{background:#f8fafc;border:1px solid #dbe4f0;border-radius:10px;padding:16px}.workforce-leave-history-heading,.workforce-leave-history-heading>div,.workforce-leave-history-main,.workforce-leave-history-row>div{display:flex}.workforce-leave-history-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.workforce-leave-history-heading>div,.workforce-leave-history-main,.workforce-leave-history-row>div{flex-direction:column;gap:2px;min-width:0}.workforce-leave-history-list{gap:8px;display:grid}.workforce-leave-history-row{background:#fff;border:1px solid #e4eaf2;border-radius:8px;grid-template-columns:minmax(190px,1fr) auto 80px minmax(220px,1.4fr);align-items:center;gap:20px;padding:12px 14px;display:grid}.workforce-leave-history-reason{overflow-wrap:anywhere}@media (width<=800px){.workforce-leave-history-row{grid-template-columns:minmax(0,1fr) auto}.workforce-leave-history-reason{grid-column:1/-1}}
