:root{
  --enterprise-primary:#1677ff;
  --enterprise-primary-dark:#0958d9;
  --enterprise-navy:#14213d;
  --enterprise-text:#172033;
  --enterprise-muted:#667085;
  --enterprise-line:#e5eaf1;
  --enterprise-bg:#f5f7fa;
  --enterprise-surface:#fff;
  --enterprise-success:#138a55;
  --enterprise-warning:#d46b08;
  --enterprise-danger:#cf1322;
  --enterprise-radius:12px;
  --enterprise-shadow:0 4px 18px rgba(22,49,80,.045);
}

/* Business workspace */
body[data-tutorial-context="portal"]{min-width:960px;background:var(--enterprise-bg);color:var(--enterprise-text)}
body[data-tutorial-context="portal"]>header{position:sticky;z-index:20;top:0;height:72px;padding:0 34px;border-bottom:1px solid var(--enterprise-line);box-shadow:0 1px 4px rgba(15,38,68,.04)}
body[data-tutorial-context="portal"] .brand img{width:42px;height:42px;border-radius:10px;box-shadow:0 3px 10px rgba(22,119,255,.13)}
body[data-tutorial-context="portal"] .brand span{display:block;color:#8a94a6;font-size:11px}
body[data-tutorial-context="portal"] .brand h1{margin:3px 0 0;font-size:19px}
body[data-tutorial-context="portal"] main{max-width:1320px;margin:0 auto;padding:28px 30px 64px}
body[data-tutorial-context="portal"] .intro{position:relative;overflow:hidden;min-height:180px;padding:34px 38px;border:1px solid #d7e8ff;border-radius:16px;background:linear-gradient(112deg,#f7fbff 0%,#edf6ff 54%,#f6f2ff 100%);color:var(--enterprise-text);box-shadow:0 8px 24px rgba(36,75,118,.06)}
body[data-tutorial-context="portal"] .intro:before,body[data-tutorial-context="portal"] .intro:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
body[data-tutorial-context="portal"] .intro:before{width:280px;height:280px;right:-60px;top:-150px;background:rgba(22,119,255,.08)}
body[data-tutorial-context="portal"] .intro:after{width:170px;height:170px;right:170px;bottom:-130px;background:rgba(114,46,209,.07)}
body[data-tutorial-context="portal"] .intro>div,body[data-tutorial-context="portal"] .intro>span{position:relative;z-index:1}
body[data-tutorial-context="portal"] .intro b{color:var(--enterprise-primary)}
body[data-tutorial-context="portal"] .intro h2{font-size:29px;color:var(--enterprise-navy)}
body[data-tutorial-context="portal"] .intro p{color:#53657a}
body[data-tutorial-context="portal"] .intro>span{padding:8px 14px;border:1px solid #b8d8ff;border-radius:999px;background:#fff;color:#1559a6;font-size:12px;font-weight:700}
body[data-tutorial-context="portal"] .moduleGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}
body[data-tutorial-context="portal"] .module{min-height:218px;padding:22px;border-color:var(--enterprise-line);border-radius:13px;box-shadow:var(--enterprise-shadow);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
body[data-tutorial-context="portal"] .module:hover{transform:translateY(-2px);border-color:#c7dcf6;box-shadow:0 10px 28px rgba(22,67,120,.08)}
body[data-tutorial-context="portal"] .module .icon{width:42px;height:42px;border-radius:10px;background:#eaf3ff;color:var(--enterprise-primary)}
body[data-tutorial-context="portal"] .module:nth-child(2) .icon{background:#e9f8f0;color:var(--enterprise-success)}
body[data-tutorial-context="portal"] .module:nth-child(3) .icon{background:#fff3e6;color:var(--enterprise-warning)}
body[data-tutorial-context="portal"] .module:nth-child(4) .icon{background:#f2edff;color:#722ed1}
body[data-tutorial-context="portal"] .module:nth-child(5) .icon{background:#fff1f0;color:var(--enterprise-danger)}
body[data-tutorial-context="portal"] .module h3{font-size:18px;margin:17px 0 8px}
body[data-tutorial-context="portal"] .module p{color:var(--enterprise-muted);font-size:13px}
body[data-tutorial-context="portal"] .module a,body[data-tutorial-context="portal"] .module footer button{border-radius:7px;background:var(--enterprise-primary);border-color:var(--enterprise-primary);font-size:12px}

/* Shared module shell */
.payrollSidebar,.appSidebar{width:244px;background:#fff!important;color:var(--enterprise-text)!important;border-right:1px solid var(--enterprise-line);box-shadow:3px 0 14px rgba(15,38,68,.035)!important}
.payrollBrand,.sidebarBrand{height:72px!important;padding:0 18px!important;border-bottom:1px solid var(--enterprise-line)!important;text-decoration:none!important}
.payrollBrand img,.sidebarBrand img{width:38px!important;height:38px!important;border-radius:9px!important;box-shadow:0 3px 10px rgba(22,119,255,.12)}
.payrollBrand b,.sidebarBrand b{color:#1d2939!important;font-size:14px!important}.payrollBrand span,.sidebarBrand span{color:#98a2b3!important;font-size:10px!important}
.payrollNav,.sidebarNav{padding:12px 11px 22px!important}.payrollNavGroup{margin:13px 0 15px!important;padding-top:12px;border-top:1px solid #f0f2f5}.payrollNavGroup>span{padding:0 11px 6px!important;color:#98a2b3!important;font-size:10px!important;letter-spacing:.8px!important}.sidebarHome{margin-bottom:4px!important}
.payrollNav a,.sidebarNav a{min-height:40px!important;margin:2px 0!important;padding:8px 11px!important;border-radius:8px!important;color:#475467!important;font-size:12px!important}
.payrollNav a:hover,.sidebarNav a:hover{background:#f2f6fb!important;color:#1559a6!important}.payrollNav a.active,.sidebarNav a.active{background:#eaf3ff!important;color:var(--enterprise-primary)!important;box-shadow:none!important;font-weight:700!important}
.navIcon,.sidebarNav i{background:#f2f4f7!important;color:#667085!important}.payrollNav a.active .navIcon,.sidebarNav a.active i{background:#d6e9ff!important;color:var(--enterprise-primary)!important}
.enterpriseIcon{display:block;width:18px;height:18px}.navIcon .enterpriseIcon,.sidebarNav i .enterpriseIcon{width:16px;height:16px}.module .icon .enterpriseIcon{width:23px;height:23px}
.payrollSideFoot,.sidebarFoot{padding:14px 16px 16px!important;border-top:1px solid var(--enterprise-line)!important;background:#fbfcfe!important;color:#475467!important}.sidebarAccountLabel{display:block;margin-bottom:5px;color:#98a2b3;font-size:10px;font-weight:700}.payrollSideFoot>div,.sidebarUser{font-size:12px;font-weight:600}.payrollSideFoot a,.sidebarFoot a,.sidebarFoot button{color:#475467!important;border-color:var(--enterprise-line)!important;background:#fff!important}
.payrollStage{margin-left:244px!important;background:var(--enterprise-bg)}
.payrollTopbar{height:72px!important;padding:0 28px!important;background:#fff!important;border-bottom:1px solid var(--enterprise-line)!important;box-shadow:0 1px 4px rgba(15,38,68,.03);backdrop-filter:none!important}
.topbarTitle b{font-size:14px!important;color:#1d2939}.topbarTitle span{color:#98a2b3!important;font-size:11px!important}
.payrollContent{padding:24px 28px 54px!important}.pageHeading{margin-bottom:18px!important}.pageHeading h1{font-size:24px!important;color:var(--enterprise-navy)}.pageHeading p{max-width:920px;color:var(--enterprise-muted)!important}.eyebrow{color:var(--enterprise-primary)!important}
button,.button{min-height:36px!important;padding:8px 14px!important;border-radius:8px!important;font-weight:600!important}.primary,.actions .primary{background:var(--enterprise-primary)!important;border-color:var(--enterprise-primary)!important}.primary:hover{background:var(--enterprise-primary-dark)!important}.topbarActions button,.pageHeading>.primary,.pageHeading>.actions .primary{min-height:40px!important}.actions{gap:9px!important}
button:disabled,.button[aria-disabled="true"]{cursor:not-allowed!important;opacity:.52!important}.hidden{display:none!important}
.notice,.hrNotice{border-radius:10px!important;border-color:#cfe2ff!important;background:#f5f9ff!important;color:#315d89!important}.notice b,.hrNotice b{color:#1559a6!important}
.card,.metric,.metricGrid article,.closureModule{border-color:var(--enterprise-line)!important;border-radius:var(--enterprise-radius)!important;box-shadow:var(--enterprise-shadow)!important}
.metric{position:relative;overflow:hidden}.metric:before,.metricGrid article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#b8d8ff}.metric:nth-child(2):before,.metricGrid article:nth-child(2):before{background:#95de64}.metric:nth-child(3):before,.metricGrid article:nth-child(3):before{background:#ffd591}.metric:nth-child(4):before,.metricGrid article:nth-child(4):before{background:#b7a1e8}.metric:nth-child(5):before{background:#ff9c9c}.metric:nth-child(6):before{background:#87e8de}
.metric b,.metricGrid article b{color:#1d2939!important;font-variant-numeric:tabular-nums}.metric span,.metric small,.metricGrid span,.metricGrid small{color:#7a8798!important}
.tableWrap,.tableScroll{border-radius:10px!important;border-color:var(--enterprise-line)!important;background:#fff}th{background:#f7f9fc!important;color:#475467!important}th,td{border-bottom-color:#edf0f4!important}tbody tr:hover td{background:#f7fbff!important}
input,select,textarea{border-radius:8px!important;border-color:#d0d8e3!important}input:focus,select:focus,textarea:focus{border-color:var(--enterprise-primary)!important;box-shadow:0 0 0 3px rgba(22,119,255,.1)!important}
input[type="file"]{min-height:42px!important;padding:5px 7px!important;border:1px dashed #b9c8dc!important;background:#fff!important;color:#667085!important;cursor:pointer}input[type="file"]::file-selector-button,input[type="file"]::-webkit-file-upload-button{height:30px;margin:0 10px 0 0;padding:0 13px;border:0;border-radius:6px;background:#eaf3ff;color:#0958d9;font-family:inherit;font-weight:700;cursor:pointer}input[type="file"]:hover{border-color:#69a9ff!important;background:#f8fbff!important}input[type="file"]:disabled{cursor:not-allowed;opacity:.55}
.importPanel{align-items:end!important}.importPanel button[type="submit"],button[data-source-import],#importPerformanceFile{min-height:42px!important;padding-right:18px!important;padding-left:18px!important}.sourceCard .actions button,.uploadActions button{border-color:#91caff!important;background:#f0f7ff!important;color:#0958d9!important}
.toolbar,.hrFilters,.importPanel{gap:12px!important;padding:14px!important;border:1px solid var(--enterprise-line)!important;border-radius:10px!important;background:#fbfcfe!important}.emptyPanel,.emptyCell{min-height:96px!important;display:flex!important;align-items:center!important;justify-content:center!important;border:1px dashed #d7dde7!important;border-radius:10px!important;background:#fafbfc!important;color:#98a2b3!important}.pill,.ready,.warning,.blocked{border-radius:999px!important}
.workflow{gap:10px!important}.workflowStep,.workflowStep:first-child,.workflowStep:last-child{border:1px solid var(--enterprise-line)!important;border-radius:10px!important}.workflowStep:hover{border-color:#b8d8ff!important;background:#f7fbff!important}.workflowStep span{background:#eaf3ff!important;color:var(--enterprise-primary)!important}

/* Compact, DingTalk-like review centre */
.issueCenter{margin-top:14px;border:1px solid var(--enterprise-line);border-radius:12px;background:#fff;overflow:hidden}
.issueCenterHead{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;border-bottom:1px solid var(--enterprise-line);background:#fbfcfe}
.issueCenterTitle{display:flex;align-items:center;gap:11px}.issueCenterTitle i{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#fff1f0;color:var(--enterprise-danger);font-style:normal;font-weight:800}.issueCenterTitle b,.issueCenterTitle span{display:block}.issueCenterTitle span{margin-top:3px;color:var(--enterprise-muted);font-size:11px}
.issueCenterStart{flex:0 0 auto;min-width:120px!important}.issueCenterCollapsed{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 17px;color:#98a2b3;font-size:11px}.issueCenterCollapsed b{color:#667085;font-weight:600}
.compactDataReview{margin-top:14px;border:1px solid var(--enterprise-line);border-radius:10px;background:#fff;overflow:hidden}.compactDataReview>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:10px 14px;background:#fbfcfe;color:#475467;font-size:12px;font-weight:700;cursor:pointer;list-style:none}.compactDataReview>summary:after{content:"展开完整明细";color:var(--enterprise-primary);font-size:11px;font-weight:700}.compactDataReview[open]>summary:after{content:"收起完整明细"}.compactDataReview>summary::-webkit-details-marker{display:none}.compactDataReview>.tableWrap{max-height:430px;border:0!important;border-top:1px solid var(--enterprise-line)!important;border-radius:0!important}
.workspaceTabs{position:sticky;z-index:22;top:82px;display:flex;align-items:center;gap:4px;margin:0 0 16px;padding:5px;border:1px solid var(--enterprise-line);border-radius:10px;background:#fff;box-shadow:0 3px 12px rgba(22,49,80,.035)}.workspaceTabs button{min-width:120px;border:0!important;background:transparent!important;color:#667085!important;box-shadow:none!important}.workspaceTabs button.active{background:#eaf3ff!important;color:var(--enterprise-primary)!important;font-weight:700}.workspacePanel{display:none}.workspacePanel.active{display:block}.workspacePanel>.card{margin:0 0 16px!important}
.issueDrawer{position:fixed;z-index:260;inset:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:16px;background:rgba(15,23,42,.48)}.issueDrawer.hidden{display:none}.issueDrawerPanel{position:relative;display:flex;flex-direction:column;width:min(1080px,100%);height:min(760px,calc(100vh - 32px));min-height:0;overflow:hidden;border:1px solid var(--enterprise-line);border-radius:16px;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.24)}
.issueDrawerHead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:21px 22px;border-bottom:1px solid var(--enterprise-line)}.issueDrawerHead span{display:block;margin-bottom:5px;color:var(--enterprise-primary);font-size:10px;font-weight:800;letter-spacing:1px}.issueDrawerHead h2{margin:0;font-size:20px;color:var(--enterprise-navy)}.issueDrawerClose{min-width:36px!important;width:36px;height:36px;padding:0!important;border-radius:50%!important}
.issueDrawerWorkspace{display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);min-height:0;flex:1;overflow:hidden}.issueDrawerDirectory{display:flex;min-height:0;min-width:0;flex-direction:column;overflow:hidden;border-right:1px solid var(--enterprise-line);background:#f8fafc}.issueDrawerSearch{display:grid;gap:6px;padding:14px;border-bottom:1px solid var(--enterprise-line);color:#667085;font-size:11px}.issueDrawerSearch input{width:100%}.issueDrawerList{display:block;min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:10px}.issueDrawerListItem{display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;gap:2px 8px!important;width:100%;margin-bottom:6px;padding:10px!important;text-align:left!important;border-color:transparent!important;background:transparent!important}.issueDrawerListItem>span{grid-row:1/3;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e8eef6;color:#667085;font-size:11px}.issueDrawerListItem>b{overflow:hidden;color:#344054;text-overflow:ellipsis;white-space:nowrap}.issueDrawerListItem>small{overflow:hidden;color:#98a2b3;text-overflow:ellipsis;white-space:nowrap}.issueDrawerListItem.active{border-color:#b7d4fb!important;background:#eaf3ff!important}.issueDrawerListItem.active>span{background:var(--enterprise-primary);color:#fff}.issueDrawerListEmpty{padding:24px 10px;text-align:center;color:#98a2b3;font-size:12px}.issueDrawerBody{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px}.issueDrawerStatus{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff1f0;color:var(--enterprise-danger);font-size:11px;font-weight:700}.issueDrawerFields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:18px}.issueDrawerField{padding:12px 13px;border:1px solid var(--enterprise-line);border-radius:9px;background:#fbfcfe}.issueDrawerField span,.issueDrawerField b{display:block}.issueDrawerField span{margin-bottom:6px;color:#98a2b3;font-size:10px}.issueDrawerField b{color:#344054;font-size:13px;line-height:1.55;word-break:break-word}.issueDrawerDetail{margin-top:14px;padding:15px;border:1px solid #ffd6d2;border-radius:9px;background:#fff7f6;color:#8b2b2b;font-size:13px;line-height:1.75}.issueDrawerHint{margin-top:14px;padding:14px;border:1px solid #cfe2ff;border-radius:9px;background:#f5f9ff;color:#315d89;font-size:12px;line-height:1.7}
.issueDrawerFoot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 22px;border-top:1px solid var(--enterprise-line);background:#fbfcfe}.issueDrawerNav{display:flex;gap:8px}.issueDrawerCount{color:#667085;font-size:12px}

/* Existing performance module */
body.withSidebar{padding-left:244px!important;background:var(--enterprise-bg)}.appSidebar~header{background:linear-gradient(112deg,#f7fbff,#eef6ff)!important;border-bottom:1px solid #d7e8ff!important}.appSidebar~main{max-width:1680px}.reviewCard{border-radius:10px!important;background:#fff!important}.peopleTable th{background:#f7f9fc!important}.peopleTable tbody tr:nth-child(even){background:#fbfcfe!important}

/* Login */
.authBody{background:#f5f7fa!important}.loginShell{grid-template-columns:minmax(360px,42%) 1fr!important}.brandPanel{padding:clamp(48px,7vw,96px)!important;background:#173b68!important}.brandPanel:after{border-color:rgba(255,255,255,.045)!important}.brandPanel img{width:62px!important;height:62px!important;border-radius:14px!important}.brandPanel>span{color:#b9d4f5!important;font-size:12px!important}.brandPanel h1{font-size:clamp(32px,3.4vw,48px)!important}.brandPanel p{font-size:16px!important;color:#d9e7f7!important}.loginCard{padding:38px!important;border-color:var(--enterprise-line)!important;border-radius:14px!important;box-shadow:0 12px 38px rgba(22,49,80,.08)!important}.loginCard h2{font-size:24px!important}.loginCard input{border-radius:8px!important}.loginCard button{border-radius:8px!important;background:var(--enterprise-primary)!important}

@media(max-width:1180px){body[data-tutorial-context="portal"] .moduleGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){body[data-tutorial-context="portal"]{min-width:0}.payrollSidebar,.appSidebar{width:210px}.payrollStage{margin-left:210px!important}.issueCenterItem{grid-template-columns:30px minmax(120px,.8fr) minmax(200px,1.4fr) auto}.issueDrawerFields{grid-template-columns:1fr}}
@media(max-width:760px){body[data-tutorial-context="portal"] .moduleGrid{grid-template-columns:1fr}body[data-tutorial-context="portal"]>header{height:auto;padding:18px 20px}body[data-tutorial-context="portal"] main{padding:20px 16px 80px}body[data-tutorial-context="portal"] .intro{align-items:flex-start;flex-direction:column;padding:26px}.issueCenterHead,.issueCenterCollapsed{align-items:flex-start;flex-direction:column}.issueCenterStart{width:100%}.issueDrawer{padding:8px}.issueDrawerPanel{width:100%;height:calc(100vh - 16px);border-radius:10px}.issueDrawerWorkspace{display:grid;grid-template-rows:minmax(110px,30%) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.issueDrawerDirectory{max-height:none;border-right:0;border-bottom:1px solid var(--enterprise-line)}.issueDrawerFields{grid-template-columns:1fr}.issueDrawerFoot{padding:10px 14px}.issueDrawerBody{padding:16px}}
