html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}html,body,#root{height:100%}:root{--ep-bg-app: #f3f5f8;--ep-bg-subtle: #f8fafc;--ep-surface: #ffffff;--ep-surface-muted: #f7f9fc;--ep-border: #e3e8ef;--ep-border-strong: #d5dce6;--ep-text: #0f172a;--ep-text-secondary: #475467;--ep-text-tertiary: #98a2b3;--ep-primary: #1668dc;--ep-primary-soft: #e8f1ff;--ep-success: #16a34a;--ep-warning: #d97706;--ep-danger: #dc2626;--ep-radius-sm: 10px;--ep-radius-md: 14px;--ep-radius-lg: 18px;--ep-shadow-surface: 0 1px 2px rgba(15, 23, 42, .04), 0 10px 24px rgba(15, 23, 42, .04)}body{margin:0;font-family:PingFang SC,Microsoft YaHei,sans-serif;background:var(--ep-bg-app);color:var(--ep-text)}*{box-sizing:border-box}.centered-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-page{min-height:100vh;background:radial-gradient(circle at top left,rgba(22,104,220,.14),transparent 30%),linear-gradient(180deg,#f7f9fc,#eef3f8);padding:32px}.login-shell{max-width:1160px;min-height:calc(100vh - 64px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) 456px;align-items:stretch;gap:24px}.login-overview{display:flex;flex-direction:column;justify-content:center;gap:28px;padding:24px 24px 24px 8px}.login-overview__brand{display:flex;align-items:center;gap:14px}.login-overview__mark{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:#111827;color:#fff;font-size:15px;font-weight:700;letter-spacing:.04em}.login-overview__product{color:var(--ep-text);font-size:16px;font-weight:700}.login-overview__subtitle{color:var(--ep-text-secondary);font-size:13px}.login-overview__content{max-width:640px}.login-overview__eyebrow{display:inline-flex;margin-bottom:12px;color:var(--ep-primary);font-size:13px;font-weight:600}.login-overview__title{margin:0 0 12px!important;color:var(--ep-text)!important;font-size:40px!important;line-height:1.2!important}.login-overview__description{margin:0!important;max-width:560px;color:var(--ep-text-secondary);font-size:15px;line-height:1.8}.login-overview__features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.login-feature{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid rgba(227,232,239,.85);border-radius:14px;background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-feature__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;flex-shrink:0;background:#1668dc1a;color:var(--ep-primary);font-size:16px}.login-feature__body{min-width:0}.login-feature__title{color:var(--ep-text);font-size:14px;font-weight:600;line-height:1.45}.login-feature__description{margin-top:4px;color:var(--ep-text-secondary);font-size:12px;line-height:1.6}.login-panel{display:flex;flex-direction:column;justify-content:center;padding:24px;border:1px solid rgba(227,232,239,.9);border-radius:24px;background:#fffffff0;box-shadow:0 20px 48px #0f172a14}.login-panel__body{max-width:360px}.login-panel__eyebrow{display:inline-flex;margin-bottom:10px;color:var(--ep-primary);font-size:13px;font-weight:600}.login-panel__title{margin:0 0 8px!important;color:var(--ep-text)!important;font-size:28px!important;line-height:1.25!important}.login-panel__description{margin:0 0 24px!important;color:var(--ep-text-secondary);font-size:14px;line-height:1.7}.login-panel__mode{margin-bottom:18px}.login-panel .ant-form-item-label>label{color:var(--ep-text);font-weight:600}.login-panel .ant-input-affix-wrapper,.login-panel .ant-input{border-radius:12px}.login-panel .ant-input-affix-wrapper{min-height:46px}.login-panel .ant-btn-primary{height:46px;border-radius:12px;font-weight:600}.login-panel__footer{display:flex;align-items:center;gap:8px;margin-top:18px;color:var(--ep-text-secondary);font-size:12px}.portal-shell{height:100vh;overflow:hidden;background:var(--ep-bg-app)}.portal-sider{border-right:1px solid var(--ep-border);height:100vh;overflow:auto;background:var(--ep-surface-muted);transition:all .2s ease}.portal-sider .ant-layout-sider-children{display:flex;flex-direction:column}.portal-sider .ant-menu{flex:1;border-inline-end:0!important;background:transparent;padding:10px 10px 20px}.portal-sider .ant-menu-item,.portal-sider .ant-menu-submenu-title{height:48px;line-height:48px;margin:5px 0;border-radius:10px;color:var(--ep-text);font-size:16px;font-weight:600;padding-inline-end:12px!important}.portal-sider .ant-menu-item .ant-menu-item-icon,.portal-sider .ant-menu-submenu-title .ant-menu-item-icon{min-width:20px;font-size:20px}.portal-sider .ant-menu-title-content{min-width:0;overflow:hidden;text-overflow:ellipsis}.portal-sider .ant-menu-item-selected{background:var(--ep-primary-soft);color:var(--ep-primary);font-weight:700}.portal-sider .ant-menu-item:not(.ant-menu-item-selected):hover,.portal-sider .ant-menu-submenu-title:hover{color:var(--ep-primary);background:#eef5ff!important}.portal-sider .ant-menu-submenu-selected>.ant-menu-submenu-title{color:var(--ep-text)}.portal-sider .ant-menu-sub.ant-menu-inline{background:transparent}.portal-sider .ant-menu-inline .ant-menu-item{margin-inline:0}.portal-sider.portal-sider--collapsed .ant-menu{padding-inline:8px}.portal-main{min-width:0;height:100vh;overflow:hidden;background:var(--ep-bg-app)}.brand-block{display:flex;gap:10px;align-items:center;padding:16px 12px;transition:padding .2s ease,gap .2s ease}.brand-copy{min-width:0}.brand-mark{width:42px;height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:#111827;color:#fff;font-weight:700;letter-spacing:.02em}.brand-title{font-size:16px;font-weight:700;color:var(--ep-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-sider.portal-sider--collapsed .brand-block{justify-content:center;padding-inline:8px}.portal-sider.portal-sider--collapsed .brand-copy{display:none}.portal-header{background:#fffffff0;border-bottom:1px solid var(--ep-border);height:56px;padding:0 20px;line-height:1}.portal-header-inner{position:relative;width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;height:100%}.portal-header-main{flex:1;display:flex;align-items:center}.portal-header-center{position:absolute;top:50%;left:50%;z-index:1;display:flex;align-items:center;justify-content:center;min-width:320px;max-width:min(480px,calc(100vw - 720px));transform:translate(-50%,-50%);pointer-events:none}.portal-header-center>*{pointer-events:auto}.portal-sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;color:var(--ep-text-secondary)}.portal-sidebar-toggle:hover{color:var(--ep-text);background:var(--ep-bg-subtle)!important}.portal-page-heading{min-width:220px;display:flex;flex:1 1 360px;flex-direction:column;gap:4px}.portal-page-title-row{min-width:0;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.portal-page-title{margin:0!important;color:var(--ep-text)!important;font-size:28px!important;line-height:1.2!important;letter-spacing:0!important;white-space:nowrap}.portal-page-breadcrumb-title{min-width:0;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.portal-page-breadcrumb-title__back{width:40px;height:36px;padding:0;color:var(--ep-text-secondary);font-size:22px}.portal-page-breadcrumb-title__back:hover{color:var(--ep-primary)!important;background:transparent!important}.portal-page-title-actions{display:flex;align-items:center;flex-shrink:0}.partner-page-title-tools{display:inline-flex;align-items:center;gap:8px}.partner-page-switch{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--ep-border);border-radius:8px;background:#fff;box-shadow:0 2px 8px #1018280f}.partner-page-switch__item{min-width:88px;border:0;box-shadow:none;font-weight:600}.partner-page-switch__item:not(.partner-page-switch__item--active){color:var(--ep-text-secondary);background:transparent}.partner-page-switch__item--active{pointer-events:none}.partner-page-switch__secondary{color:var(--ep-text-secondary);border-color:var(--ep-border);box-shadow:none;font-weight:500}.partner-page-switch__secondary--active{color:#cf1322;border-color:#ffa39e;background:#fff1f0}.partner-basic-settings-page{min-height:0;display:flex;flex:1;flex-direction:column;overflow:hidden}.partner-basic-settings-page__tabs{flex:0 0 auto}.partner-basic-settings-page__tabs>.ant-tabs-content-holder{display:none}.partner-basic-settings-page__content{min-height:0;display:flex;flex:1 1 0;flex-direction:column;overflow:hidden}.portal-page-context{color:var(--ep-text-tertiary);font-size:13px;font-weight:500}.portal-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.service-provider-tenant-switcher{display:inline-flex;align-items:center;width:100%;min-width:320px;max-width:480px;height:40px;padding:0 10px 0 14px;border:1px solid var(--ep-border);border-radius:8px;background:#fff;box-shadow:0 2px 8px #1018280f}.service-provider-tenant-switcher__label{flex:0 0 auto;margin-right:12px;font-size:14px;font-weight:600;white-space:nowrap}.service-provider-tenant-switcher__select{flex:1 1 auto;min-width:0}.service-provider-tenant-switcher__select .ant-select-selector{border:0!important;box-shadow:none!important;padding-inline:0 4px!important}.portal-account-trigger{display:flex;align-items:center;height:40px;padding:0 8px 0 4px;border:0!important;background:transparent!important;border-radius:10px;box-shadow:none}.portal-account-trigger:hover{background:var(--ep-bg-subtle)!important}.tenant-message-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:12px;color:#344054;line-height:1}.tenant-message-trigger:hover{color:var(--ep-text);background:var(--ep-bg-subtle)!important}.tenant-message-trigger__icon{font-size:23px}.tenant-message-trigger__badge{position:absolute;top:3px;right:2px;min-width:20px;height:20px;padding:0 5px;border:2px solid #ffffff;border-radius:999px;color:#fff;background:#f04438;font-size:12px;font-weight:700;line-height:16px;text-align:center;box-shadow:0 2px 6px #f044383d}.tenant-message-loading{min-height:180px;display:flex;align-items:center;justify-content:center}.tenant-message-list .ant-list-item{padding:0;border-block-end:0}.tenant-message-item{position:relative;margin-bottom:10px;padding:14px 14px 14px 18px!important;border:1px solid #eaecf0;border-radius:10px;background:#fff;cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.tenant-message-item:before{position:absolute;top:12px;bottom:12px;left:8px;width:3px;border-radius:999px;background:#d0d5dd;content:""}.tenant-message-item--unread{border-color:#b9d6ff;background:#f4f8ff}.tenant-message-item--unread:before{background:#1677ff}.tenant-message-item--read{color:var(--ep-text-secondary)}.tenant-message-item:hover .tenant-message-item__summary{color:var(--ep-text)}.tenant-message-item:hover{border-color:#98c3ff;box-shadow:0 4px 12px #1018280f}.tenant-message-item__content,.tenant-message-item__header{width:100%}.tenant-message-item__title{min-width:0;color:var(--ep-text);font-size:15px}.tenant-message-item--read .tenant-message-item__title{color:#475467;font-weight:500}.tenant-message-item__status{flex:0 0 auto;margin-inline-end:0;border-radius:999px;font-weight:600}.tenant-message-item__status--unread{border-color:#91caff;color:#0958d9;background:#e6f4ff}.tenant-message-item__status--read{border-color:#eaecf0;color:#667085;background:#f2f4f7}.tenant-message-item__category{flex:0 0 auto;margin-inline-end:0}.tenant-message-item__summary{display:block;color:var(--ep-text-secondary)}.tenant-message-item__meta{font-size:12px}.portal-account-summary{min-width:0;display:flex;flex-direction:column;align-items:flex-end;gap:0}.portal-user-name,.portal-user-phone{display:block;line-height:1.2;white-space:nowrap}.portal-user-name{font-size:14px;color:var(--ep-text);font-weight:600}.portal-user-phone{display:none}.portal-content{min-height:0;padding:18px 24px 24px;display:flex;flex-direction:column;overflow:auto}.portal-content-inner{min-height:100%;min-width:0;display:flex;flex:1;flex-direction:column;width:100%}.portal-page-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.portal-page-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;flex-shrink:0;min-height:40px}.portal-account-trigger .ant-avatar{background:#d0d5dd;color:#667085}.workspace-shell,.workspace-pane{min-height:0;display:flex;flex:1;flex-direction:column}.portal-account-menu__identity{min-width:180px;padding:2px 0}.portal-account-menu__name{color:var(--ep-text);font-weight:600}.portal-account-menu__meta{color:var(--ep-text-secondary);font-size:12px}.workspace-empty{flex:1;display:flex;align-items:center;justify-content:center;border:1px dashed var(--ep-border-strong);border-radius:var(--ep-radius-lg);background:#ffffffb8}.scope-selector-trigger{display:flex;align-items:center;gap:12px}.scope-selector-summary{margin-top:12px}.page-stack{width:100%;display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.page-stack>.ant-space-item{width:100%}.page-stack>.ant-space-item:last-child{flex:1;min-height:0;display:flex;flex-direction:column}.page-stack>.ant-space-item:last-child>*{flex:1;min-height:0}.page-list-layout{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0;min-width:0}.page-list-layout__table-card{flex:1;min-height:0;display:flex;flex-direction:column}.page-list-layout .page-split{flex:1;min-height:0;align-items:stretch}.page-list-layout .page-side-card,.page-list-layout .page-main-card{min-height:0;display:flex;flex-direction:column}.page-list-layout .page-side-card>.ant-card-body,.page-list-layout .page-main-card>.ant-card-body{flex:1;min-height:0;display:flex;flex-direction:column}.page-list-layout__table-card>.ant-card-body{flex:1;min-height:0;display:flex;flex-direction:column}.support-assignment-detail-page{height:auto;min-height:100%}.support-assignment-detail-page .page-table-card{flex:none}.support-assignment-detail-page__table-card>.ant-card-body{overflow-x:auto}.record-action-drawer .ant-drawer-header{padding:18px 24px;border-bottom:1px solid var(--ep-border)}.record-action-drawer .ant-drawer-body{padding:0;background:#f6f8fb}.record-action-drawer__body{display:flex;flex-direction:column;gap:16px;padding:20px 24px 24px}.record-action-drawer__sections{display:flex;flex-direction:column;gap:16px}.record-action-drawer__section{display:flex;flex-direction:column;gap:16px;padding:20px;border:1px solid var(--ep-border);border-radius:16px;background:#fff}.record-action-drawer__section-title{color:var(--ep-text);font-size:15px;font-weight:700;line-height:1.4}.record-action-drawer__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.record-action-drawer__field{min-width:0}.record-action-drawer__field--full{grid-column:1 / -1}.record-action-drawer__section .ant-form-item{margin-bottom:16px}.record-action-drawer__section .ant-form-item:last-child{margin-bottom:0}.department-form__type-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.department-form__type-select,.department-form__task-unit-switch{margin-bottom:16px}.department-form__task-unit-switch{min-width:116px}.department-form__task-unit-switch .ant-form-item-control-input{min-height:40px}.course-chapter-list{display:flex;flex-direction:column;gap:10px}.course-chapter-list__item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:72px;padding:12px;border:1px solid var(--ep-border);border-radius:8px;background:#fff}.course-chapter-list__item--dragging{border-color:var(--ep-primary);box-shadow:0 8px 24px #1f6feb1f;opacity:.72}.course-chapter-list__drag{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--ep-text-secondary);cursor:grab}.course-chapter-list__main{min-width:0}.course-chapter-list__content{margin:6px 0 0!important}.course-chapter-current-file{display:flex;align-items:center;gap:4px;margin:-4px 0 16px}.exam-question-list{display:flex;flex-direction:column;gap:10px}.exam-question-list__item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:84px;padding:12px;border:1px solid var(--ep-border);border-radius:8px;background:#fff}.exam-question-list__item--dragging{border-color:var(--ep-primary);box-shadow:0 8px 24px #1f6feb1f;opacity:.72}.exam-question-list__drag{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--ep-text-secondary);cursor:grab}.exam-question-list__main{min-width:0}.exam-question-list__options{display:flex;flex-direction:column;gap:2px;margin:6px 0}.record-action-drawer--wide{max-width:100%}.role-page__permission-tree{max-height:520px;overflow:auto;padding:8px 4px;border:1px solid var(--ep-border);border-radius:8px;background:var(--ep-surface)}.role-page__permission-tree .ant-tree-treenode{padding:3px 0}.role-page__permission-tabs{padding:0 12px 12px;border:1px solid var(--ep-border);border-radius:8px;background:var(--ep-surface)}.role-page__permission-tabs .ant-tabs-nav{margin-bottom:8px}.role-page__permission-tabs .role-page__permission-tree{max-height:460px;padding:0 4px 8px;border:0;border-radius:0}.role-page__permission-tab-label{display:inline-flex;align-items:center;gap:8px}.role-page__permission-tab-label .ant-typography{font-size:12px}.role-page__permission-node,.permission-catalog-page__node{display:inline-flex;align-items:center;gap:8px;min-width:0}.role-page__permission-node--group,.permission-catalog-page__node--group{font-weight:600}.role-page__permission-node--action,.permission-catalog-page__node--action{font-size:13px}.role-page__permission-node--action .ant-typography,.permission-catalog-page__node--action .ant-typography{font-size:12px}.permission-catalog-page__card{min-height:420px}.permission-catalog-page__tree{min-height:320px;padding:8px 4px}.permission-catalog-page__tree .ant-tree-treenode{padding:4px 0}.user-page__layout-main{flex:1;min-width:0}.user-page__org-tree,.department-page__tree{flex:1;min-height:0;overflow:auto;padding-right:4px}.onboarding-page__drawer .ant-drawer-header{padding:18px 24px;border-bottom:1px solid var(--ep-border)}.onboarding-page__drawer .ant-drawer-body{padding:0;background:#f6f8fb}.onboarding-page__drawer-body{display:flex;flex-direction:column;gap:16px;padding:20px 24px 24px}.onboarding-page__drawer-sections{display:flex;flex-direction:column;gap:16px}.onboarding-page__drawer-section{display:flex;flex-direction:column;gap:16px;padding:20px;border:1px solid var(--ep-border);border-radius:16px;background:#fff}.onboarding-page__drawer-section-title{color:var(--ep-text);font-size:15px;font-weight:700;line-height:1.4}.onboarding-page__drawer-section-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.onboarding-page__drawer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.onboarding-page__drawer-field{min-width:0}.onboarding-page__drawer-field--full{grid-column:1 / -1}.onboarding-page__drawer-section .ant-form-item{margin-bottom:16px}.onboarding-page__drawer-section .ant-form-item:last-child{margin-bottom:0}.onboarding-page__preview-list{border-radius:12px;overflow:hidden}.onboarding-page__step-tags{display:flex;flex-wrap:wrap;gap:8px}.onboarding-page__qr-modal .ant-modal-body{padding-top:8px}.onboarding-page__qr-content{width:100%;align-items:center;padding:6px 0 10px}.onboarding-page__qr-summary{max-width:320px;text-align:center}.onboarding-page__summary-card{position:relative;border:1px solid rgba(22,104,220,.2)!important;border-radius:var(--ep-radius-md)!important;background:linear-gradient(90deg,#1668dc1a,#ffffffeb 62%)!important;box-shadow:0 12px 28px #1668dc1a;overflow:hidden}.onboarding-page__summary-card:before{content:"";position:absolute;top:14px;bottom:14px;left:0;width:4px;border-radius:0 999px 999px 0;background:#1668dc}.onboarding-page__summary-card>.ant-card-body{padding:16px 24px!important}.onboarding-page__summary-content{display:flex;align-items:center;min-height:34px}.onboarding-page__summary-text{color:var(--ep-text);font-size:18px;font-weight:700;line-height:1.45}.onboarding-page__summary-count{margin-right:2px;color:#1668dc;font-size:26px;font-weight:800;line-height:1}.onboarding-page__summary-count--pending{color:#d97706}.onboarding-page__qr-title.ant-typography{margin:0 0 6px}.onboarding-page__qr-placeholder{width:240px;height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;border:1px dashed #c9d7ea;border-radius:12px;background:#f7fbff}.onboarding-page__miniapp-code{width:240px;height:240px;display:block;border:1px solid #edf1f7;border-radius:12px;background:#fff;object-fit:contain}.onboarding-detail-drawer-shell .ant-drawer-body{padding:0;background:#f6f8fb}.onboarding-detail-drawer{display:flex;flex-direction:column;gap:16px;padding:20px 24px 24px}.onboarding-detail-drawer__loading{display:flex;align-items:center;justify-content:center;min-height:280px}.onboarding-detail-drawer__summary{display:flex;justify-content:space-between;gap:20px;padding:20px;border:1px solid var(--ep-border);border-radius:16px;background:#fff;box-shadow:var(--ep-shadow-surface)}.onboarding-detail-drawer__summary-main{min-width:0}.onboarding-detail-drawer__title.ant-typography{margin:0 0 10px}.onboarding-detail-drawer__summary-facts{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:12px;min-width:min(560px,100%)}.onboarding-detail-drawer__fact{min-width:0;padding:12px 14px;border:1px solid var(--ep-border);border-radius:12px;background:var(--ep-bg-subtle)}.onboarding-detail-drawer__fact-label,.onboarding-detail-drawer__field-label,.onboarding-detail-drawer__step-meta,.onboarding-detail-drawer__section-foot{color:var(--ep-text-secondary);font-size:12px;line-height:1.5}.onboarding-detail-drawer__fact-value,.onboarding-detail-drawer__field-value{display:block;margin-top:6px;color:var(--ep-text);font-size:14px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.onboarding-detail-drawer__section{min-width:0;border-radius:16px}.onboarding-detail-drawer__section .ant-card-head{min-height:48px}.onboarding-detail-drawer__section .ant-card-body{padding:18px 20px}.onboarding-detail-drawer__collapse{background:transparent}.onboarding-detail-drawer__collapse .ant-collapse-item{margin-bottom:12px;border:1px solid var(--ep-border);border-radius:12px!important;background:var(--ep-bg-subtle);overflow:hidden}.onboarding-detail-drawer__collapse .ant-collapse-header{align-items:center!important;padding:12px!important}.onboarding-detail-drawer__collapse .ant-collapse-content-box{padding:4px 16px 16px!important}.onboarding-detail-drawer__collapse-item--current{border-color:#1668dc66;background:#eef5ff!important}.onboarding-detail-drawer__step-label{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;width:100%}.onboarding-detail-drawer__step-index{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:#fff;color:var(--ep-primary);font-weight:700}.onboarding-detail-drawer__step-main{min-width:0}.onboarding-detail-drawer__step-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--ep-text);font-weight:700}.onboarding-detail-drawer__step-title{flex:1;min-width:0;overflow-wrap:anywhere}.onboarding-detail-drawer__step-title-actions{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;flex-shrink:0;gap:8px}.onboarding-detail-drawer__field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.onboarding-detail-drawer__field{min-width:0;padding:12px 14px;border:1px solid var(--ep-border);border-radius:12px;background:var(--ep-bg-subtle)}.onboarding-detail-drawer__section-foot{margin-top:14px}.onboarding-detail-drawer__service-summary{margin-bottom:14px}.employee-page__workspace{gap:16px}.employee-page__table-card{min-width:0}.employee-page__action-strip{justify-content:flex-end}.employee-page__frequent-action{min-width:96px;font-weight:600;box-shadow:0 4px 12px #1677ff2e}.employee-page__frequent-action.ant-btn-primary:not(:disabled):hover{box-shadow:0 6px 14px #1677ff3d}.employee-page__onboarding-summary-card{border:1px solid rgba(22,104,220,.12)!important;border-radius:var(--ep-radius-md)!important;background:#f8fbff!important;box-shadow:0 8px 18px #1668dc0d}.employee-page__onboarding-summary-card>.ant-card-body{padding:12px 16px!important}.employee-page__onboarding-summary{display:flex;align-items:center;justify-content:space-between;gap:16px}.employee-page__onboarding-summary-text{min-width:0;color:var(--ep-text);font-size:15px;font-weight:600;line-height:1.5}.employee-page__onboarding-summary-count{margin-right:2px;color:#1668dc;font-size:20px;font-weight:700;line-height:1}.employee-page__onboarding-summary-count--pending{color:#d97706}.employee-import-modal--preview .ant-modal-content{height:min(860px,calc(100vh - 48px));display:flex;flex-direction:column}.employee-import-modal--preview .ant-modal-header,.employee-import-modal--preview .ant-modal-footer{flex-shrink:0}.employee-import-modal--preview .ant-modal-body{flex:1;min-height:0;overflow:hidden}.employee-import-modal__body{display:flex;flex-direction:column;gap:16px;min-height:0}.employee-import-modal--preview .employee-import-modal__body{height:100%}.employee-import-modal__toolbar{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:12px;width:100%}.employee-import-modal__file{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:min(520px,56%);padding:4px 6px 4px 10px;border:1px solid var(--ep-border);border-radius:6px;background:var(--ep-surface)}.employee-import-modal__file-icon{flex-shrink:0;color:var(--ep-text-muted)}.employee-import-modal__file-name{min-width:0}.employee-import-modal__file-remove{flex-shrink:0}.employee-import-modal__preview{display:flex;flex:1;min-height:0;flex-direction:column;gap:12px}.employee-import-modal__summary{flex-shrink:0}.employee-import-modal__filter-tag{cursor:pointer;-webkit-user-select:none;user-select:none}.employee-import-modal__filter-tag--active{box-shadow:0 0 0 2px #1677ff2e;font-weight:600}.employee-import-modal__table,.employee-import-modal__table .ant-spin-nested-loading,.employee-import-modal__table .ant-spin-container,.employee-import-modal__table .ant-table,.employee-import-modal__table .ant-table-container{display:flex;flex:1;min-height:0;flex-direction:column}.employee-import-modal__table .ant-table-body{height:var(--employee-import-table-body-height);overscroll-behavior:contain}.employee-import-modal__table .ant-pagination{flex-shrink:0;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--ep-border);background:var(--ep-surface)}.employee-service-info-update-modal--preview .ant-modal-content{height:min(860px,calc(100vh - 48px));display:flex;flex-direction:column}.employee-service-info-update-modal--preview .ant-modal-header,.employee-service-info-update-modal--preview .ant-modal-footer{flex-shrink:0}.employee-service-info-update-modal--preview .ant-modal-body{flex:1;min-height:0;overflow:hidden}.employee-service-info-update-modal__body{display:flex;flex-direction:column;gap:16px;min-height:0}.employee-service-info-update-modal--preview .employee-service-info-update-modal__body{height:100%}.employee-service-info-update-modal__toolbar{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:12px;width:100%}.employee-service-info-update-modal__file{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:min(520px,56%);padding:4px 6px 4px 10px;border:1px solid var(--ep-border);border-radius:6px;background:var(--ep-surface)}.employee-service-info-update-modal__file-icon{flex-shrink:0;color:var(--ep-text-muted)}.employee-service-info-update-modal__file-name{min-width:0}.employee-service-info-update-modal__file-remove{flex-shrink:0}.employee-service-info-update-modal__preview{display:flex;flex:1;min-height:0;flex-direction:column;gap:12px}.employee-service-info-update-modal__summary{flex-shrink:0}.employee-service-info-update-modal__filter-tag{cursor:pointer;-webkit-user-select:none;user-select:none}.employee-service-info-update-modal__filter-tag--active{box-shadow:0 0 0 2px #1677ff2e;font-weight:600}.attendance-task-acceptance-batch__summary{flex-shrink:0}.attendance-task-acceptance-batch__summary-label{margin-left:8px}.attendance-task-acceptance-batch__filter-tag{cursor:pointer;-webkit-user-select:none;user-select:none}.attendance-task-acceptance-batch__filter-tag--active{box-shadow:0 0 0 2px #1677ff2e;font-weight:600}.employee-service-info-update-modal__table,.employee-service-info-update-modal__table .ant-spin-nested-loading,.employee-service-info-update-modal__table .ant-spin-container,.employee-service-info-update-modal__table .ant-table,.employee-service-info-update-modal__table .ant-table-container{display:flex;flex:1;min-height:0;flex-direction:column}.employee-service-info-update-modal__table .ant-table-body{height:var(--employee-service-info-update-table-body-height);overscroll-behavior:contain}.employee-service-info-update-modal__table .ant-pagination{flex-shrink:0;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--ep-border);background:var(--ep-surface)}.employee-page--detail{flex:1;min-height:0}.employee-page__detail-page{flex:1;min-height:0;overflow:hidden}.employee-page__detail-page>.ant-card-body{flex:1;min-height:0;display:flex;flex-direction:column;padding:0}.employee-page__detail-page .ant-spin-nested-loading,.employee-page__detail-page .ant-spin-container{display:flex;flex:1;min-height:0;flex-direction:column}.employee-page__detail-page-scroll{flex:1;display:flex;flex-direction:column;gap:20px;min-height:0;overflow:auto;padding:20px 24px 24px}.employee-page__detail-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid var(--ep-border)}.employee-page__detail-page-main{display:flex;flex-direction:column;gap:12px;min-width:0;flex:1}.employee-page__detail-card{width:560px;flex:0 0 560px}.employee-page__detail-card>.ant-card-body{padding:0}.employee-page__detail-scroll{flex:1;min-height:0;overflow:auto;padding:16px 20px 20px}.employee-page__detail-empty{flex:1;min-height:320px;display:flex;align-items:center;justify-content:center}.employee-page__detail-summary{display:flex;flex-direction:column;gap:12px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--ep-border)}.employee-page__detail-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.employee-page__detail-name{margin:0!important;font-size:32px!important}.employee-page__detail-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--ep-text-secondary);font-size:13px}.employee-page__detail-facts{display:grid;grid-template-columns:repeat(4,minmax(132px,1fr));gap:12px;min-width:min(100%,560px)}.employee-page__detail-fact{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;border:1px solid var(--ep-border);border-radius:12px;background:var(--ep-surface-muted)}.employee-page__detail-fact-label{color:var(--ep-text-secondary);font-size:12px}.employee-page__detail-fact-value{color:var(--ep-text);font-size:14px;font-weight:600;line-height:1.5;word-break:break-word}.employee-page__detail-tabs>.ant-tabs-nav{margin-bottom:16px}.employee-page__detail-tabs .ant-tabs-tab{padding-inline:8px}.employee-page__detail-page .employee-page__detail-tabs .ant-tabs-content-holder{min-width:0}.employee-page__detail-card .ant-descriptions-view table{table-layout:fixed}.employee-page__detail-page .ant-descriptions-item-label,.employee-page__detail-card .ant-descriptions-item-label{width:108px;color:var(--ep-text-secondary)}.employee-page__detail-page .ant-table-wrapper,.employee-page__detail-card .ant-table-wrapper{overflow-x:auto}.employee-page__inline-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.employee-page__material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.employee-page__material-item{display:flex;flex-direction:column;gap:10px}.employee-page__material-label{color:var(--ep-text-secondary);font-size:13px;line-height:1.5}.employee-page__material-frame{display:flex;align-items:center;justify-content:center;min-height:240px;padding:16px;border:1px solid var(--ep-border);border-radius:16px;background:var(--ep-surface-muted);overflow:hidden}.employee-page__material-frame .ant-image,.employee-page__material-frame .ant-image-img{max-width:100%}.employee-page__row{transition:background-color .2s ease}.employee-page__row:hover>td{background:#f8fbff!important}.employee-page__row--active>td{background:#edf4ff!important}.department-display{display:flex;min-width:0;flex-direction:column;gap:2px;line-height:1.35}.department-display__name,.department-display__path{display:block;max-width:100%}.department-display__path{font-size:12px}.employee-form-drawer .ant-drawer-header{padding:18px 24px;border-bottom:1px solid var(--ep-border)}.employee-form-drawer .ant-drawer-body{padding:0;background:#f6f8fb}.employee-form-drawer__body{display:flex;flex-direction:column;gap:16px;padding:20px 24px 24px}.employee-form-drawer__sections{display:flex;flex-direction:column;gap:16px}.employee-form-drawer__section{padding:20px;border:1px solid var(--ep-border);border-radius:16px;background:#fff}.employee-form-drawer__section-header{display:flex;flex-direction:column;margin-bottom:12px}.employee-form-drawer__section-title{color:var(--ep-text);font-size:15px;font-weight:700;line-height:1.4}.employee-form-drawer__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.employee-form-drawer__field{min-width:0}.employee-form-drawer__field--full{grid-column:1 / -1}.employee-form-drawer__section .ant-form-item{margin-bottom:16px}.employee-form-drawer__section .ant-form-item:last-child{margin-bottom:0}.peak-labor-demand-drawer .ant-drawer-body{padding:0;background:#f6f8fb}.peak-labor-demand-form{display:flex;flex-direction:column;gap:14px;padding:18px 22px 24px}.peak-labor-demand-form__section{padding:16px;border:1px solid var(--ep-border);border-radius:8px;background:#fff}.peak-labor-demand-form__section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.peak-labor-demand-form__section-title{color:var(--ep-text);font-size:15px;font-weight:700;line-height:1.4}.peak-labor-demand-form__section-extra{font-size:12px;white-space:nowrap}.peak-labor-demand-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.peak-labor-demand-form__field{min-width:0}.peak-labor-demand-form__field--full{grid-column:1 / -1}.peak-labor-demand-form__requirement-grid{display:grid;grid-template-columns:140px repeat(2,minmax(0,1fr));gap:0 14px}.peak-labor-demand-form__section .ant-form-item{margin-bottom:14px}.peak-labor-demand-form__section .ant-form-item:last-child{margin-bottom:0}.peak-labor-demand-form__shift-list{display:flex;flex-direction:column;gap:8px}.peak-labor-demand-form__shift-card{display:grid;grid-template-columns:minmax(0,1fr) 128px 48px;gap:10px;align-items:center;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb}.peak-labor-demand-form__shift-main{display:flex;min-width:0;flex-direction:column;gap:2px}.peak-labor-demand-form__empty-hint{display:flex;align-items:center;justify-content:center;min-height:52px;border:1px dashed #d9d9d9;border-radius:8px;color:#8c8c8c;background:#fafafa}.employee-health-modal .ant-modal-body{padding-top:20px}.employee-health-modal__layout{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:20px;align-items:start}.employee-health-modal__preview,.employee-health-modal__form{display:flex;flex-direction:column;gap:16px;min-width:0}.employee-health-modal__section-title{color:var(--ep-text);font-size:15px;font-weight:700;line-height:1.4}.employee-health-modal__status{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.employee-health-modal__preview-frame{display:flex;align-items:center;justify-content:center;min-height:320px;padding:16px;border:1px solid var(--ep-border);border-radius:16px;background:#fff;overflow:hidden}.employee-health-modal__preview-frame .ant-image,.employee-health-modal__preview-frame .ant-image-img{max-width:100%}.employee-health-modal__empty{color:var(--ep-text-secondary);font-size:13px}@media(max-width:1440px){.employee-page__detail-card{width:520px;flex-basis:520px}.employee-page__detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));min-width:min(100%,420px)}}@media(max-width:1320px){.employee-page__detail-facts{grid-template-columns:1fr;min-width:100%}.employee-form-drawer__grid,.peak-labor-demand-form__grid,.peak-labor-demand-form__requirement-grid,.peak-labor-demand-form__shift-card,.employee-health-modal__layout,.employee-page__material-grid,.record-action-drawer__grid{grid-template-columns:1fr}.department-form__type-layout{grid-template-columns:1fr;gap:0}.onboarding-page__drawer-grid{grid-template-columns:1fr}}.page-shell{display:flex;flex-direction:column;gap:16px;min-width:0}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-header__titles{display:flex;flex-direction:column;gap:4px}.page-header__title{margin:0;color:var(--ep-text);font-size:24px;font-weight:700;line-height:1.2}.page-header__description{color:var(--ep-text-secondary);font-size:14px}.form-grid{display:grid;gap:0 24px;width:100%}.form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:768px){.form-grid--two{grid-template-columns:1fr}}.page-section,.page-surface,.page-toolbar-card,.page-table-card,.page-side-card,.page-main-card{border:1px solid var(--ep-border)!important;border-radius:var(--ep-radius-md)!important;box-shadow:var(--ep-shadow-surface);overflow:hidden}.page-section,.page-surface{background:var(--ep-surface)}.page-section{padding:20px}.page-toolbar-card>.ant-card-head,.page-table-card>.ant-card-head,.page-side-card>.ant-card-head,.page-main-card>.ant-card-head{min-height:56px;padding:0 20px;border-bottom:1px solid var(--ep-border)}.page-toolbar-card>.ant-card-body,.page-table-card>.ant-card-body,.page-side-card>.ant-card-body,.page-main-card>.ant-card-body{padding:16px 20px}.page-toolbar-card>.ant-card-body{padding:12px 16px!important}.page-filter{display:flex;flex-direction:column;gap:10px;padding:12px 16px;border:1px solid var(--ep-border);border-radius:var(--ep-radius-md);background:var(--ep-surface)}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.page-toolbar-main{display:flex;align-items:center;gap:10px;row-gap:8px;flex-wrap:wrap;flex:1;min-width:0}.page-toolbar-main>:where(.ant-input,.ant-input-affix-wrapper,.ant-input-search,.ant-select,.ant-picker){max-width:min(100%,220px)}.page-toolbar-main>:where(.ant-picker-range){max-width:min(100%,260px)}.page-toolbar-main>:where(.department-filter-select){max-width:min(100%,200px)}.page-toolbar-main>:where(.partner-filter-select){max-width:min(100%,280px)}.page-toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-toolbar-meta{display:flex;align-items:center;min-height:32px}.approval-page__tabs,.approval-page__tabs .ant-tabs-content-holder,.approval-page__tabs .ant-tabs-content,.esign-page__tabs,.esign-page__tabs .ant-tabs-content-holder,.esign-page__tabs .ant-tabs-content{flex:1;min-height:0;display:flex;flex-direction:column}.approval-page__tabs .ant-tabs-tabpane:not(.ant-tabs-tabpane-hidden),.esign-page__tabs .ant-tabs-tabpane:not(.ant-tabs-tabpane-hidden){flex:1;min-height:0;display:flex;flex-direction:column}.approval-page__tabs .ant-tabs-nav,.esign-page__tabs .ant-tabs-nav{margin-bottom:12px}.approval-page__detail-drawer .ant-table-wrapper{overflow:auto}.esign-page__config-section{flex:1;min-height:0;overflow:auto}.esign-page__position-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 12px}.esign-page__config-actions{display:flex;justify-content:flex-end;margin-top:16px}.esign-page__json-block{margin:0;white-space:pre-wrap;word-break:break-word}.tenant-home{gap:20px}.tenant-home__hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:24px 28px;background:linear-gradient(135deg,rgba(22,104,220,.08),transparent 52%),var(--ep-surface)}.tenant-home__hero-main{max-width:720px}.tenant-home__eyebrow{display:inline-flex;margin-bottom:10px;color:var(--ep-primary);font-size:13px;font-weight:600}.tenant-home__hero-title{margin:0 0 8px!important;color:var(--ep-text)!important;font-size:28px!important;line-height:1.25!important}.tenant-home__hero-description{margin:0!important;color:var(--ep-text-secondary);font-size:14px;line-height:1.7}.tenant-home__hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px;min-width:220px}.tenant-home__hero-date{color:var(--ep-text);font-size:18px;font-weight:600}.tenant-home__hero-subtext{text-align:right}.tenant-home__metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tenant-home__metric{position:relative;width:100%;display:flex;align-items:flex-start;gap:14px;padding:18px 18px 20px;border:1px solid var(--ep-border);border-radius:var(--ep-radius-md);background:var(--ep-surface);box-shadow:var(--ep-shadow-surface);text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.tenant-home__metric:hover{transform:translateY(-1px);border-color:var(--ep-border-strong)}.tenant-home__metric:focus-visible,.tenant-home__list-item:focus-visible,.tenant-home__action:focus-visible,.tenant-home__reminder:focus-visible{outline:2px solid rgba(22,104,220,.26);outline-offset:2px}.tenant-home__metric--loading{cursor:default}.tenant-home__metric-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;font-size:18px;flex-shrink:0}.tenant-home__metric--blue .tenant-home__metric-icon{background:#1668dc1a;color:#1668dc}.tenant-home__metric--orange .tenant-home__metric-icon{background:#d977061f;color:#c67a00}.tenant-home__metric--green .tenant-home__metric-icon{background:#16a34a1f;color:#15803d}.tenant-home__metric--purple .tenant-home__metric-icon{background:#7c3aed1f;color:#7c3aed}.tenant-home__metric-body{min-width:0;flex:1}.tenant-home__metric-label{color:var(--ep-text-secondary);font-size:13px;font-weight:500}.tenant-home__metric-value{margin-top:8px;color:var(--ep-text);font-size:32px;font-weight:700;line-height:1}.tenant-home__metric-hint{margin-top:10px;color:var(--ep-text-secondary);font-size:13px;line-height:1.5}.tenant-home__metric-arrow{color:var(--ep-text-tertiary);font-size:14px;margin-top:2px}.tenant-home__layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.9fr);gap:16px}.tenant-home__primary,.tenant-home__secondary{display:flex;flex-direction:column;gap:16px;min-width:0}.tenant-home__panel{padding:20px}.tenant-home__panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.tenant-home__panel-header--compact{margin-bottom:16px}.tenant-home__panel-title{color:var(--ep-text);font-size:18px;font-weight:600;line-height:1.3}.tenant-home__panel-description{margin-top:4px;color:var(--ep-text-secondary);font-size:13px;line-height:1.5}.tenant-home__panel-error{color:var(--ep-text-secondary);font-size:14px;padding:8px 0}.tenant-home__summary-line{padding:18px 0 4px;border-top:1px solid var(--ep-border);color:var(--ep-text);font-size:20px;font-weight:600;line-height:1.4}.tenant-home__list{display:flex;flex-direction:column}.tenant-home__list-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border:0;border-top:1px solid var(--ep-border);background:transparent;text-align:left;cursor:pointer}.tenant-home__list-item:first-child{border-top:0;padding-top:4px}.tenant-home__list-item:last-child{padding-bottom:4px}.tenant-home__list-main{min-width:0;flex:1}.tenant-home__list-title{display:flex;align-items:center;gap:8px;color:var(--ep-text);font-size:15px;font-weight:600;line-height:1.45}.tenant-home__list-inline-note{color:var(--ep-text-tertiary);font-size:12px;font-weight:500}.tenant-home__list-meta{margin-top:5px;color:var(--ep-text-secondary);font-size:13px;line-height:1.5}.tenant-home__actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tenant-home__action{width:100%;display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--ep-border);border-radius:12px;background:var(--ep-surface);text-align:left;cursor:pointer;transition:border-color .18s ease,transform .18s ease}.tenant-home__action:hover{transform:translateY(-1px);border-color:var(--ep-border-strong)}.tenant-home__action-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--ep-bg-subtle);color:var(--ep-text-secondary);font-size:16px;flex-shrink:0}.tenant-home__action-body{min-width:0}.tenant-home__action-title{color:var(--ep-text);font-size:14px;font-weight:600}.tenant-home__action-description{margin-top:4px;color:var(--ep-text-secondary);font-size:12px;line-height:1.5}.tenant-home__reminders{display:flex;flex-direction:column;gap:12px}.tenant-home__reminder{width:100%;padding:14px 16px;border:1px solid var(--ep-border);border-radius:12px;background:var(--ep-surface);text-align:left;cursor:pointer}.tenant-home__reminder--urgent{border-color:#dc26262e;background:#fef2f2e0}.tenant-home__reminder--normal{border-color:#d9770633;background:#fff7ede0}.tenant-home__reminder--stable{background:var(--ep-bg-subtle)}.tenant-home__reminder-title{color:var(--ep-text);font-size:14px;font-weight:600;line-height:1.45}.tenant-home__reminder-description{margin-top:6px;color:var(--ep-text-secondary);font-size:12px;line-height:1.6}.attendance-schedule-sticky{position:sticky;top:-16px;z-index:20;display:flex;flex-direction:column;gap:12px;background:#f6f8fb;margin-top:-16px;padding-top:16px;padding-bottom:4px}.attendance-schedule-layout{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow:hidden}.attendance-schedule-layout__table-card{flex:1;min-height:0;display:flex;flex-direction:column}.attendance-schedule-layout__table-card>.ant-card-body{flex:1;min-height:0;overflow:auto}.attendance-schedule-toolbar{display:flex;flex-direction:column;gap:10px}.attendance-schedule-toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.attendance-schedule-toolbar-group{display:flex;align-items:center;gap:10px;row-gap:8px;flex-wrap:wrap}.attendance-schedule-toolbar-group--primary{flex:1;min-width:0}.attendance-schedule-toolbar-group>:where(.ant-input,.ant-input-affix-wrapper,.ant-input-search,.ant-select,.ant-picker){max-width:min(100%,220px)}.attendance-schedule-toolbar-group>:where(.ant-picker-range){max-width:min(100%,260px)}.attendance-schedule-toolbar-group>:where(.department-filter-select){max-width:min(100%,200px)}.attendance-schedule-toolbar-group>:where(.partner-filter-select){max-width:min(100%,280px)}.attendance-page__scheme-drawer .ant-tabs-nav{margin-bottom:16px}.attendance-page__workhour-detail{display:flex;flex-direction:column;gap:16px}.attendance-page__workhour-detail .ant-card{border-radius:14px}.attendance-task-detail{gap:12px}.attendance-task-detail__summary,.attendance-task-detail__task-card,.attendance-task-detail__section{border:1px solid var(--ep-border);background:#fff}.attendance-task-detail__summary{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px}.attendance-task-detail__summary-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.attendance-task-detail__employee-name{color:var(--ep-text);font-size:17px;font-weight:700;line-height:1.35}.attendance-task-detail__summary-sub{min-width:0}.attendance-task-detail__summary-meta{display:flex;justify-content:flex-end;gap:8px;row-gap:6px;flex-wrap:wrap;max-width:280px}.attendance-task-detail__task-card{display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:12px}.attendance-task-detail__task-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.attendance-task-detail__task-title{min-width:0;display:flex;flex-direction:column;gap:4px}.attendance-task-detail__task-actions{flex:none;justify-content:flex-end}.attendance-task-detail__section-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:12px}.attendance-task-detail__section{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:10px;background:#fbfcfe}.attendance-task-detail__section--compact{gap:8px}.attendance-task-detail__section-title{color:var(--ep-text);font-size:13px;font-weight:700;line-height:1.4}.attendance-task-detail__field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.attendance-task-detail__field-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.attendance-task-detail__field{min-width:0;display:flex;flex-direction:column;gap:3px}.attendance-task-detail__field-label,.attendance-task-detail__metric-label{font-size:12px}.attendance-task-detail__field-value{min-width:0;color:var(--ep-text);font-size:13px;line-height:1.45;overflow-wrap:anywhere}.attendance-task-detail__field-desc{font-size:12px;line-height:1.45;overflow-wrap:anywhere}.attendance-task-detail__metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px}.attendance-task-detail__metric{min-width:0;display:flex;flex-direction:column;gap:3px;padding:10px;border:1px solid #edf1f6;border-radius:10px;background:#fff}.attendance-task-detail__metric--primary{border-color:#bfdbfe;background:#eff6ff}.attendance-task-detail__metric-value{color:var(--ep-text);font-size:16px;font-weight:700;line-height:1.35}.attendance-task-detail__metric-extra{margin-top:2px}.attendance-task-detail__adjustment{font-size:12px}.attendance-task-detail__checkpoint-list,.attendance-task-detail__history-list{display:flex;flex-direction:column;gap:8px}.attendance-task-detail__checkpoint{display:grid;grid-template-columns:12px minmax(0,1fr);gap:8px;align-items:flex-start}.attendance-task-detail__checkpoint-dot{width:8px;height:8px;margin-top:7px;border-radius:999px;background:var(--ep-primary);box-shadow:0 0 0 3px var(--ep-primary-soft)}.attendance-task-detail__checkpoint-dot--out{background:#f97316;box-shadow:0 0 0 3px #ffedd5}.attendance-task-detail__checkpoint-main{min-width:0;display:flex;flex-direction:column;gap:2px}.attendance-task-detail__history{display:flex;flex-direction:column;gap:6px}.attendance-task-detail__history-item{display:flex;align-items:center;gap:6px;row-gap:4px;flex-wrap:wrap}@media(max-width:900px){.attendance-task-detail__summary,.attendance-task-detail__task-head{align-items:flex-start;flex-direction:column}.attendance-task-detail__summary-meta,.attendance-task-detail__task-actions{justify-content:flex-start;max-width:none}.attendance-task-detail__section-grid,.attendance-task-detail__field-grid,.attendance-task-detail__field-grid--three{grid-template-columns:1fr}}.compact-inline-form{display:flex;align-items:flex-start;gap:10px;row-gap:8px;flex-wrap:wrap;width:100%}.compact-inline-form .ant-form-item{margin-bottom:0}.page-split{display:flex;align-items:flex-start;gap:12px;width:100%}.page-side-card{width:300px;flex:none}.page-main-card{flex:1;min-width:0}.scope-selector-modal{display:flex;flex-direction:column;gap:16px}.scope-selector-toolbar{display:flex;align-items:center;gap:16px}.scope-selector-toolbar .ant-input-affix-wrapper{flex:1}.scope-selector-tree-panel{border:1px solid #e5e7eb;border-radius:12px;background:#fafafa;padding:12px}.scope-selector-empty{height:420px;display:flex;align-items:center;justify-content:center}.configurable-table{display:flex;flex-direction:column;gap:12px}.configurable-table--fill{height:100%;min-height:0;gap:0}.configurable-table-toolbar{display:flex;justify-content:flex-end}.configurable-table--fill .configurable-table-toolbar{flex-shrink:0}.configurable-table-settings-popover .ant-popover-inner{padding:12px}.configurable-table-settings{min-width:260px;max-width:min(320px,calc(100vw - 48px))}.configurable-table-settings__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-weight:600}.configurable-table-settings__list{display:flex;flex-direction:column;gap:4px;max-height:min(520px,calc(100vh - 180px));overflow-y:auto;padding-right:2px}.configurable-table-settings__item{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:6px;padding:4px 2px;border-radius:6px;transition:background .2s ease,opacity .2s ease}.configurable-table-settings__item:hover{background:#f5f7fb}.configurable-table-settings__item--dragging{opacity:.55;background:#f5f7fb}.configurable-table-settings__drag{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--ep-text-tertiary);cursor:grab;border-radius:4px}.configurable-table-settings__drag:active{cursor:grabbing}.configurable-table-settings__drag:hover{color:var(--ep-primary);background:#e8f2ff}.configurable-table-settings__checkbox{min-width:0}.configurable-table-settings__checkbox .ant-checkbox+span{min-width:0;overflow:hidden}.configurable-table-settings__label{display:inline-block;max-width:210px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;white-space:nowrap}.configurable-table .ant-table-wrapper{min-width:0}.configurable-table--fill{display:flex;flex:1;min-height:0;flex-direction:column;gap:0}.configurable-table--fill .ant-table-wrapper,.configurable-table--fill .ant-spin-nested-loading,.configurable-table--fill .ant-spin-container{display:flex;flex:1;min-height:0;flex-direction:column}.configurable-table--fill .ant-pagination{margin:12px 0 0;padding-top:12px;border-top:1px solid var(--ep-border);background:var(--ep-surface);flex-shrink:0}.configurable-table .ant-table-cell{position:relative}.configurable-table-resizer{position:absolute;top:0;right:-4px;width:8px;height:100%;cursor:col-resize;z-index:2}.configurable-table-resizer:after{content:"";position:absolute;top:50%;right:3px;transform:translateY(-50%);width:2px;height:18px;border-radius:999px;background:transparent;transition:background .2s ease}.configurable-table .ant-table-thead>tr>th:hover .configurable-table-resizer:after{background:#bfc8d6}.department-location-modal{top:32px;max-width:calc(100vw - 48px)}.department-location-modal .ant-modal-content{display:flex;flex-direction:column;max-height:calc(100vh - 64px)}.department-location-modal .ant-modal-body{flex:1;min-height:0;padding-top:8px;overflow:hidden}.department-location-picker{display:grid;grid-template-columns:300px minmax(0,1fr);height:clamp(320px,calc(100vh - 220px),460px);border:1px solid #edf0f5}.department-location-picker__sidebar{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0;padding:18px;border-right:1px solid #edf0f5;background:#fff}.department-location-picker__results{flex:1;min-height:0;overflow:auto}.department-location-picker__result{cursor:pointer;border-radius:8px;padding-inline:12px}.department-location-picker__result:hover{background:#f6f8fb}.department-location-picker__map-wrap{position:relative;min-width:0;min-height:0}.department-location-picker__map{width:100%;height:100%}.department-location-picker__status{position:absolute;left:16px;right:16px;bottom:16px;padding:10px 12px;background:#fffffff0;border:1px solid #edf0f5;border-radius:8px;box-shadow:0 8px 24px #0f25401f}.section-subtitle{margin:0 0 8px;color:#1f2937;font-size:14px;font-weight:700}@media(max-width:960px){.portal-header{height:auto;padding:16px}.portal-header-inner{flex-direction:column;align-items:stretch}.portal-header-center{position:static;min-width:0;max-width:none;transform:none}.service-provider-tenant-switcher{width:100%;min-width:0;max-width:none}.portal-header-actions{width:100%;justify-content:flex-end}.portal-content{padding:16px}.tenant-home__hero{align-items:flex-start;flex-direction:column;padding:20px}.tenant-home__hero-title{font-size:24px!important}.tenant-home__hero-side{align-items:flex-start;min-width:0}.tenant-home__hero-subtext{text-align:left}.tenant-home__metrics,.tenant-home__actions-grid,.tenant-home__layout,.department-location-picker{grid-template-columns:1fr}.department-location-picker__sidebar{border-right:0;border-bottom:1px solid #edf0f5}.department-location-picker__results{height:220px}}.public-onboarding-page{min-height:100vh;padding:32px 16px;background:radial-gradient(circle at top,rgba(15,92,255,.14),transparent 36%),linear-gradient(180deg,#f7fbff,#eef3fb)}.public-onboarding-shell{max-width:560px;margin:0 auto}.public-onboarding-card{border-radius:24px;box-shadow:0 24px 64px #0f25401a}.public-onboarding-summary{border-radius:16px;background:#fafcff}.assistant-float-button{right:28px;bottom:28px}.assistant-chatbot-panel{position:fixed;right:28px;bottom:28px;z-index:1000;width:390px;max-width:calc(100vw - 32px);border-radius:12px;box-shadow:0 20px 56px #14233c33}.assistant-chatbot-panel .ant-card-body{padding:12px}.assistant-message-list{height:380px;overflow-y:auto;padding:4px 2px 10px}.assistant-message{display:flex;margin-bottom:10px}.assistant-message--user{justify-content:flex-end}.assistant-message--assistant{justify-content:flex-start}.assistant-message-bubble{max-width:86%;padding:10px 12px;border-radius:10px;background:#f4f6fa;line-height:1.6}.assistant-message--user .assistant-message-bubble{background:#e8f1ff}.assistant-candidate-list{display:grid;gap:8px;margin-top:10px}.assistant-candidate-card{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;width:100%;padding:8px;border:1px solid #e4e8f0;border-radius:8px;background:#fff;text-align:left;cursor:pointer}.assistant-candidate-card:disabled{cursor:not-allowed;opacity:.68}.assistant-candidate-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#eef4ff;color:#1668dc}.assistant-candidate-main,.assistant-candidate-title,.assistant-candidate-meta{min-width:0}.assistant-candidate-main{display:grid;gap:2px}.assistant-candidate-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.assistant-candidate-meta,.assistant-contact-meta{color:#667085;font-size:12px}.assistant-contact-result{display:grid;gap:6px;margin-top:10px;padding:10px;border:1px solid #e4e8f0;border-radius:8px;background:#fff}.assistant-contact-phone{display:flex;align-items:center;justify-content:space-between;gap:8px}.assistant-loading{display:flex;align-items:center;gap:8px;padding:4px 2px 10px}.assistant-scope-alert{margin-bottom:10px}.assistant-input-row{width:100%}.assistant-quick-actions{margin-top:8px}@media(max-width:960px){.login-page{padding:16px}.login-shell{min-height:calc(100vh - 32px);grid-template-columns:1fr;gap:16px}.login-overview{padding:8px;gap:20px}.login-overview__title{font-size:30px!important}.login-overview__features{grid-template-columns:1fr}.login-panel{padding:20px}.public-onboarding-page{padding:20px 12px}.assistant-chatbot-panel{right:16px;bottom:16px;width:calc(100vw - 32px)}.assistant-message-list{height:320px}}.department-filter-option{min-width:0;padding:2px 0}.department-filter-option__main{display:flex;align-items:center;gap:8px;min-width:0}.department-filter-option__name{flex:1;min-width:0}.department-filter-option__type{flex:0 0 auto;padding:1px 6px;border:1px solid #d9e2ef;border-radius:6px;color:#637083;background:#f6f8fb;font-size:12px;line-height:18px}.department-filter-option__path{display:block;margin-top:2px;font-size:12px;line-height:18px}@media(max-width:1200px){.login-shell{grid-template-columns:minmax(0,1fr) 420px}.login-overview__features{grid-template-columns:1fr}}@media(max-width:1200px){.page-split{flex-direction:column}.page-side-card,.page-main-card{width:100%}.onboarding-detail-drawer__summary{flex-direction:column}.onboarding-detail-drawer__summary-facts,.onboarding-detail-drawer__field-grid{grid-template-columns:1fr}.portal-sider:not(.portal-sider--collapsed){width:176px!important;min-width:176px!important;max-width:176px!important;flex:0 0 176px!important}.tenant-home__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.tenant-home__layout{grid-template-columns:1fr}}
