:root{color:#111;background:#fff;font-family:Inter,PingFang SC,Microsoft YaHei,Noto Sans SC,Arial,sans-serif;font-synthesis:none;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;--purple: #4f46f6;--muted: #777777;--line: #e7e7e7;--soft-line: #f1f1f1;--sidebar-active: #f0faec;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.625rem;--modal-title: 1.5rem;--modal-section-title: 1.125rem;--modal-body: .875rem;--modal-caption: .8125rem;--modal-control: 1rem;--detail-hero-title: 1.875rem;--detail-stat: 1.375rem}*{box-sizing:border-box}body *{min-width:0}html,body,#root{width:100%;min-height:100%;margin:0}body{overflow-x:hidden}button,input,select,textarea{font:inherit}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}.app{min-width:0;min-height:100vh;background:#fff}.topbar{position:fixed;inset:0 0 auto 0;z-index:3;display:grid;grid-template-columns:272px 1fr 190px;align-items:center;height:73px;border-bottom:1px solid #e4e4e4;background:#fff}.brand{display:flex;align-items:center;height:100%;padding-left:58px}.sprite-logo,.sprite-avatar{display:inline-block;flex:0 0 auto;background-image:url(/assets/position-management.png);background-repeat:no-repeat;background-size:1920px 1080px}.sprite-logo{width:126px;height:38px;background-position:-58px -18px}.topnav{display:flex;justify-content:center;gap:55px;color:#202020;font-size:var(--text-base);white-space:nowrap}.topnav span{line-height:73px}.topnav .active{color:#5847ff;font-weight:600}.top-actions{display:flex;align-items:center;justify-content:flex-end;gap:26px;padding-right:27px;color:#2f2f2f}.sprite-avatar{width:42px;height:42px;border-radius:50%;background-position:-1855px -16px}.sidebar{position:fixed;inset:73px auto 0 0;z-index:2;width:272px;border-right:1px solid #dddddd;background:#fff;padding:26px 15px}.sidebar h2{margin:0 0 26px 9px;font-size:var(--text-xl);font-weight:600;letter-spacing:0}.sidenav{display:flex;flex-direction:column;gap:6px}.sidenav button{display:flex;align-items:center;gap:14px;height:56px;padding:0 18px;border:0;border-radius:7px;background:transparent;color:#292929;font-size:var(--text-base);cursor:pointer;text-align:left}.sidenav button.active{background:var(--sidebar-active)}.main{margin-left:272px;padding-top:73px;min-height:100vh}.content-header{display:flex;align-items:flex-start;justify-content:space-between;padding:25px 32px 24px}.content-header h1{margin:0;font-size:var(--text-2xl);font-weight:700;letter-spacing:0}.content-header p{margin:7px 0 0;color:#7a7a7a;font-size:var(--text-sm)}.primary-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:107px;height:41px;margin-top:7px;border:0;border-radius:9px;background:#513ff2;color:#fff;font-size:var(--text-sm);font-weight:600;cursor:pointer}.primary-action:hover{background:#4938e4}.metrics-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;padding:0 32px 23px}.metric-card{height:114px;border:1px solid #dfdfdf;border-radius:9px;padding:18px 16px;background:#fff}.metric-label{display:flex;align-items:center;gap:9px;color:#555;font-size:var(--text-sm)}.metric-card strong{display:block;margin-top:10px;color:#111;font-size:var(--text-2xl);font-weight:500;letter-spacing:0}.toolbar{display:flex;align-items:center;justify-content:space-between;height:73px;padding:0 18px 0 32px;border-top:1px solid #e8e8e8;border-bottom:1px solid #dddddd}.search-field{display:flex;align-items:center;gap:10px;width:448px;height:39px;padding:0 13px;border:1px solid #d1d1d1;border-radius:8px;color:#9b9b9b;background:#fff}.search-field input{width:100%;border:0;outline:0;color:#222;font-size:14px}.search-field input::placeholder{color:#8e8e8e}.filter-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:115px;height:38px;border:1px solid #d4d4d4;border-radius:9px;color:#3f3f3f;background:#fff;font-size:14px;cursor:default}.table-section{padding:24px 24px 0 32px}.jobs-table{width:100%;border-collapse:collapse;table-layout:fixed}.jobs-table th,.jobs-table td{text-align:left;vertical-align:middle}.jobs-table th{height:44px;border-bottom:1px solid #e5e5e5;color:#4c4c4c;font-size:14px;font-weight:700}.jobs-table td{height:89px;border-bottom:1px solid #f2f2f2;color:#6c6c6c;font-size:13px;line-height:1.55}.jobs-table th:nth-child(1),.jobs-table td:nth-child(1){width:17%;padding-left:16px}.jobs-table th:nth-child(2),.jobs-table td:nth-child(2){width:11%}.jobs-table th:nth-child(3),.jobs-table td:nth-child(3){width:12%}.jobs-table th:nth-child(4),.jobs-table td:nth-child(4){width:14%}.jobs-table th:nth-child(5),.jobs-table td:nth-child(5){width:13%}.jobs-table th:nth-child(6),.jobs-table td:nth-child(6){width:12%}.jobs-table th:nth-child(7),.jobs-table td:nth-child(7){width:15%}.jobs-table th:nth-child(8),.jobs-table td:nth-child(8){width:8%}.jobs-table strong,.jobs-table span{display:block;overflow-wrap:anywhere}.jobs-table strong{color:#111;font-size:14px;font-weight:500}.job-title-cell button{display:block;padding:0;border:0;background:transparent;color:#4b45ff;font-size:14px;line-height:1.45;text-decoration:none;cursor:pointer}.job-title-cell button:hover{color:#362dff}.creator{display:flex!important;align-items:center;gap:10px;color:#1f1f1f;font-size:14px}.creator-avatar{display:inline-flex!important;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;color:#1d1d1d;font-size:13px}.creator-avatar.green{background:#c9f4d5}.creator-avatar.blue{background:#d9ecff}.status-badge{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;min-width:44px;height:23px;padding:0 8px;border-radius:4px;font-size:12px;line-height:1}.status-badge.resume_screening{color:#119847;background:#c9f5d9}.status-badge.interviewing{color:#2e67ef;background:#dbeafe}.status-badge.offer_sent{color:#a16207;background:#fef3c7}.status-badge.ended{color:#555;background:#ececec}.row-actions{white-space:nowrap}.row-actions button{padding:0;border:0;background:transparent;color:#111;font-size:14px;cursor:pointer}.row-actions button+button{margin-left:17px}.row-actions button:hover{color:var(--purple)}.row-actions button:disabled{color:var(--text-muted);cursor:not-allowed}.row-actions button:disabled:hover{color:var(--text-muted)}.pagination{position:fixed;left:272px;right:0;bottom:24px;display:flex;align-items:center;justify-content:center;gap:20px;color:#555;font-size:14px}.pagination button{width:12px;height:22px;border:0;background:transparent;color:#333;font-size:21px;line-height:1;cursor:default}.empty-table{height:156px!important;text-align:center!important;color:#888!important;font-size:14px!important}.drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;justify-content:flex-end}.drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;background:#11182747;cursor:pointer}.app-dialog{isolation:isolate}.app-dialog-title{display:inline-flex;align-items:center;min-width:0;gap:14px}.app-dialog-title>svg{flex:0 0 auto}.app-dialog-title-copy{min-width:0}.app-dialog-title-copy h2,.app-dialog-title-copy p{overflow-wrap:anywhere}.app-dialog-header-actions{display:inline-flex;align-items:center;justify-content:flex-end;flex:0 0 auto;gap:16px;margin-left:auto}.app-dialog-close{flex:0 0 auto}.app-dialog-body{min-width:0}.app-dialog-footer{flex:0 0 auto}.create-drawer{position:relative;z-index:1;width:min(760px,100vw);max-width:100vw;height:100vh;overflow:hidden;border-left:1px solid #e5e7eb;background:#fff;box-shadow:-16px 0 36px #0f172a1f}.drawer-header{display:flex;align-items:flex-start;gap:16px;height:107px;padding:18px 31px 0;border-bottom:1px solid #f1f1f1;background:#fff}.drawer-back-button{display:inline-flex;align-items:center;justify-content:center;width:23px;height:32px;margin-top:10px;padding:0;border:0;background:transparent;color:#656565;cursor:pointer}.drawer-header h2{margin:0;color:#171717;font-size:var(--modal-title);font-weight:700;letter-spacing:0;line-height:1.35;overflow-wrap:anywhere}.drawer-header p{margin:5px 0 0;color:#9a9a9a;font-size:var(--modal-body)}.drawer-upload-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:94px;height:36px;padding:0 13px;border:1px solid #d7d7d7;border-radius:6px;background:#fff;color:#333;font-size:var(--modal-body);font-weight:600;cursor:pointer}.drawer-upload-button svg{color:#555}.drawer-upload-button:disabled{color:#94a3b8;cursor:not-allowed;background:#f1f5f9}.drawer-body{height:calc(100vh - 107px);overflow-y:auto;padding:0 31px 34px;background:#fff}.drawer-fieldset{min-width:0;margin:0;padding:0;border:0}.drawer-card{position:relative;margin-top:20px;padding:30px 32px 31px;border:1px solid #eeeeee;border-radius:4px;background:#fff;box-shadow:0 2px 3px #00000038}.drawer-card:before{content:"";position:absolute;inset:0 auto 0 -1px;width:4px;border-radius:4px 0 0 4px}.drawer-card.blue:before{background:#4a90e2}.drawer-card.green:before{background:#49b85c}.drawer-card.purple:before{background:#b633d6}.drawer-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.drawer-card-title{display:flex;align-items:center;gap:10px}.drawer-card-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;color:#8d8d8d;background:#eef8f1}.drawer-card.purple .drawer-card-icon{background:#f8eefb}.drawer-card h3{margin:0;color:#161616;font-size:var(--modal-section-title);font-weight:700}.drawer-card h3.danger{color:#e60012}.drawer-card h3 em{color:#e60012;font-style:normal;margin-left:4px}.drawer-grid{display:grid;gap:24px}.drawer-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-grid.three{grid-template-columns:1fr 1fr 1fr;gap:24px}.drawer-grid.salary{grid-template-columns:1.2fr 13px 1.2fr 120px;align-items:end;gap:17px;margin-top:24px}.drawer-grid.worktime{grid-template-columns:104px 13px 104px 1fr;align-items:end;gap:18px;margin-top:24px}.range-divider{display:flex;align-items:center;justify-content:center;height:44px;color:#9b9b9b;font-size:var(--modal-body)}.drawer-field{display:flex;flex-direction:column;min-width:0;color:#333;font-size:var(--modal-body);line-height:1.45}.drawer-field.wide{grid-column:1 / -1}.drawer-field>span:first-child{min-height:22px;margin-bottom:8px}.drawer-input-shell,.drawer-field textarea{width:100%;border:1px solid #d9d9df;border-radius:4px;background:#fbfbff;color:#222;box-shadow:inset 0 1px 1px #00000005}.drawer-input-shell{display:flex;align-items:center;gap:10px;height:45px;padding:0 13px}.drawer-input-shell svg{flex:0 0 auto;color:#8d8d8d}.drawer-input-shell svg:last-child{margin-left:auto;color:#777}.drawer-input-shell input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#222;font-size:var(--modal-control);text-overflow:ellipsis}.drawer-input-shell select{min-width:0;flex:1;border:0;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:#222;font-size:var(--modal-control)}.drawer-input-shell input::placeholder,.drawer-field textarea::placeholder{color:#2b2b2b;opacity:1}.drawer-field textarea{min-height:84px;resize:none;padding:17px 14px;outline:0;font-size:var(--modal-control);line-height:1.6}.ai-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:166px;height:36px;border:1px solid #d7d7d7;border-radius:4px;background:#fff;color:#646464;font-size:var(--modal-body);cursor:default}.ai-button:not(:disabled){cursor:pointer}.ai-button:disabled{border-color:#d9d9df;background:#f1f5f9;color:#94a3b8}.ai-button svg{color:#777}.ai-button:disabled svg{color:#94a3b8}.hint-box{display:flex;align-items:center;gap:11px;min-height:53px;margin:15px 0 26px;padding:0 18px;border-radius:4px;background:#fff8df;color:#6b6b6b;font-size:var(--modal-caption)}.hint-box svg{flex:0 0 auto;color:#ff9800;fill:#ff9800}.hint-box.compact{min-height:44px;margin:18px 0 0}.drawer-footer{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:19px 18px 0 0}.form-rule-hint{color:#777;font-size:var(--modal-caption)}.publish-button{width:122px;height:37px;border:0;border-radius:4px;background:#523cff;color:#fff;font-size:var(--modal-body);box-shadow:0 2px 4px #2c21a059;cursor:pointer}.publish-button:hover{background:#4936ea}.publish-button:disabled{background:#c8c8d6;box-shadow:none;cursor:not-allowed}.detail-layer .drawer-backdrop{background:#11182733}.job-detail-drawer{position:relative;z-index:1;width:min(760px,100vw);max-width:100vw;height:100vh;overflow:hidden;border-left:1px solid #e5e7eb;background:#f6f7f9;box-shadow:-16px 0 36px #0f172a1f}.detail-header{display:flex;align-items:center;justify-content:space-between;height:80px;padding:0 28px;border-bottom:1px solid #e9e9e9;background:#fff}.detail-title{display:flex;align-items:center;gap:15px}.detail-title h2{margin:0;color:#252525;font-size:var(--modal-section-title);font-weight:700}.detail-header-actions{display:flex;align-items:center;gap:19px}.edit-button{display:inline-flex;align-items:center;justify-content:center;gap:11px;width:85px;height:36px;border:1px solid #dadada;border-radius:4px;background:#fff;color:#4a4a4a;font-size:var(--modal-body);cursor:default}.close-detail{display:inline-flex;align-items:center;justify-content:center;width:26px;height:32px;padding:0;border:0;background:transparent;color:#bdbdbd;cursor:pointer}.detail-body{height:calc(100vh - 80px);overflow-y:auto;padding:24px 23px 39px}.detail-hero-card,.detail-card,.tracking-card{border:1px solid #e7e7e7;border-radius:12px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.detail-hero-card{position:relative;padding:32px 32px 19px}.detail-status{position:absolute;top:31px;right:33px;display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 15px;border-radius:18px;color:#0f9c48;background:#c7f0d4;font-size:var(--modal-caption);font-weight:700}.detail-status.interviewing{color:#2e67ef;background:#dbeafe}.detail-status.offer_sent{color:#a16207;background:#fef3c7}.detail-status.ended{color:#555;background:#e8e8e8}.detail-hero-card h3{max-width:530px;margin:0;color:#303030;font-size:var(--detail-hero-title);font-weight:800;line-height:1.25;overflow-wrap:anywhere}.detail-meta{margin:17px 0 21px;color:#6f6f6f;font-size:var(--modal-body)}.detail-meta span{margin:0 16px}.detail-tags{display:flex;gap:12px}.detail-tags span{display:inline-flex;align-items:center;justify-content:center;height:28px;padding:0 14px;border-radius:16px;background:#e7e8f8;color:#4f5bff;font-size:var(--modal-caption)}.detail-stats{display:grid;grid-template-columns:1fr 1fr;column-gap:56px;row-gap:25px;margin-top:31px}.detail-stats span{display:block;margin-bottom:7px;color:#ababab;font-size:var(--modal-caption)}.detail-stats strong{display:block;color:#373737;font-size:var(--detail-stat);font-weight:800;line-height:1.35;overflow-wrap:anywhere}.detail-stats strong.accent{color:#00bfa5}.detail-card{margin-top:23px;padding:31px 32px 18px}.detail-section-title{display:flex;align-items:center;gap:10px}.detail-section-title.compact{margin-top:17px}.detail-section-title span{display:block;width:4px;height:24px;border-radius:3px;background:#5c45ff}.detail-section-title h3{margin:0;color:#152033;font-size:var(--modal-section-title);font-weight:800}.detail-card p{margin:15px 0 0 13px;color:#657085;font-size:var(--modal-body)}.detail-card ul{margin:15px 0 0 26px;padding:0;color:#657085;font-size:var(--modal-body);line-height:2.35}.ai-analysis{margin-top:15px;padding:21px 20px 20px;border-radius:12px;background:#fff8df}.ai-analysis-title{display:flex;align-items:center;gap:9px;color:#8e3b0a}.ai-analysis-title h4{margin:0;font-size:var(--modal-section-title);font-weight:800}.ai-analysis-title svg{color:#ff6b00}.ai-analysis p{margin:20px 0 10px;color:#536071;font-size:var(--modal-body)}.analysis-tags{display:flex;gap:10px;flex-wrap:wrap}.analysis-tags span{display:inline-flex;align-items:center;height:28px;padding:0 13px;border-radius:8px;font-size:var(--modal-caption);font-weight:600}.analysis-tags.orange span{border:1px solid #ffb84b;color:#b45d00;background:#fff}.analysis-tags.cyan span{color:#07879a;background:#a8eff4}.analysis-divider{height:1px;margin-top:17px;background:#f3cd6a}.analysis-bottom{display:flex;align-items:flex-end;justify-content:space-between}.difficulty{display:flex;flex-direction:column;align-items:flex-end;color:#101010}.difficulty strong{color:#ff5b00;font-size:var(--text-xs)}.difficulty span{margin-top:2px;font-size:var(--modal-body);font-weight:800}.difficulty em{display:block;width:116px;height:6px;margin-top:9px;border-radius:999px;background:linear-gradient(90deg,#ff6b00 0,#ff6b00 78%,#ffd1a8 78%,#ffd1a8)}.tracking-card{margin-top:23px;padding:26px 24px 32px;border:0;border-radius:13px;background:linear-gradient(152deg,#4d39ff,#4d2bda);color:#fff}.tracking-title{display:flex;align-items:center;gap:10px;margin-bottom:25px}.tracking-title h3{margin:0;font-size:var(--modal-section-title);font-weight:800}.tracking-item{display:grid;grid-template-columns:50px 1fr auto;align-items:center;min-height:83px;margin-bottom:13px;padding:0 17px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:#ffffff1f}.tracking-avatar{display:inline-flex;align-items:center;justify-content:center;width:49px;height:49px;border-radius:50%;background:#ffffff40;color:#fff;font-size:var(--text-xl);font-weight:800;position:relative}.tracking-avatar:after{content:"";position:absolute;right:1px;bottom:2px;width:10px;height:10px;border:2px solid #5740e7;border-radius:50%}.tracking-avatar.green:after{background:#08df8c}.tracking-avatar.yellow:after{background:#ffcc17}.tracking-item strong,.tracking-item span{display:block}.tracking-item strong{margin-left:14px;font-size:var(--modal-control)}.tracking-item span{margin:3px 0 0 14px;color:#ddd8ff;font-size:var(--modal-caption)}.tracking-item time{color:#00f5c8;font-size:var(--modal-body);font-weight:800;overflow-wrap:anywhere}.tracking-item time.yellow{color:#ffe93a}.tracking-footer{margin-top:23px;padding-top:25px;border-top:1px solid rgba(255,255,255,.22);color:#c9c1ff;font-size:var(--modal-caption)}.toast-message{position:fixed;right:28px;bottom:31px;z-index:60;max-width:min(420px,calc(100vw - 56px));padding:13px 16px;border:1px solid #d6f4df;border-radius:8px;background:#f0faec;color:#11743a;font-size:14px;box-shadow:0 12px 28px #0f172a1f}@media (max-width: 900px){body{overflow-x:hidden}.topbar{position:sticky;grid-template-columns:1fr auto;grid-template-rows:58px 45px;height:103px}.brand{padding-left:16px}.topnav{grid-column:1 / -1;justify-content:flex-start;gap:24px;overflow-x:auto;padding:0 16px;font-size:var(--text-sm)}.topnav span{flex:0 0 auto;line-height:45px}.top-actions{gap:14px;padding-right:16px}.sidebar{position:sticky;inset:auto;top:103px;width:100%;border-right:0;border-bottom:1px solid #dddddd;padding:16px 14px 14px;overflow-x:auto}.sidebar h2{margin:0 0 12px;font-size:var(--text-lg)}.sidenav{flex-direction:row;gap:10px}.sidenav button{flex:0 0 auto;height:42px;padding:0 14px}.main{margin-left:0;padding-top:0}.content-header{flex-direction:column;gap:12px;padding:24px 20px}.primary-action{width:100%}.metrics-grid{grid-template-columns:1fr;padding:0 20px 20px}.toolbar{height:auto;align-items:stretch;padding:14px 20px}.toolbar{flex-direction:column;gap:12px}.search-field,.filter-button{width:100%}.table-section{overflow-x:auto;padding:18px 20px 0}.jobs-table{min-width:1040px}.pagination{position:static;padding:22px 0 30px}.drawer-grid.two,.drawer-grid.three,.drawer-grid.salary,.drawer-grid.worktime{grid-template-columns:1fr}.range-divider{display:none}.drawer-footer{align-items:stretch;flex-direction:column;padding-right:0}.publish-button{width:100%}.detail-stats{grid-template-columns:1fr}}.placeholder-page{padding:34px 32px}.placeholder-page h1{margin:0 0 8px;font-size:var(--text-2xl)}.placeholder-page p{margin:0;color:#777;font-size:var(--text-sm)}.resume-board{margin:24px 24px 0 32px;border:1px solid #e7e7e7;border-radius:10px;background:#fff;overflow:hidden}.resume-board-header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid #eeeeee}.resume-board-header h2{margin:0;font-size:var(--text-xl)}.resume-board-header p,.resume-board-header span{margin:5px 0 0;color:#777;font-size:var(--text-sm)}.resume-table-head,.resume-row{display:grid;grid-template-columns:1.5fr .9fr .8fr .7fr 1.2fr .7fr;gap:16px;align-items:center}.resume-table-head{min-height:46px;padding:0 22px;color:#555;font-size:var(--text-sm);font-weight:700;background:#fafafa}.resume-row{min-height:88px;padding:14px 22px;border-top:1px solid #f1f1f1;color:#555;font-size:var(--text-sm)}.resume-person{display:flex;align-items:center;gap:12px;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.resume-person strong,.resume-person em,.resume-person small{display:block}.resume-person strong{color:#4b45ff;font-size:var(--text-sm);font-style:normal}.resume-person em,.resume-person small{color:#777;font-size:var(--text-xs);font-style:normal}.resume-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#e4efff;color:#2f68d8;font-weight:700}.resume-avatar.large{width:64px;height:64px;background:#6d5df6;color:#fff;font-size:var(--text-2xl)}.resume-status{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-width:68px;height:26px;padding:0 10px;border-radius:999px;font-size:var(--text-xs);font-weight:700}.resume-status.new,.resume-status.parsed{color:#0f9c48;background:#d6f7df}.resume-status.duplicate,.resume-status.review{color:#8a55d8;background:#efe5ff}.resume-status.failed{color:#d93025;background:#ffe5e5}.resume-score{color:#00a890;font-size:var(--text-base)}.resume-tags{display:flex;flex-wrap:wrap;gap:8px}.resume-tags em{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;background:#e9eaff;color:#4f5bff;font-size:var(--text-xs);font-style:normal}.large-tags em{min-height:30px;padding:0 12px}.resume-actions button{border:0;background:transparent;color:#4f46f6;font-size:var(--text-sm);cursor:pointer}.resume-pipeline,.ai-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:24px 24px 0 32px}.pipeline-card,.ai-panel{border:1px solid #e7e7e7;border-radius:10px;background:#fff;padding:22px}.pipeline-card svg{color:#4f46f6}.pipeline-card h3,.ai-panel h2{margin:10px 0 6px;font-size:var(--text-lg)}.pipeline-card p,.ai-panel p{margin:0;color:#777;font-size:var(--text-sm);line-height:1.7}.resume-header{padding:31px 36px 22px 52px}.resume-header-actions{display:flex;align-items:center;gap:12px;margin-top:4px}.resume-secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:121px;height:41px;border:1px solid #d7d7d7;border-radius:9px;background:#fff;color:#333;font-size:var(--text-sm);font-weight:600;cursor:pointer}.resume-secondary-action svg{color:#555}.resume-upload-action{width:164px}.resume-metrics{padding-right:36px;padding-bottom:25px;padding-left:52px;border-bottom:1px solid #e8e8e8}.resume-metrics .metric-card{height:101px}.resume-upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:304px;margin:24px 36px 20px 52px;border:2px dashed #cbd4ff;border-radius:15px;background:#fbfcff;text-align:center}.resume-upload-icon{display:inline-flex;align-items:center;justify-content:center;width:69px;height:69px;border-radius:50%;background:#dfe5ff;color:#5b45ff}.resume-upload-zone h2{margin:19px 0 11px;color:#1c1c1c;font-size:20px;font-weight:700;letter-spacing:0}.resume-upload-zone p{margin:0;color:#8a8a8a;font-size:15px;line-height:1.55}.resume-upload-zone button{width:113px;height:43px;margin-top:18px;border:1px solid #d7d7d7;border-radius:8px;background:#fff;color:#333;font-size:14px;cursor:pointer}.resume-record-card{margin:0 36px 0 52px;border:1px solid #e6e6e6;border-radius:14px;background:#fff;overflow:hidden}.resume-record-tabs{display:flex;align-items:center;justify-content:space-between;min-height:59px;padding:0 25px;border-bottom:1px solid #eeeeee}.resume-tabs{display:flex;align-items:stretch;gap:34px;height:59px}.resume-tabs button{position:relative;min-width:92px;padding:0;border:0;background:transparent;color:#555;font-size:14px;font-weight:600;cursor:pointer}.resume-tabs button.active{color:#4f46f6}.resume-tabs button.active:after{content:"";position:absolute;right:0;bottom:0;left:0;height:3px;border-radius:3px 3px 0 0;background:#5b45ff}.resume-record-search{display:flex;align-items:center;gap:9px;width:274px;height:41px;padding:0 12px;border:1px solid #d7d7d7;border-radius:9px;color:#9b9b9b;background:#fff}.resume-record-search input{width:100%;border:0;outline:0;color:#222;font-size:14px}.resume-record-search input::placeholder{color:#8f8f8f}.resume-file-table{width:100%;border-collapse:collapse;table-layout:fixed}.resume-file-table th,.resume-file-table td{text-align:left;vertical-align:middle}.resume-file-table th{height:47px;border-bottom:1px solid #e7e7e7;background:#fafafa;color:#4d4d4d;font-size:14px;font-weight:700}.resume-file-table td{height:74px;border-bottom:1px solid #f1f1f1;color:#555;font-size:14px;line-height:1.45}.resume-file-table th:nth-child(1),.resume-file-table td:nth-child(1){width:27%;padding-left:26px}.resume-file-table th:nth-child(2),.resume-file-table td:nth-child(2){width:20%}.resume-file-table th:nth-child(3),.resume-file-table td:nth-child(3){width:13%}.resume-file-table th:nth-child(4),.resume-file-table td:nth-child(4){width:13%}.resume-file-table th:nth-child(5),.resume-file-table td:nth-child(5){width:9%}.resume-file-table th:nth-child(6),.resume-file-table td:nth-child(6){width:10%}.resume-file-table th:nth-child(7),.resume-file-table td:nth-child(7){width:8%}.resume-file-table strong,.resume-file-table span,.resume-file-table small{display:block;overflow-wrap:anywhere}.resume-file-table strong{color:#333;font-size:14px;font-weight:700}.resume-file-table span,.resume-file-table small{color:#8a8a8a;font-size:13px}.resume-file-name{display:flex;align-items:center;gap:12px}.resume-file-name svg{flex:0 0 auto;color:#9b9b9b}.resume-file-link{display:block;width:100%;padding:0;border:0;background:transparent;color:#333;font-size:14px;font-weight:700;line-height:1.45;text-align:left;cursor:pointer;overflow-wrap:anywhere}.resume-file-link:hover{color:#5b45ff}.parse-status{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;min-width:75px;height:27px;padding:0 10px;border-radius:5px;font-size:13px!important;font-weight:700}.parse-status.success{color:#0f9c48;background:#d6f7df}.parse-status.processing{color:#2f68f2;background:#dceaff}.parse-status.failed{color:#e60012;background:#ffe0e0}.resume-file-table .match-warning{color:#e94720}.resume-file-actions{white-space:nowrap}.resume-file-actions button{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;color:#5f5f5f;font-size:13px;font-weight:700;cursor:pointer;vertical-align:middle}.resume-file-actions button+button{margin-left:12px}.resume-file-actions button.danger,.resume-file-actions button.warning{margin-right:8px;color:#e60012}.resume-file-actions button.warning{color:#e94720}.resume-record-pagination{display:flex;align-items:center;justify-content:center;gap:10px;min-height:69px;color:#555;font-size:14px;flex-wrap:wrap}.resume-record-pagination button{min-width:34px;height:30px;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;line-height:1;padding:0 6px}.resume-record-pagination button.active-page{border:0;background:transparent;color:inherit;font:inherit}.duplicate-modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center}.duplicate-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#1118272e}.duplicate-modal{position:relative;z-index:1;display:flex;flex-direction:column;width:766px;height:min(1006px,calc(100vh - 32px));overflow:hidden;border:1px solid #d9d9d9;border-radius:12px;background:#fff;box-shadow:0 24px 56px #0f172a38}.duplicate-modal-header{display:flex;align-items:flex-start;justify-content:space-between;min-height:80px;padding:24px 28px 0;border-bottom:1px solid #efefef}.duplicate-title{display:flex;align-items:flex-start;gap:12px}.duplicate-title h2{margin:0;color:#202020;font-size:19px;font-weight:800;line-height:1.2}.duplicate-title p{margin:10px 0 0;color:#9a9a9a;font-size:13px}.duplicate-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;background:transparent;color:#e33b17;cursor:pointer}.duplicate-modal-body{flex:1;padding:26px 26px 0;background:#fff}.duplicate-compare{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:24px}.duplicate-card{min-height:415px;border:1px solid #f0f0f0;border-radius:12px;background:#fff;box-shadow:0 2px 8px #0f172a0f}.duplicate-card.existing{padding:27px 24px}.duplicate-card.incoming{padding:27px 24px 24px;border-color:#d7eddc;box-shadow:0 2px 8px #16a34a24}.duplicate-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}.duplicate-card-title h3{margin:0;color:#333;font-size:18px;font-weight:800}.duplicate-card-title span{display:inline-flex;align-items:center;justify-content:center;height:27px;padding:0 13px;border-radius:999px;background:#e7e6ff;color:#5b45ff;font-size:12px;font-weight:700}.duplicate-card-title button{height:32px;padding:0 18px;border:1px solid #5b45ff;border-radius:4px;background:#fff;color:#5b45ff;font-size:13px;font-weight:700}.duplicate-field{margin-top:28px}.duplicate-field:first-of-type{margin-top:0}.duplicate-field.compact{margin-top:0;margin-bottom:28px}.duplicate-field span,.duplicate-new-block span,.duplicate-update-time{display:block;color:#9a9a9a;font-size:14px}.duplicate-field strong{display:block;margin-top:9px;color:#202020;font-size:21px;font-weight:800;line-height:1.35}.duplicate-field:not(.compact) strong{font-size:16px}.duplicate-field em,.duplicate-new-block em{display:block;margin-top:7px;color:#9a9a9a;font-size:14px;font-style:normal}.duplicate-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}.duplicate-tags i{display:inline-flex;align-items:center;height:29px;padding:0 13px;border-radius:999px;background:#f3f3f3;color:#666;font-size:14px;font-style:normal}.duplicate-tags.green i{background:#bfe8c2;color:#388d42;font-weight:700}.duplicate-update-time{margin:30px 0 0}.duplicate-new-block{position:relative;min-height:113px;margin-top:24px;padding:21px 22px 19px;border-left:4px solid #4caf5a;border-radius:7px;background:#e7f5e9}.duplicate-new-block:first-of-type{margin-top:0}.duplicate-new-block svg{position:absolute;top:20px;right:20px}.duplicate-new-block span{color:#23823a;font-weight:800}.duplicate-new-block strong{display:block;margin-top:13px;color:#202020;font-size:16px;line-height:1.35}.duplicate-new-block.tags-block{min-height:97px}.duplicate-swap{position:absolute;top:361px;left:50%;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#fff;color:#a4a4a4;box-shadow:0 2px 9px #0f172a24;transform:translate(-50%)}.duplicate-modal-footer{display:flex;align-items:center;justify-content:space-between;min-height:92px;padding:0 25px 0 35px;border-top:1px solid #eeeeee;background:#fff}.duplicate-modal-footer label{display:flex;align-items:center;gap:20px;color:#555;font-size:15px}.duplicate-modal-footer input{width:18px;height:18px;accent-color:#6b63f6}.duplicate-modal-footer>div{display:flex;align-items:center;gap:14px}.duplicate-skip,.duplicate-confirm{display:inline-flex;align-items:center;justify-content:center;height:40px;border-radius:4px;font-size:14px;font-weight:700;cursor:pointer}.duplicate-skip{width:119px;border:1px solid #d9d9d9;background:#fff;color:#555}.duplicate-confirm{gap:9px;width:188px;border:0;background:#5b45ff;color:#fff;box-shadow:0 3px 5px #4531cf59}.duplicate-drawer-content{min-height:calc(100vh - 142px);display:flex;flex-direction:column;gap:24px}.duplicate-candidate-list{padding:16px 18px;border:1px solid #e5e7eb;border-radius:10px;background:#fbfbff}.duplicate-candidate-list label{display:flex;align-items:center;gap:12px;margin-top:10px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:7px;background:#fff;cursor:pointer}.duplicate-candidate-list label.active{border-color:#9d96ff;background:#f4f3ff}.duplicate-candidate-list input{flex:0 0 auto;accent-color:#5b45ff}.duplicate-candidate-list label span{display:grid;gap:4px}.duplicate-candidate-list label em{color:#777;font-size:13px;font-style:normal}.duplicate-drawer-content .duplicate-compare{flex:1}.duplicate-drawer-content .duplicate-card{min-height:415px}.duplicate-drawer-footer{min-height:auto;margin:auto -30px -34px;padding:18px 24px}.ai-panel-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.ai-panel-header svg{color:#4f46f6;margin-top:4px}.parse-tasks,.exception-list{display:flex;flex-direction:column;gap:12px}.parse-task,.exception-list button{border:1px solid #eeeeee;border-radius:9px;background:#fbfbff;padding:15px}.parse-task div{display:flex;justify-content:space-between;gap:12px}.parse-task strong,.exception-list strong{display:block;color:#222;font-size:var(--text-sm)}.parse-task span,.parse-task p,.exception-list span{color:#777;font-size:var(--text-sm)}.parse-task em{display:inline-flex;margin-top:10px;color:#00a890;font-size:var(--text-xs);font-style:normal;font-weight:700}.parse-task.failed em{color:#d93025}.parse-task.review em{color:#8a55d8}.exception-list button{display:flex;align-items:flex-start;gap:12px;text-align:left;cursor:pointer}.exception-list svg{color:#ff9f1c;flex:0 0 auto}.ai-page{min-height:calc(100vh - 73px);background:#fff}.ai-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:33px 13px 27px 32px}.ai-page-header h1{margin:0;color:#111;font-size:24px;font-weight:800;letter-spacing:0;line-height:1.3}.ai-page-header p{margin:6px 0 0;color:#666;font-size:14px;font-weight:700}.ai-reparse-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:184px;height:40px;margin-top:7px;border:0;border-radius:9px;background:#513ff2;color:#fff;font-size:14px;font-weight:800;cursor:pointer}.ai-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;padding:0 13px 24px 32px;border-bottom:1px solid #e6e6e6}.ai-stat-card{min-height:95px;padding:20px 16px 17px;border:1px solid #e1e1e1;border-radius:9px;background:#fff}.ai-stat-card span{display:flex;align-items:center;gap:9px;color:#555;font-size:14px;font-weight:800}.ai-stat-card strong{display:block;margin-top:12px;color:#111;font-size:26px;font-weight:800;letter-spacing:0}.ai-pipeline-card{margin:24px 13px 24px 32px;padding:32px;border-radius:15px;background:#342d82;color:#fff}.ai-pipeline-card h2{display:flex;align-items:center;gap:10px;margin:0 0 35px;font-size:24px;font-weight:800}.ai-pipeline-card h2 span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#ffffff2e}.ai-pipeline-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.ai-pipeline-steps article{min-height:115px;padding:20px;border-radius:8px;background:#ffffff1f}.ai-pipeline-steps span{color:#ffffff9e;font-size:13px;font-weight:800}.ai-pipeline-steps strong{margin-top:10px;color:#fff;font-size:20px;font-weight:800}.ai-pipeline-steps p{margin:10px 0 0;color:#ffffffd9;font-size:12px;font-weight:700}.ai-results-card{margin:0 13px 0 32px;border:1px solid #e1e1e1;border-radius:10px;background:#fff;overflow:hidden}.ai-results-card>header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:87px;padding:0 46px 0 25px}.ai-results-card>header>div{display:flex;align-items:center;gap:23px}.ai-results-card>header>div button{border:0;background:transparent;color:#777;font-size:14px;font-weight:800;cursor:pointer}.ai-results-card>header>div button:first-child{margin:0;color:#111;font-size:20px;font-weight:800}.ai-results-card>header>div button:not(.active){opacity:.72}.ai-results-card>header>div button.active{opacity:1}.ai-result-search{display:flex;align-items:center;gap:11px;width:256px;height:38px;padding:0 14px;border:1px solid #d8d8d8;border-radius:8px;color:#999;background:#fff}.ai-result-search input{width:100%;border:0;outline:0;color:#333;font-size:14px}.ai-result-search input::placeholder{color:#8a8a8a}.ai-results-table{width:100%;border-collapse:collapse;table-layout:fixed}.ai-results-table th,.ai-results-table td{text-align:left;vertical-align:middle}.ai-results-table th{height:44px;border-top:1px solid #eeeeee;border-bottom:1px solid #e7e7e7;background:#fafafa;color:#4d4d4d;font-size:14px;font-weight:800}.ai-results-table td{height:73px;border-bottom:1px solid #f1f1f1;color:#333;font-size:14px}.ai-results-table th:nth-child(1),.ai-results-table td:nth-child(1){width:17%;padding-left:25px}.ai-results-table th:nth-child(2),.ai-results-table td:nth-child(2){width:18%}.ai-results-table th:nth-child(3),.ai-results-table td:nth-child(3){width:10%}.ai-results-table th:nth-child(4),.ai-results-table td:nth-child(4){width:20%}.ai-results-table th:nth-child(5),.ai-results-table td:nth-child(5){width:11%}.ai-results-table th:nth-child(6),.ai-results-table td:nth-child(6){width:11%}.ai-results-table th:nth-child(7),.ai-results-table td:nth-child(7){width:13%}.ai-results-table strong,.ai-results-table span,.ai-results-table em{display:block}.ai-results-table strong{color:#222;font-size:15px;font-weight:800}.ai-results-table td:first-child span{margin-top:6px;color:#666;font-size:13px;font-weight:800}.ai-results-table em{position:relative;padding-left:16px;color:#222;font-size:14px;font-style:normal;font-weight:800}.ai-results-table em:before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:50%;background:#2f7dff}.ai-confidence{display:inline-flex;align-items:center;justify-content:center;min-width:29px;height:24px;padding:0 8px;border-radius:4px;font-size:13px;font-style:normal;font-weight:800}.ai-confidence.high{background:#d6f7df;color:#0f9c48}.ai-confidence.medium{background:#fff4bf;color:#c68500}.ai-confidence.low{background:#ffe2e2;color:#e32020}.ai-semantic-tags{display:flex;flex-wrap:wrap;gap:6px}.ai-semantic-tags span{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:4px;font-size:12px;font-weight:800}.ai-semantic-tags.high span{background:#dbe7ff;color:#1558ff}.ai-semantic-tags.medium span{background:#efe0ff;color:#7a12d6}.ai-semantic-tags.low span{background:#ffd9eb;color:#c90061}.ai-status-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;background:#eef5ff;color:#2554d8;font-size:12px;font-weight:800;white-space:nowrap}.ai-status-pill.high{background:#e3f8e9;color:#148a43}.ai-status-pill.medium{background:#fff2c7;color:#a66c00}.ai-status-pill.low{background:#ffe5e5;color:#d12626}.ai-status-pill.task{background:#f3edff;color:#7137bf}.ai-results-table td:nth-child(7) button{border:0;background:transparent;color:#4f35ff;font-size:14px;font-weight:800;cursor:pointer}.ai-results-pagination{display:flex;align-items:center;justify-content:center;gap:22px;min-height:57px;color:#333;font-size:14px;font-weight:800}.ai-results-pagination button{border:0;background:transparent;color:#333;font-size:18px;cursor:pointer}.ai-task-card{margin:24px 13px 0 32px;border:1px solid #e1e1e1;border-radius:10px;background:#fff;overflow:hidden}.ai-task-card>header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:87px;padding:0 46px 0 25px}.ai-task-card h2{margin:0;color:#111;font-size:20px;font-weight:800}.ai-task-card p{margin:6px 0 0;color:#666;font-size:13px;font-weight:700}.ai-task-card>header>span{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;background:#eef5ff;color:#2554d8;font-size:13px;font-weight:800;white-space:nowrap}.ai-task-list{display:grid}.ai-task-head{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(220px,1.45fr) minmax(110px,.75fr) minmax(170px,1fr) minmax(104px,.65fr) minmax(104px,.65fr);align-items:center;gap:16px;min-height:44px;padding:0 25px;border-top:1px solid #eeeeee;border-bottom:1px solid #e7e7e7;background:#fafafa;color:#4d4d4d;font-size:14px;font-weight:800}.ai-task-head span:nth-child(n+3){text-align:center}.ai-task-item{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(220px,1.45fr) minmax(110px,.75fr) minmax(170px,1fr) minmax(104px,.65fr) minmax(104px,.65fr);align-items:center;gap:16px;min-height:73px;padding:0 25px;border-bottom:1px solid #f1f1f1;background:#fff}.ai-task-item span,.ai-task-item strong{display:block}.ai-task-item span{color:#777;font-size:12px;font-weight:800}.ai-task-item>div:not(:first-child) span{display:none}.ai-task-item>div:nth-child(n+3){text-align:center}.ai-task-item strong{margin-top:4px;color:#222;font-size:13px;font-weight:800}.ai-task-status{display:inline-flex;align-items:center;justify-content:center;min-width:72px;min-height:26px;padding:0 10px;border-radius:999px;background:#eef5ff;color:#2554d8;font-size:12px;font-style:normal;font-weight:800;justify-self:center}.ai-task-status.running{background:#e6f6ff;color:#147ad6}.ai-task-status.failed{background:#ffe5e5;color:#d12626}.ai-task-status.pending{background:#fff2c7;color:#a66c00}.ai-task-status.cancelled{background:#f1f1f1;color:#666}.ai-task-item button{justify-self:center;min-width:76px;height:32px;border:1px solid #d7ddff;border-radius:7px;background:#fff;color:#4f35ff;font-size:12px;font-weight:800;cursor:pointer}.ai-task-drawer{display:flex;flex-direction:column;width:min(560px,100vw)}.ai-task-drawer-header{grid-template-columns:1fr auto auto;align-items:center}.ai-task-drawer-header .drawer-back-button{width:38px;height:38px;font-size:26px}.ai-task-drawer-body{display:flex;flex:1 1 auto;flex-direction:column;padding:24px;background:#f8fafc}.ai-task-detail{padding:20px;border:1px solid #eeeeee;border-radius:10px;background:#fff}.ai-task-detail h3,.ai-task-log h3{margin:0 0 16px;color:#222;font-size:16px;font-weight:800}.ai-task-detail>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-task-detail p{margin:0;padding:12px;border:1px solid #eeeeee;border-radius:8px;background:#fff;color:#222;font-size:13px;font-weight:800}.ai-task-detail b{display:block;margin-bottom:6px;color:#777;font-size:12px}.ai-task-log{margin-top:16px;padding:20px;border:1px solid #eeeeee;border-radius:10px;background:#fff}.ai-task-log ol{margin:0;padding-left:18px;color:#555;font-size:13px;font-weight:700;line-height:1.9}.ai-task-drawer-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:auto -24px -24px;padding:18px 24px;border-top:1px solid #eeeeee;background:#fff}.ai-task-drawer-actions>button,.ai-task-confirm button{min-width:104px;height:40px;border:1px solid #d8d8d8;border-radius:9px;background:#fff;color:#555;font-size:14px;font-weight:800;cursor:pointer}.ai-task-drawer-actions button.primary,.ai-task-confirm button.primary{border-color:#513ff2;background:#513ff2;color:#fff;box-shadow:0 2px 4px #3626a247}.ai-task-drawer-actions button.danger{border-color:#fdd;background:#fff0f0;color:#ff3b30}.ai-task-confirm{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;margin-top:16px;padding:18px 20px;border:1px solid #eeeeee;border-radius:10px;background:#fff}.ai-task-confirm strong,.ai-task-confirm p{margin:0}.ai-task-confirm strong{color:#222;font-size:13px;font-weight:800}.ai-task-confirm p{margin-top:6px;color:#666;font-size:12px;font-weight:700}.candidate-page{min-height:calc(100vh - 73px);background:#fff}.candidate-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:31px 36px 28px}.candidate-header h1{margin:0;color:#222;font-size:24px;font-weight:800;letter-spacing:0}.candidate-header p{margin:7px 0 0;color:#777;font-size:14px}.candidate-header>button{min-width:123px;height:43px;border:0;border-radius:9px;background:#513ff2;color:#fff;font-size:15px;font-weight:800;cursor:pointer}.candidate-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;padding:0 331px 26px 36px;border-bottom:1px solid #e6e6e6}.candidate-stat-card{min-height:92px;padding:19px 19px 16px;border:1px solid #e1e1e1;border-radius:9px;background:#fff}.candidate-stat-card span,.candidate-stat-card strong{display:block}.candidate-stat-card span{color:#777;font-size:13px}.candidate-stat-card strong{margin-top:8px;color:#222;font-size:27px;font-weight:400;letter-spacing:0}.candidate-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:75px;padding:0 36px;border-bottom:1px solid #dddddd}.candidate-tabs{display:flex;align-items:center;gap:17px;overflow-x:auto}.candidate-tabs button{flex:0 0 auto;min-width:84px;height:41px;padding:0 13px;border:0;border-radius:8px;background:transparent;color:#555;font-size:14px;font-weight:700;cursor:pointer}.candidate-tabs button.active{border:1px solid #d8d8d8;background:#fff;color:#333}.candidate-tools{display:flex;align-items:center;gap:13px;flex:0 0 auto}.candidate-search{display:flex;align-items:center;gap:11px;width:342px;height:41px;padding:0 13px;border:1px solid #d8d8d8;border-radius:8px;color:#999;background:#fff}.candidate-search input{width:100%;border:0;outline:0;color:#333;font-size:14px}.candidate-search input::placeholder{color:#999}.candidate-filter{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:91px;height:41px;border:1px solid #d8d8d8;border-radius:8px;background:#fff;color:#333;font-size:14px;cursor:pointer}.candidate-list{display:grid;gap:18px;padding:34px 36px 40px;background:#fff}.candidate-card{display:grid;grid-template-columns:52px minmax(0,1fr) 230px;gap:16px;min-height:187px;padding:25px 36px 24px 27px;border:1px solid #e6e6e6;border-radius:14px;background:#fff}.candidate-avatar{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;color:#fff;font-size:22px;font-weight:800}.candidate-avatar.blue{background:#2f7dff}.candidate-avatar.orange{background:#ff6b00}.candidate-avatar.green{background:#00c853}.candidate-name-row{display:flex;align-items:center;gap:12px}.candidate-name-row h2{margin:0;color:#222;font-size:19px;font-weight:800}.candidate-status{display:inline-flex;align-items:center;height:25px;padding:0 10px;border-radius:4px;font-size:13px;font-weight:800}.candidate-status.active{color:#0f9c48;background:#d6f7df}.candidate-status.interview{color:#286bff;background:#dbe7ff}.candidate-status.hired{color:#666;background:#eee}.candidate-meta{display:flex;flex-wrap:wrap;gap:36px;margin-top:11px}.candidate-meta span{display:inline-flex;align-items:center;gap:5px;color:#666;font-size:14px}.candidate-summary{margin-top:45px}.candidate-summary strong{display:flex;align-items:center;gap:8px;color:#555;font-size:14px}.candidate-summary strong svg{color:#b651ff}.candidate-summary p{margin:10px 0 0;color:#555;font-size:13px;line-height:1.7}.candidate-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.candidate-tags span{display:inline-flex;align-items:center;min-height:26px;padding:0 13px;border-radius:4px;background:#f1f1f1;color:#555;font-size:13px}.candidate-risk-block{margin-top:24px}.candidate-risk{margin:24px 0 0;font-size:13px;font-weight:800}.candidate-risk-block .candidate-risk{margin-top:0}.candidate-definition-text{max-width:680px;margin:7px 0 0;color:#64748b;font-size:12px;line-height:1.55}.candidate-risk:before{content:"";display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%;vertical-align:1px}.candidate-risk.low{color:#555}.candidate-risk.low:before{background:#16c85f}.candidate-risk.warning{color:#ff3b30}.candidate-risk.warning:before{background:#ffb000}.candidate-match{display:flex;flex-direction:column;align-items:flex-end;min-height:100%}.candidate-match>span{color:#777;font-size:13px}.candidate-match>strong{margin-top:3px;color:#00a890;font-size:54px;font-weight:800;line-height:1}.candidate-match>div:not(.candidate-card-actions){width:135px;height:8px;margin-top:12px;border-radius:999px;background:#e5e5e5;overflow:hidden}.candidate-match i{display:block;height:100%;border-radius:inherit;background:#00b8a9}.candidate-match-definition{max-width:190px;margin:12px 0 16px;color:#64748b;font-size:12px;line-height:1.5;text-align:right}.candidate-card-actions{display:flex;align-items:center;gap:10px;margin-top:auto}.candidate-card-actions button{min-width:95px;height:31px;padding:0 13px;border:1px solid #d8d8d8;border-radius:8px;background:#fff;color:#555;font-size:13px;font-weight:700;cursor:pointer}.candidate-card-actions button.primary{min-width:86px;border-color:#513ff2;background:#513ff2;color:#fff}.talent-pool-page{background:#fafafa}.talent-pool-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:107px;padding:26px 28px 24px 36px;border-bottom:1px solid #e6e6e6;background:#fff}.talent-pool-title{display:flex;align-items:center;gap:25px}.talent-pool-title>button{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border:0;border-radius:50%;background:transparent;color:#666;cursor:pointer}.talent-pool-title h1{margin:0;color:#222;font-size:28px;font-weight:800;letter-spacing:0}.talent-pool-title p{margin:7px 0 0;color:#888;font-size:14px}.talent-pool-import{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:164px;height:43px;padding:0 18px;border:0;border-radius:9px;background:#513ff2;color:#fff;font-size:15px;font-weight:800;cursor:pointer}.talent-pool-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;padding:36px}.talent-pool-card{min-height:304px;padding:34px 36px 30px;border:1px solid #eeeeee;border-radius:22px;background:#fff;box-shadow:0 13px 24px #00000026}.talent-pool-card.clickable{cursor:pointer}.talent-pool-card.clickable:hover{transform:translateY(-1px)}.talent-pool-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.talent-pool-icon{display:inline-flex;align-items:center;justify-content:center;width:69px;height:69px;border-radius:13px;background:#513ff2;color:#fff}.talent-pool-card-top span{display:inline-flex;align-items:center;justify-content:center;min-width:87px;height:44px;padding:0 17px;border-radius:999px;background:#f3f4f6;color:#5f6877;font-size:18px}.talent-pool-card h2{margin:28px 0 16px;color:#1f1f1f;font-size:24px;font-weight:800;letter-spacing:0}.talent-pool-card p{min-height:72px;margin:0;color:#5f6877;font-size:15px;font-weight:600;line-height:1.65}.talent-pool-card strong{display:inline-flex;align-items:center;gap:7px;margin-top:28px;color:#00a878;font-size:15px;font-weight:800}.talent-pool-detail-page{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:calc(100vh - 73px);background:#f9fafb}.talent-detail-sidebar{border-right:1px solid #e5e7eb;background:#fff}.talent-detail-sidebar header{display:flex;align-items:center;gap:12px;min-height:73px;padding:0 28px;border-bottom:1px solid #e5e7eb}.talent-detail-sidebar header button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;background:transparent;color:#4b5563;cursor:pointer}.talent-detail-sidebar h1{margin:0;color:#111827;font-size:20px;font-weight:800;letter-spacing:0}.talent-detail-search{display:flex;align-items:center;gap:10px;height:41px;margin:17px 17px 21px;padding:0 13px;border:1px solid #e0e4eb;border-radius:9px;color:#97a3b6;background:#fff}.talent-detail-search input{min-width:0;width:100%;border:0;outline:0;color:#111827;font-size:14px}.talent-detail-search input::placeholder{color:#9aa4b2}.talent-detail-nav{display:grid;gap:5px;padding:0 12px 24px}.talent-detail-nav button{height:47px;padding:0 17px;border:0;border-radius:8px;background:transparent;color:#4b5563;font-size:15px;font-weight:800;text-align:left;cursor:pointer}.talent-detail-nav button.active{background:#513ff2;color:#fff}.talent-detail-main{min-width:0;background:#f9fafb}.talent-detail-source{display:flex;align-items:center;gap:24px;min-height:73px;padding:0 36px;border-bottom:1px solid #e5e7eb;background:#fff}.talent-detail-source span{color:#5f6877;font-size:14px}.talent-detail-source strong{color:#6c55ff;font-size:14px;font-weight:800}.talent-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:36px;min-height:193px;padding:28px 50px 30px 36px;border-bottom:1px solid #e5e7eb;background:#fff}.talent-detail-hero>div{max-width:920px}.talent-detail-hero>div>span{display:block;color:#7a8494;font-size:14px;margin-bottom:10px}.talent-detail-hero h2{margin:0 0 13px;color:#111827;font-size:28px;font-weight:800;letter-spacing:0}.talent-detail-hero p{margin:0;color:#5f6877;font-size:14px;font-weight:600;line-height:1.65}.talent-detail-hero aside{flex:0 0 auto;padding-top:4px;text-align:right}.talent-detail-hero aside strong,.talent-detail-hero aside span{display:block}.talent-detail-hero aside strong{color:#111827;font-size:35px;font-weight:800;line-height:1}.talent-detail-hero aside span{margin-top:9px;color:#7a8494;font-size:14px}.talent-detail-filterbar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px;padding:0 34px;border-bottom:1px solid #e5e7eb;background:#fff}.talent-detail-filterbar>div{display:flex;align-items:center;gap:33px;overflow-x:auto}.talent-detail-filterbar button{flex:0 0 auto;height:36px;border:0;background:transparent;color:#5f6877;font-size:14px;font-weight:800;cursor:pointer}.talent-detail-filterbar button.active{border-bottom:2px solid #513ff2;color:#513ff2}.talent-detail-filterbar button:last-child{color:#513ff2}.talent-sort-button{min-width:96px;padding:0 8px;border:1px solid #dde2ea!important;border-radius:8px;background:#fff!important;color:#4b5563!important}.talent-detail-list{display:grid;gap:18px;padding:27px 50px 48px 36px}.talent-detail-card{position:relative;display:grid;grid-template-columns:51px minmax(0,1fr) auto auto;align-items:center;gap:17px;min-height:140px;padding:0 32px 0 26px;border:1px solid #e5e7eb;border-radius:16px;background:#fff}.talent-detail-avatar{display:inline-flex;align-items:center;justify-content:center;width:51px;height:51px;border-radius:50%;font-size:18px;font-weight:800}.talent-detail-avatar.blue{background:#ddecff;color:#2678ff}.talent-detail-avatar.purple{background:#f0dfff;color:#8a34ff}.talent-detail-avatar.green{background:#d7fae5;color:#00b84f}.talent-detail-avatar.yellow{background:#fff7b8;color:#d59b00}.talent-detail-avatar.pink{background:#ffe1f2;color:#ff1490}.talent-detail-person h3{margin:0;color:#1f2937;font-size:18px;font-weight:800}.talent-detail-person p{margin:9px 0 14px;color:#5f6877;font-size:15px}.talent-detail-person div{display:flex;flex-wrap:wrap;gap:8px}.talent-detail-person span{display:inline-flex;align-items:center;height:24px;padding:0 12px;border-radius:999px;background:#edf2ff;color:#4f54ff;font-size:12px;font-weight:800}.talent-detail-card aside{min-width:92px;text-align:right}.talent-detail-card aside strong,.talent-detail-card aside span{display:block}.talent-detail-card aside strong{color:#11b8d0;font-size:27px;font-weight:800;line-height:1}.talent-detail-card:nth-child(3) aside strong{color:#9aa4b2}.talent-detail-card aside span{margin-top:7px;color:#7a8494;font-size:12px}.talent-detail-card>svg{color:#a9b2c0}.candidate-timeline-layer .drawer-backdrop{background:#11182747}.candidate-timeline-drawer{position:relative;z-index:1;display:flex;flex-direction:column;width:min(764px,100vw);max-width:100vw;height:100vh;overflow:hidden;border-left:1px solid #e5e7eb;background:#fff;box-shadow:-16px 0 36px #0f172a1f;animation:access-slide-in .18s ease-out}.candidate-timeline-header{display:flex;align-items:center;justify-content:space-between;min-height:91px;padding:0 30px;border-bottom:1px solid #eeeeee;background:#fff}.candidate-timeline-header>div{display:flex;align-items:center;gap:17px}.candidate-timeline-header svg{color:#7452ff}.candidate-timeline-header h2{margin:0;color:#333;font-size:30px;font-weight:800;letter-spacing:0}.candidate-timeline-header button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:transparent;color:#bdbdbd;cursor:pointer}.candidate-timeline-header button svg{color:currentColor}.candidate-timeline-body{flex:1 1 auto;overflow-y:auto;padding:26px 31px 28px}.candidate-timeline-profile{display:flex;align-items:center;gap:29px;margin:0 0 31px}.candidate-timeline-profile>div:first-child{display:inline-flex;align-items:center;justify-content:center;width:98px;height:98px;border-radius:50%;background:#e0e0e0;color:#686868;font-size:33px;font-weight:800}.candidate-timeline-profile strong,.candidate-timeline-profile span{display:block}.candidate-timeline-profile strong{color:#333;font-size:26px;font-weight:800}.candidate-timeline-profile span{margin-top:12px;color:#999;font-size:19px}.candidate-timeline-list{position:relative;display:grid;gap:55px;margin:0;padding:0;list-style:none}.candidate-timeline-list:before{content:"";position:absolute;top:36px;bottom:36px;left:47px;width:3px;border-radius:999px;background:#e8e8e8}.candidate-timeline-list li{position:relative;display:grid;grid-template-columns:98px minmax(0,1fr);gap:0}.candidate-timeline-node{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:70px;height:70px;margin-top:4px;border-radius:50%;color:#fff}.candidate-timeline-node.success{background:#45b84f}.candidate-timeline-node.info{background:#229af0}.candidate-timeline-node.analysis{background:#7949f5}.candidate-timeline-node.muted{background:#bfbfbf}.candidate-timeline-list article{min-width:0}.candidate-timeline-list time{display:inline-flex;align-items:center;gap:6px;color:#999;font-size:18px;line-height:1.3}.candidate-timeline-list h3{margin:11px 0 17px;color:#333;font-size:25px;font-weight:800;letter-spacing:0}.candidate-timeline-list p{margin:0;min-height:94px;padding:30px;border-radius:8px;background:#f7f8fa;color:#666;font-size:20px;line-height:1.6}.candidate-timeline-footer{flex:0 0 auto;padding:29px 30px 27px;border-top:1px solid #e5e5e5;background:#fff}.candidate-timeline-footer button{display:inline-flex;align-items:center;justify-content:center;gap:14px;width:100%;height:78px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;color:#666;font-size:23px;font-weight:800;cursor:pointer}.candidate-interview-layer .drawer-backdrop{background:#11182747}.candidate-interview-drawer{position:relative;z-index:1;display:flex;flex-direction:column;width:min(764px,100vw);max-width:100vw;height:100vh;overflow:hidden;border-left:1px solid #e5e7eb;background:#fff;box-shadow:-16px 0 36px #0f172a1f;animation:access-slide-in .18s ease-out}.candidate-interview-header{display:flex;align-items:center;justify-content:space-between;min-height:91px;padding:0 30px;border-bottom:1px solid #eeeeee;background:#fff}.candidate-interview-header>div{display:flex;align-items:center;gap:17px}.candidate-interview-header svg{color:#5b62f4}.candidate-interview-header h2{margin:0;color:#333;font-size:30px;font-weight:800;letter-spacing:0}.candidate-interview-header button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:transparent;color:#bdbdbd;cursor:pointer}.candidate-interview-header button svg{color:currentColor}.candidate-interview-body{flex:1 1 auto;overflow-y:auto;padding:58px 31px 36px}.candidate-interview-profile{display:flex;align-items:center;gap:29px;min-height:158px;margin-bottom:43px;padding:28px 34px;border-radius:9px;background:#f7f8fa}.candidate-interview-profile>div:first-child{display:inline-flex;align-items:center;justify-content:center;width:86px;height:86px;border-radius:50%;background:#e3f3ff;color:#4d66ff;font-size:30px;font-weight:800}.candidate-interview-profile strong,.candidate-interview-profile span{display:block}.candidate-interview-profile strong{color:#333;font-size:26px;font-weight:800}.candidate-interview-profile span{margin-top:12px;color:#777;font-size:20px}.candidate-interview-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 21px}.candidate-interview-form label{display:flex;flex-direction:column;min-width:0}.candidate-interview-form label.wide{grid-column:1 / -1}.candidate-interview-form span{margin-bottom:10px;color:#333;font-size:20px;font-weight:500}.candidate-interview-form select,.candidate-interview-form input{width:100%;height:87px;padding:0 24px;border:1px solid #d8d8d8;border-radius:4px;background-color:#fff;color:#222;font-size:24px;outline:0}.candidate-interview-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#777777 50%),linear-gradient(135deg,#777777 50%,transparent 50%);background-position:calc(100% - 35px) 51%,calc(100% - 25px) 51%;background-size:10px 10px,10px 10px;background-repeat:no-repeat}.candidate-interview-form .link-value{color:#5164ff}.candidate-interview-footer{display:flex;align-items:center;justify-content:flex-end;gap:15px;height:89px;padding:0 26px;border-top:1px solid #e5e5e5;background:#fff}.candidate-interview-footer button{display:inline-flex;align-items:center;justify-content:center;width:103px;height:48px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;color:#666;font-size:15px;font-weight:800;cursor:pointer}.candidate-interview-footer button.primary{width:105px;border-color:#513ff2;background:#513ff2;color:#fff;box-shadow:0 3px 5px #4531cf59}.candidate-result-layer .drawer-backdrop{background:#11182747}.candidate-result-drawer{position:relative;z-index:1;display:flex;flex-direction:column;width:min(764px,100vw);max-width:100vw;height:100vh;overflow:hidden;border-left:1px solid #e5e7eb;background:#fff;box-shadow:-16px 0 36px #0f172a1f;animation:access-slide-in .18s ease-out}.candidate-result-header{display:flex;align-items:center;justify-content:space-between;min-height:91px;padding:0 30px;border-bottom:1px solid #eeeeee;background:#fff}.candidate-result-header>div{display:flex;align-items:center;gap:17px}.candidate-result-header svg{color:#5b62f4}.candidate-result-header h2{margin:0;color:#333;font-size:30px;font-weight:800;letter-spacing:0}.candidate-result-header button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:transparent;color:#bdbdbd;cursor:pointer}.candidate-result-header button svg{color:currentColor}.candidate-result-body{flex:1 1 auto;overflow-y:auto;padding:58px 31px 36px}.candidate-import-drawer .drawer-card>p{margin:8px 0 18px;color:var(--text-secondary);font-size:14px;line-height:1.7}.candidate-import-grid{margin-top:4px}.candidate-import-grid article{min-height:86px;padding:16px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb}.candidate-import-grid span{display:block;color:var(--text-tertiary);font-size:13px}.candidate-import-grid strong{display:block;margin-top:8px;color:var(--text-primary);font-size:15px;font-weight:800}.candidate-import-file{cursor:pointer}.candidate-import-file input{display:none}.candidate-import-file b{overflow:hidden;flex:1 1 auto;color:var(--text-secondary);font-size:14px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.candidate-import-file strong{flex:0 0 auto;height:28px;padding:0 12px;border-radius:4px;background:#523cff;color:#fff;font-size:13px;line-height:28px}.candidate-import-fields{display:grid;gap:10px;margin-top:18px}.candidate-import-fields span{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;align-items:center;min-height:42px;padding:10px 14px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb}.candidate-import-fields strong{color:var(--text-primary);font-size:14px;font-weight:800}.candidate-import-fields em{color:var(--text-tertiary);font-size:13px;font-style:normal}.candidate-import-checks{display:grid;gap:12px;margin:18px 0 0;padding:0;list-style:none}.candidate-import-checks li{position:relative;padding-left:20px;color:var(--text-secondary);font-size:14px;line-height:1.7}.candidate-import-checks li:before{position:absolute;top:10px;left:2px;width:7px;height:7px;border-radius:999px;background:var(--purple);content:""}.candidate-import-note{margin:0;padding:12px 14px;border-radius:6px;background:#fff7ed;color:#9a3412;font-size:13px;line-height:1.6}.candidate-import-cancel{height:34px;padding:0 16px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;color:#4a4a4a;font-size:13px;font-weight:700;cursor:pointer}.candidate-import-submit{width:112px}.candidate-result-profile{display:flex;align-items:center;gap:29px;min-height:158px;margin-bottom:58px;padding:28px 34px;border-radius:9px;background:#f7f8fa}.candidate-result-profile>div:first-child{display:inline-flex;align-items:center;justify-content:center;width:86px;height:86px;border-radius:50%;background:#e3f3ff;color:#4d66ff;font-size:30px;font-weight:800}.candidate-result-profile strong,.candidate-result-profile span{display:block}.candidate-result-profile strong{color:#333;font-size:26px;font-weight:800}.candidate-result-profile span{margin-top:12px;color:#777;font-size:20px}.candidate-result-summary h3{margin:0 0 42px;color:#111;font-size:29px;font-weight:500;letter-spacing:0}.candidate-result-info{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:46px 46px}.candidate-result-info p{margin:0;color:#222;font-size:21px;line-height:1.4}.candidate-result-info p.wide{grid-column:1 / -1}.candidate-result-info span{margin-right:10px;color:#999}.candidate-result-form{display:grid;gap:18px;margin-top:36px}.candidate-result-form label,.candidate-result-action-panel label{display:flex;flex-direction:column;min-width:0}.candidate-result-form label>span,.candidate-result-action-panel label>span{margin-bottom:8px;color:#333;font-size:15px;font-weight:700}.candidate-result-form select,.candidate-result-action-panel select,.candidate-result-action-panel input,.candidate-result-action-panel textarea{width:100%;min-height:44px;padding:0 13px;border:1px solid #d8d8d8;border-radius:6px;background:#fff;color:#222;font-size:14px;outline:0}.candidate-result-action-panel textarea{min-height:92px;padding:12px 13px;line-height:1.55;resize:vertical}.candidate-result-action-group{margin:0;padding:0;border:0}.candidate-result-action-group legend{margin-bottom:8px;color:#333;font-size:15px;font-weight:700}.candidate-result-action-group>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.candidate-result-action-group button{min-height:42px;border:1px solid #d8d8d8;border-radius:6px;background:#fff;color:#475569;font-size:14px;font-weight:800;cursor:pointer}.candidate-result-action-group button.active{border-color:#513ff2;background:#f1efff;color:#513ff2}.candidate-result-action-group button.danger.active{border-color:#ef4444;background:#fef2f2;color:#dc2626}.candidate-result-action-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc}.candidate-result-action-panel .wide{grid-column:1 / -1}.candidate-result-flow-note{margin:0;padding:12px 14px;border-radius:8px;background:#f1f5f9;color:#475569;font-size:13px;line-height:1.6}.candidate-offer-followup{display:grid;gap:22px;padding:22px;border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc}.candidate-offer-followup header span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:13px;font-weight:800}.candidate-offer-followup h3{margin:14px 0 8px;color:#111827;font-size:24px;font-weight:800;letter-spacing:0}.candidate-offer-followup p{margin:0;color:#64748b;font-size:14px;line-height:1.7}.candidate-offer-followup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.candidate-offer-followup-grid label{display:flex;flex-direction:column;min-width:0}.candidate-offer-followup-grid label.wide{grid-column:1 / -1}.candidate-offer-followup-grid span{margin-bottom:8px;color:#334155;font-size:14px;font-weight:800}.candidate-offer-followup-grid input,.candidate-offer-followup-grid select,.candidate-offer-followup-grid textarea{width:100%;min-height:44px;padding:0 13px;border:1px solid #d8d8d8;border-radius:6px;background:#fff;color:#222;font-size:14px;outline:0}.candidate-offer-followup-grid textarea{min-height:116px;padding:12px 13px;line-height:1.55;resize:vertical}.candidate-result-comment{display:flex;flex-direction:column;margin-top:58px}.candidate-result-comment span{margin-bottom:8px;color:#333;font-size:19px;font-weight:500}.candidate-result-comment textarea{width:100%;min-height:157px;padding:28px 24px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;color:#5164ff;font-size:22px;line-height:1.5;resize:none;outline:0}.candidate-result-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;height:89px;padding:0 26px;border-top:1px solid #e5e5e5;background:#fff}.candidate-result-footer button{display:inline-flex;align-items:center;justify-content:center;min-width:105px;height:48px;padding:0 22px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;color:#666;font-size:15px;font-weight:800;cursor:pointer}.candidate-result-footer button.primary{min-width:113px;border-color:#513ff2;background:#513ff2;color:#fff;box-shadow:0 3px 5px #4531cf59}.jd-match-page{min-height:calc(100vh - 73px);padding:43px 48px 56px 36px;background:#fff}.jd-match-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:27px}.jd-match-header h1{margin:0;color:#222;font-size:24px;font-weight:800;letter-spacing:0}.jd-match-header p{margin:10px 0 0;color:#5f6877;font-size:14px}.jd-match-header>span{display:inline-flex;align-items:center;min-height:40px;padding:0 8px;border:1px solid #d8dde6;border-radius:9px;color:#7a8494;font-size:14px;background:#fff}.jd-match-layout{display:grid;grid-template-columns:minmax(360px,41.5%) minmax(0,1fr);gap:18px}.jd-recommend-panel,.jd-match-detail{border:1px solid #e5e7eb;border-radius:12px;background:#fff}.jd-recommend-panel{min-height:677px;padding:29px 26px}.jd-recommend-panel>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:29px}.jd-recommend-panel h2{margin:0;color:#222;font-size:20px;font-weight:800}.jd-recommend-panel>header span{display:inline-flex;align-items:center;justify-content:center;min-width:56px;height:24px;border-radius:8px;background:#513ff2;color:#fff;font-size:13px;font-weight:800}.jd-recommend-list{display:grid;gap:18px}.jd-recommend-card{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;min-height:130px;padding:16px 17px;border:1px solid #e1e4eb;border-radius:13px;background:#fff;text-align:left}.jd-recommend-card.active{border:2px solid #6655ff;background:#eef2ff}.jd-recommend-check{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:0;color:#513ff2;font-size:13px;font-weight:800;cursor:pointer}.jd-recommend-check input{width:18px;height:18px;accent-color:#513ff2;cursor:pointer}.jd-recommend-select{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.jd-recommend-avatar{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:#dfe6ff;color:#4d66ff;font-size:19px;font-weight:800}.jd-recommend-info{min-width:0}.jd-recommend-info strong{display:flex;align-items:baseline;gap:10px;color:#1f2937;font-size:19px;font-weight:800}.jd-recommend-info em{color:#0fbd58;font-size:20px;font-style:normal;font-weight:500}.jd-recommend-card:not(.active) .jd-recommend-info em{color:#ff8a00}.jd-recommend-card:nth-child(3) .jd-recommend-info em{color:#ff5a1f}.jd-recommend-info small{display:block;margin-top:9px;color:#5f6877;font-size:14px}.jd-recommend-info b{display:inline-flex;align-items:center;min-height:25px;margin-top:13px;padding:0 10px;border-radius:8px;background:#eef0f4;color:#111827;font-size:12px;font-weight:800}.jd-match-detail{min-height:677px;padding:26px}.jd-candidate-head{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;min-height:131px;padding-bottom:26px;border-bottom:1px solid #e5e7eb}.jd-candidate-identity{display:flex;gap:18px}.jd-candidate-identity>span{display:inline-flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:50%;background:#dfe6ff;color:#4d66ff;font-size:25px;font-weight:800}.jd-candidate-identity h2{margin:0;color:#222;font-size:22px;font-weight:800}.jd-candidate-identity p{margin:9px 0 21px;color:#5f6877;font-size:16px;font-weight:800}.jd-candidate-identity div div{display:flex;align-items:center;gap:16px}.jd-candidate-identity b{display:inline-flex;align-items:center;justify-content:center;min-width:88px;height:25px;border-radius:6px;background:#d8f8e2;color:#0f9c48;font-size:13px;font-weight:800}.jd-candidate-identity button{display:inline-flex;align-items:center;gap:2px;border:0;background:transparent;color:#513ff2;font-size:14px;font-weight:800;cursor:pointer}.jd-candidate-head aside{text-align:right}.jd-candidate-head aside span,.jd-candidate-head aside strong{display:block}.jd-candidate-head aside span{color:#7a8494;font-size:14px}.jd-candidate-head aside strong{margin-top:11px;color:#513ff2;font-size:41px;font-weight:800;line-height:1}.jd-score-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:26px}.jd-score-grid article{min-height:105px;padding:13px 13px 12px;border:1px solid #b9f0ca;border-radius:9px;background:#effcf4}.jd-score-grid article.yellow{border-color:#f6df7c;background:#fffceb}.jd-score-grid svg{color:#5f6877}.jd-score-grid span,.jd-score-grid strong{display:block}.jd-score-grid span{margin-top:4px;color:#5f6877;font-size:13px;font-weight:800}.jd-score-grid strong{margin-top:6px;color:#0fbd58;font-size:28px;font-weight:800;line-height:1}.jd-score-grid article.yellow strong{color:#d28a00}.jd-ai-logic{min-height:264px;margin-top:25px;padding:28px 27px 23px;border-radius:12px;background:linear-gradient(115deg,#342386,#421e83 55%,#68169b);color:#fff}.jd-ai-logic h3{display:flex;align-items:center;gap:10px;margin:0 0 22px;color:#fff;font-size:20px;font-weight:800}.jd-logic-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.jd-logic-grid strong{display:block;margin-bottom:14px;color:#67f5b7;font-size:14px;font-weight:800}.jd-logic-grid strong.skill-title{margin-top:23px;color:#ff8bb5}.jd-logic-grid p{margin:0 0 13px;color:#fff;font-size:14px}.jd-logic-grid p:before{content:"✓";margin-right:8px;color:#53e28e}.jd-logic-grid p.risk:before{content:"○";color:#ff5b72}.jd-missing-skills{display:flex;gap:10px}.jd-missing-skills span{display:inline-flex;align-items:center;justify-content:center;min-width:132px;height:24px;border-radius:8px;background:#a720d7b8;color:#fff;font-size:12px;font-weight:800}.jd-compare-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:25px;padding-top:29px;border-top:1px solid #e5e7eb}.jd-compare-strip span,.jd-compare-strip button{display:inline-flex;align-items:center;color:#513ff2;font-size:14px;font-weight:800}.jd-compare-strip span{gap:8px}.jd-compare-strip button{gap:5px;border:0;background:transparent;cursor:pointer}.jd-compare-strip button:disabled{color:#94a3b8;cursor:not-allowed}.jd-compare-page{min-height:calc(100vh - 73px);padding:11px 32px 32px;background:#fff}.jd-compare-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:90px;padding:0 32px 0 40px;border:1px solid #eeeeee;border-bottom:0;border-radius:12px 12px 0 0;background:#fff;box-shadow:0 2px 12px #0000000a}.jd-compare-header>div{display:flex;align-items:center;gap:24px}.jd-compare-header>div>button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;background:transparent;color:#5f6877;cursor:pointer}.jd-compare-header h1{margin:0;color:#222;font-size:21px;font-weight:800}.jd-compare-header p{margin:7px 0 0;color:#999;font-size:13px}.jd-competition-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:179px;height:37px;padding:0 12px;border:1px solid #5b62f4;border-radius:4px;background:#fff;color:#4f54ff;font-size:14px;font-weight:800;cursor:pointer}.jd-compare-table{display:grid;grid-template-columns:200px repeat(3,minmax(0,1fr));margin:34px 32px 0;border:1px solid #e5e7eb;border-radius:12px 12px 0 0;overflow:hidden;background:#fff}.jd-compare-cell,.jd-compare-candidate,.jd-compare-row-label,.jd-compare-score-cell,.jd-compare-resource-cell,.jd-compare-text-cell,.jd-compare-action-cell{border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;background:#fff}.jd-compare-axis{min-height:215px;padding:31px 25px;color:#999;font-size:14px;background:#fbfcff}.jd-compare-candidate{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:215px;text-align:center}.jd-compare-candidate>span{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#e5e5e5;color:#666;font-size:26px;font-weight:800}.jd-compare-candidate h2{margin:17px 0 8px;color:#333;font-size:16px;font-weight:800}.jd-compare-candidate p{margin:0 0 17px;color:#999;font-size:13px}.jd-compare-candidate strong{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:30px;border-radius:999px;font-size:14px;font-weight:800}.jd-compare-candidate strong.green{background:#dff8e6;color:#17883a}.jd-compare-candidate strong.orange{background:#fff0df;color:#ff7500}.jd-compare-row-label{display:flex;align-items:center;gap:12px;min-height:124px;padding:0 27px;color:#222;font-size:14px;font-weight:800;background:#fbfcff}.jd-compare-row-label.empty{min-height:136px}.jd-compare-score-cell{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:124px;padding:0 25px}.jd-compare-score-cell strong{color:#333;font-size:34px;font-weight:800;line-height:1}.jd-compare-score-cell div{width:100%;height:8px;margin-top:26px;border-radius:999px;background:#dedede;overflow:hidden}.jd-compare-score-cell span{display:block;height:100%;border-radius:inherit;background:#5966ff}.jd-compare-resource-cell{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:126px;text-align:center}.jd-compare-resource-cell strong{color:#333;font-size:34px;font-weight:800;line-height:1}.jd-compare-resource-cell p{margin:20px 0 0;color:#999;font-size:13px}.jd-compare-text-cell{min-height:128px;padding:21px 25px 18px}.jd-compare-text-cell p{margin:0 0 11px;color:#666;font-size:13px;line-height:1.45}.jd-compare-missing-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.jd-compare-missing-tags span{display:inline-flex;align-items:center;min-height:24px;padding:0 12px;border-radius:999px;background:#ffe9ec;color:#e60012;font-size:12px}.jd-compare-action-cell{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:136px;padding:24px}.jd-compare-action-cell button{width:100%;height:49px;border:0;border-radius:4px;background:#5966f2;color:#fff;font-size:14px;font-weight:800;box-shadow:0 3px 4px #3d4ab459;cursor:pointer}.jd-compare-action-cell a{margin-top:22px;color:#4f54ff;font-size:14px;font-weight:800;text-decoration:none}.resume-detail-page{min-height:calc(100vh - 73px);background:#fff}.resume-archive-header{display:flex;align-items:center;justify-content:space-between;height:75px;padding:0 32px;border-bottom:1px solid #eeeeee;background:#fff}.resume-archive-title,.resume-archive-actions{display:flex;align-items:center}.resume-archive-title{gap:15px}.resume-archive-back,.resume-archive-actions button{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:#777;cursor:pointer}.resume-archive-title h1{margin:0;color:#222;font-size:18px;font-weight:800;line-height:1.3}.resume-archive-title p{margin:3px 0 0;color:#999;font-size:12px}.resume-archive-actions{gap:16px}.resume-archive-actions button:first-child{gap:8px;width:110px;height:34px;border:1px solid #d9d9d9;border-radius:4px;color:#666;font-size:13px}.resume-archive-grid{display:grid;grid-template-columns:30% minmax(480px,1fr) 31%;min-height:calc(100vh - 148px)}.resume-profile-panel,.resume-stream-panel{background:#f8f9fb}.resume-profile-panel{padding:21px 23px 32px;border-right:1px solid #eeeeee}.resume-profile-card{display:grid;justify-items:center;gap:10px;padding-bottom:24px}.archive-avatar{width:64px;height:64px;background:#5b62f4;font-size:29px;font-weight:800}.resume-profile-card h2{margin:0;color:#333;font-size:20px;font-weight:800}.resume-profile-card em{display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0 12px;border-radius:999px;background:#e8f7e7;color:#228c39;font-size:12px;font-style:normal}.resume-contact-list{display:grid;gap:12px;margin-bottom:18px}.resume-contact-list span{display:flex;align-items:center;gap:10px;color:#777;font-size:12px}.resume-contact-list svg{color:#999}.resume-contact-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:32px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;color:#5b62f4;font-size:12px;font-weight:700;cursor:pointer}.resume-confidence{margin-top:30px}.resume-confidence span,.resume-owner-box>span,.resume-source-box>span{display:block;color:#999;font-size:12px}.resume-confidence strong{display:block;margin-top:12px;color:#46ad4f;font-size:24px;font-weight:800}.resume-confidence div{height:6px;margin-top:13px;border-radius:999px;background:#46ad4f}.resume-parse-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.resume-parse-facts span{display:grid;place-items:center;min-height:60px;border:1px solid #dddddd;border-radius:4px;background:#fbfbfb;color:#666;font-size:12px;line-height:1.7}.resume-parse-facts strong{color:#333;font-size:12px}.resume-owner-box,.resume-source-box{margin-top:26px}.resume-owner-box div{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center;margin-top:10px;padding:14px 12px;border-radius:7px;background:#e8eafb;color:#5b62f4}.resume-owner-box svg{grid-row:span 2}.resume-owner-box strong,.resume-owner-box em{display:block;font-size:12px;font-style:normal}.resume-source-box p{margin:10px 0 0;padding:13px 12px;border-radius:6px;background:#f4f4f4;color:#777;font-size:12px}.resume-archive-main{padding:24px 23px 0;overflow:hidden}.resume-match-card{min-height:154px;padding:25px 25px 24px;border-radius:10px;background:#5235f4;color:#fff;box-shadow:0 2px 4px #3626a259}.resume-match-card h2{display:flex;align-items:center;gap:9px;margin:0 0 22px;font-size:15px;font-weight:800}.resume-match-card div{display:grid;grid-template-columns:1fr .8fr 1fr .8fr;gap:26px}.resume-match-card strong,.resume-match-card span{display:block}.resume-match-card strong{font-size:15px;font-weight:800}.resume-match-card article:nth-child(2n) strong{font-size:22px}.resume-match-card span{margin-top:6px;color:#ffffffbf;font-size:12px}.resume-archive-section{margin-top:26px}.resume-archive-section h2{position:relative;margin:0 0 16px;padding-left:15px;color:#333;font-size:15px;font-weight:800}.resume-archive-section h2:before{content:"";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%;background:#5b62f4}.resume-highlight-tags{display:flex;flex-wrap:wrap;gap:10px 12px}.resume-highlight-tags span{display:inline-flex;align-items:center;min-height:31px;padding:0 13px;border-radius:999px;background:#e7f2ff;color:#2f7dff;font-size:12px}.resume-highlight-tags span:nth-child(2),.resume-highlight-tags span:nth-child(8){background:#f5e7ff;color:#8a36ce}.resume-highlight-tags span:nth-child(3){background:#fff0d9;color:#ff6b21}.resume-highlight-tags span:nth-child(4),.resume-highlight-tags span:nth-child(5),.resume-highlight-tags span:nth-child(6){background:#e9f7e7;color:#358b3d}.resume-highlight-tags span:nth-child(7){background:#ffe7f0;color:#d92d75}.resume-highlight-tags span:nth-child(9){background:#dff5f2;color:#159484}.resume-work-item+.resume-work-item{margin-top:18px}.resume-work-item div{display:flex;align-items:center;justify-content:space-between;gap:16px}.resume-work-item strong,.resume-work-item span,.resume-work-item time,.resume-work-item p{display:block}.resume-work-item strong{color:#222;font-size:15px;font-weight:800}.resume-work-item time{color:#999;font-size:12px}.resume-work-item span{margin-top:9px;color:#666;font-size:13px}.resume-work-item p{margin:9px 0 0;color:#666;font-size:13px;line-height:1.85}.resume-education-card{width:238px;min-height:105px;padding:16px 24px;border:1px solid #eeeeee;border-radius:10px;background:#fff;box-shadow:0 2px 3px #00000038}.resume-education-card span,.resume-education-card p{color:#777;font-size:12px}.resume-education-card strong{display:block;margin-top:9px;color:#333;font-size:18px}.resume-education-card p{margin:8px 0 0}.resume-ocr-card{margin-top:22px;padding:27px 25px 18px;border-radius:10px 10px 0 0;background:#1f2c40;color:#dbe3f0}.resume-ocr-card>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.resume-ocr-card h2{margin:0;color:#9faec2;font-size:14px}.resume-ocr-card span{display:inline-flex;align-items:center;height:25px;padding:0 16px;border-radius:999px;background:#46556b;color:#c4cfdd;font-size:12px}.resume-ocr-card pre{margin:18px 0 0;color:#e8edf5;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.8;white-space:pre-wrap}.resume-stream-panel{padding:34px 37px 32px;border-left:1px solid #eeeeee}.resume-stream-card{padding-bottom:39px;border-bottom:1px solid #dddddd}.resume-stream-card h2,.resume-quick-actions h2{margin:0;color:#999;font-size:14px;font-weight:700}.resume-stream-list{position:relative;display:grid;gap:25px;margin-top:29px;padding-left:25px}.resume-stream-list:before{content:"";position:absolute;top:10px;bottom:20px;left:8px;width:1px;background:#ddd}.resume-stream-list article{position:relative}.resume-stream-list article:before{content:"";position:absolute;top:5px;left:-25px;width:10px;height:10px;border-radius:50%;background:#ddd}.resume-stream-list article.active:before{background:#5b62f4}.resume-stream-list time,.resume-stream-list strong,.resume-stream-list p{display:block}.resume-stream-list time,.resume-stream-list p{color:#999;font-size:13px}.resume-stream-list strong{margin-top:6px;color:#333;font-size:15px;font-weight:800}.resume-stream-list p{margin:7px 0 0}.resume-quick-actions{margin-top:32px}.resume-quick-actions button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;height:48px;margin-top:16px;border:1px solid #dddddd;border-radius:4px;background:#fff;color:#666;font-size:15px;font-weight:800;cursor:pointer}.resume-quick-actions button.primary{border:0;background:#5235f4;color:#fff;box-shadow:0 2px 4px #3626a259}.resume-quick-actions button.danger{border:0;background:#fff0f0;color:#ff3b30}.ai-summary p{color:#666;font-size:var(--text-sm);line-height:1.7}.timeline-list{display:grid;gap:18px}.timeline-list section{border-left:3px solid #4f46f6;padding-left:14px}.timeline-list strong,.timeline-list span{display:block}.timeline-list span,.timeline-list p{color:#777;font-size:var(--text-sm)}.resume-drawer{position:relative;z-index:1;width:min(760px,100vw);max-width:100vw;height:100vh;overflow:hidden;border-left:1px solid #e5e7eb;background:#fff;box-shadow:-16px 0 36px #0f172a1f}.resume-drawer-header{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;min-height:86px;padding:18px 26px;border-bottom:1px solid #eeeeee}.resume-drawer-header h2{margin:0;font-size:var(--modal-title)}.resume-drawer-header p{margin:4px 0 0;color:#8a8a8a;font-size:var(--modal-body)}.resume-drawer-body{height:calc(100vh - 86px);overflow-y:auto;padding:22px 30px 34px}.upload-drawer{width:min(764px,100vw)}.upload-drawer-header{align-items:center;min-height:89px;padding:0 27px 0 25px}.upload-drawer-header h2{color:#333;font-size:22px;font-weight:800}.upload-title-icon{color:#5b62f4}.upload-drawer .close-detail{color:#bdbdbd}.upload-drawer-body{height:calc(100vh - 89px);padding:0}.upload-drawer-content{display:flex;flex-direction:column;min-height:100%}.upload-drawer-main{flex:1 1 auto;padding:22px 34px 0}.reparse-drawer{width:min(764px,100vw)}.reparse-drawer-header{align-items:center;min-height:91px;padding:0 30px 0 31px}.reparse-drawer-header h2{color:#333;font-size:30px;font-weight:800;letter-spacing:0}.reparse-title-icon{margin-top:2px}.reparse-drawer .close-detail{color:#bdbdbd}.reparse-drawer-body{height:calc(100vh - 91px);padding:0}.reparse-drawer-content{display:flex;flex-direction:column;min-height:100%}.reparse-drawer-main{flex:1 1 auto;padding:32px 35px 0;overflow-y:auto}.reparse-alert{display:flex;align-items:center;gap:18px;min-height:160px;padding:24px 23px;border:1px solid #ffcf80;border-radius:8px;background:#fffaf0}.reparse-alert svg{flex:0 0 auto}.reparse-alert strong,.reparse-alert p{display:block}.reparse-alert strong{color:#e84d19;font-size:19px;font-weight:800}.reparse-alert p{margin:13px 0 0;color:#666;font-size:14px;line-height:1.7}.reparse-section{margin-top:36px}.reparse-section h3{display:flex;align-items:center;gap:14px;margin:0 0 24px;color:#333;font-size:23px;font-weight:800}.reparse-section h3 svg{color:#5b45ff}.reparse-target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.reparse-target-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:14px;min-height:88px;padding:0 24px;border:2px solid #dcdcdc;border-radius:8px;background:#fff}.reparse-target-card.selected{border-color:#513ff2}.reparse-target-card.threshold{grid-template-columns:auto minmax(0,1fr) auto}.reparse-target-card input{width:19px;height:19px;accent-color:#513ff2}.reparse-target-card strong,.reparse-target-card em{display:block}.reparse-target-card strong{color:#333;font-size:18px;font-weight:800;line-height:1.4}.reparse-target-card em{margin-top:5px;color:#999;font-size:13px;font-style:normal;line-height:1.4}.reparse-threshold{display:inline-flex;align-items:center;justify-content:center;min-width:75px;height:40px;padding:0 10px;border:1px solid #cfcfcf;border-radius:4px;color:#513ff2;font-size:20px;font-weight:800}.reparse-threshold b{margin-left:9px;font-size:18px}.reparse-range-options{display:flex;flex-wrap:wrap;gap:11px}.reparse-range-options button{min-width:112px;height:40px;padding:0 18px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;color:#666;font-size:14px;font-weight:800;cursor:pointer}.reparse-range-options button.active{border-color:#513ff2;background:#513ff2;color:#fff;box-shadow:0 2px 4px #4531cf59}.reparse-impact-card{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:121px;margin-top:45px;padding:23px 24px;border:1px solid #dddddd;border-radius:8px;background:#fff}.reparse-impact-card span,.reparse-impact-card p{display:block;color:#777;font-size:14px}.reparse-impact-card p{margin:19px 0 0;color:#999}.reparse-impact-card strong{flex:0 0 auto;color:#222;font-size:34px;font-weight:800;white-space:nowrap}.reparse-drawer-footer{display:flex;align-items:center;justify-content:flex-end;gap:16px;height:89px;padding:0 26px;border-top:1px solid #e5e5e5;background:#fff}.reparse-cancel-button,.reparse-start-button{display:inline-flex;align-items:center;justify-content:center;height:45px;border-radius:4px;font-size:15px;font-weight:800;cursor:pointer}.reparse-cancel-button{width:118px;border:1px solid #d9d9d9;background:#fff;color:#666}.reparse-start-button{gap:12px;width:220px;border:0;background:#513ff2;color:#fff;box-shadow:0 3px 5px #4531cf59}.explain-drawer{width:min(764px,100vw)}.explain-drawer-header{align-items:center;min-height:91px;padding:0 32px 0 30px}.explain-drawer-header h2{color:#333;font-size:25px;font-weight:800;letter-spacing:0}.explain-drawer-header p{margin-top:8px;color:#999;font-size:14px}.explain-title-icon{margin-top:0}.explain-drawer .close-detail{color:#bdbdbd}.explain-drawer-body{height:calc(100vh - 91px);padding:0;overflow:hidden}.explain-drawer-content{display:grid;grid-template-columns:37% minmax(0,1fr);min-height:100%}.explain-inference-panel{display:flex;flex-direction:column;padding:27px;background:#fbfcff}.explain-inference-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:42px}.explain-inference-title h3{margin:0;color:#333;font-size:22px;font-weight:800}.explain-inference-title span{display:inline-flex;align-items:center;justify-content:center;min-width:96px;height:24px;padding:0 14px;border-radius:999px;background:#e5f6e5;color:#2f8a37;font-size:14px;font-weight:800;white-space:nowrap}.explain-inference-panel section{position:relative;margin-top:38px}.explain-inference-panel section>span,.explain-inference-panel section>strong{display:block}.explain-inference-panel section>span{color:#999;font-size:14px;line-height:1.5}.explain-inference-panel section>strong{margin-top:15px;color:#333;font-size:20px;font-weight:800}.explain-inference-panel section>svg{position:absolute;top:0;right:35px}.explain-tags{display:flex;flex-wrap:wrap;gap:13px;margin-top:20px}.explain-tags em{display:inline-flex;align-items:center;min-height:49px;padding:0 20px;border-radius:999px;background:#e4f3ff;color:#147ad6;font-size:15px;font-style:normal}.explain-single-reparse-button{width:100%;margin-top:auto}.explain-log-panel{background:#1f2c40;color:#dce4f0;overflow-y:auto}.explain-log-inner{padding:29px 24px 40px}.explain-log-inner h3{display:flex;align-items:center;gap:20px;margin:0 0 36px;color:#65a9ff;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:18px;font-weight:800}.explain-log-inner h3:before{content:"";width:36px;height:3px;background:#16c79a}.explain-log-inner pre{margin:0;color:#e1e7f0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:16px;line-height:1.55;white-space:pre-wrap}.explain-log-inner pre::selection{background:#65a9ff47}.explain-log-inner p{margin:34px 0 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:#7f8da3;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:15px;line-height:1.6}.exception-drawer{width:min(766px,100vw)}.exception-drawer .resume-drawer-header{min-height:82px;padding:25px 28px 0}.exception-drawer .resume-drawer-header h2{font-size:22px;font-weight:800}.exception-title-icon{margin-top:3px}.exception-drawer .close-detail{color:#b8b8b8}.exception-drawer-body{height:calc(100vh - 82px);padding:0}.exception-drawer-content{display:grid;grid-template-columns:305px 1fr;grid-template-rows:1fr 91px;min-height:100%}.exception-preview{padding:35px 32px 31px;border-right:1px solid #e5e7eb;background:#f6f7f9}.exception-preview p{margin:0 0 26px;color:#555;font-size:14px}.exception-file-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;height:657px;border-radius:7px;background:#e6e9ee;color:#9fa3aa;text-align:center}.exception-file-preview span{display:block;margin-top:34px;font-size:15px;line-height:1.55}.exception-preview button{display:inline-flex;align-items:center;justify-content:center;gap:16px;width:239px;height:40px;margin-top:24px;border:1px solid #d9d9d9;border-radius:4px;background:#fff;color:#666;font-size:14px}.exception-preview button svg{color:#666}.exception-manual-form{padding:33px 34px 31px}.exception-warning{display:flex;align-items:flex-start;gap:14px;min-height:74px;margin-bottom:25px;padding:15px 17px;border:1px solid #ffb3ad;border-radius:4px;background:#fff0ef;color:#ff3b30;font-size:15px;font-weight:700;line-height:1.55}.exception-warning svg{flex:0 0 auto;margin-top:2px}.exception-field{display:block;margin-top:23px}.exception-field span{display:block;margin-bottom:7px;color:#333;font-size:14px}.exception-field em{color:#ff3b30;font-style:normal}.exception-field input,.exception-field select,.exception-field div{width:100%;height:49px;border:1px solid #d8d8d8;border-radius:4px;background:#fbfbfb;color:#222;font-size:16px}.exception-field input,.exception-field select{padding:0 13px;outline:0}.exception-field div{display:flex;align-items:center;gap:13px;padding:0 13px}.exception-field div input{height:auto;padding:0;border:0;background:transparent}.exception-field svg{flex:0 0 auto;color:#bcbcbc}.exception-field select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.exception-form-error{margin:8px 0 0;font-size:13px}.exception-footer{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding:0 26px;border-top:1px solid #e5e7eb;background:#fff}.exception-footer>div{display:flex;align-items:center;gap:16px}.exception-invalid,.exception-cancel,.exception-complete{display:inline-flex;align-items:center;justify-content:center;height:40px;border-radius:4px;font-size:14px;font-weight:700;cursor:pointer}.exception-invalid{gap:8px;width:141px;border:0;background:#ffdede;color:#ff3b30}.exception-cancel{width:100px;border:1px solid #d9d9d9;background:#fff;color:#666}.exception-complete{gap:9px;width:121px;border:0;background:#5b45ff;color:#fff;box-shadow:0 3px 5px #4531cf59}.access-modal-layer{align-items:stretch;justify-content:flex-end;padding:0}.access-modal{position:relative;z-index:1;display:grid;grid-template-rows:88px minmax(0,1fr) 89px;width:min(764px,100vw);height:100vh;overflow:hidden;border-left:1px solid #e5e7eb;background:#fff;box-shadow:-16px 0 36px #0f172a29;animation:access-slide-in .18s ease-out}@keyframes access-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.access-modal-header{display:flex;align-items:center;justify-content:space-between;padding:0 28px 0 34px;border-bottom:1px solid #e5e5e5}.access-modal-title{display:inline-flex;align-items:center;gap:13px;min-width:0}.access-modal-title h2{margin:0;color:#333;font-size:22px;font-weight:800;letter-spacing:0;line-height:1.25}.access-modal-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;background:transparent;color:#999;cursor:pointer}.access-modal-body{overflow-y:auto;padding:33px 33px 34px}.access-section+.access-section{margin-top:34px}.access-section-title{display:flex;align-items:center;gap:14px;margin-bottom:26px}.access-section-title h3{margin:0;color:#333;font-size:18px;font-weight:800;line-height:1.25}.access-mail-icon{color:#7657ff}.access-api-icon{color:#00b8d9}.access-card{min-height:291px;padding:25px 24px 27px;border:1px solid #e2e2ea;border-radius:7px;background:#fbfbff}.access-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:27px}.access-card-top strong{display:block;color:#333;font-size:15px;font-weight:800;line-height:1.4}.access-card-top p,.access-card-description{margin:6px 0 0;color:#999;font-size:13px;line-height:1.65}.access-toggle{position:relative;flex:0 0 auto;width:38px;height:21px;margin-top:9px;padding:0;border:0;border-radius:999px;background:#b59aff;cursor:pointer}.access-toggle span{position:absolute;top:1px;right:0;width:21px;height:21px;border-radius:50%;background:#7657ff;box-shadow:0 2px 5px #5b45ff59}.access-field{display:grid;gap:9px;color:#333;font-size:14px}.access-field div{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:15px}.access-field input{width:100%;height:49px;min-width:0;padding:0 14px;border:1px solid #d8d8df;border-radius:4px;background:#fff;color:#333;font-size:16px;outline:0}.access-field button{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:44px;margin-top:5px;border:1px solid #d8d8df;border-radius:4px;background:#fff;color:#333;font-size:14px;cursor:pointer}.access-field input:disabled{background:#f5f5f8;color:#999}.access-code-field{margin-top:17px}.access-field-hint{margin:11px 0 0;color:#777;font-size:13px;line-height:1.6}.access-copy-button{color:#7657ff!important;border-color:#7657ff!important}.access-bound-block{margin-top:25px;color:#333;font-size:14px}.access-bound-block span{display:block;margin-bottom:23px}.access-bound-block p{display:flex;align-items:center;gap:13px;margin:0;color:#333;font-size:16px;line-height:1.35;overflow-wrap:anywhere}.access-bound-block .access-empty-bound{color:#999}.access-bound-block button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:24px;height:24px;padding:0;border:0;background:transparent;color:#999;cursor:pointer}.api-card{min-height:248px;padding-top:24px}.api-card .access-field{margin-top:10px}.api-card .access-field div{grid-template-columns:minmax(0,1fr) 80px}.api-card .access-field input{color:#999}.api-bound{margin-top:26px}.access-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:0 24px;border-top:1px solid #e5e5e5;background:#fff}.access-cancel-button,.access-save-button{display:inline-flex;align-items:center;justify-content:center;height:40px;border-radius:4px;font-size:14px;cursor:pointer}.access-cancel-button{width:100px;border:1px solid #d9d9d9;background:#fff;color:#666}.access-save-button{width:121px;border:0;background:#5b45ff;color:#fff;font-weight:700;box-shadow:0 3px 5px #4531cf59}.modal-stack{display:grid;gap:18px}.modal-card,.upload-dropzone,.warning-box,.exception-file,.choice-row{border:1px solid #e8e8e8;border-radius:10px;background:#fff;padding:18px}.modal-card.warm,.warning-box{background:#fff8df}.warning-box.danger{background:#fff1f1;color:#9a1d1d}.modal-card-title{display:flex;align-items:center;gap:10px}.modal-card-title h3,.modal-card h3{margin:0;font-size:var(--modal-section-title)}.modal-card p,.modal-note{color:#666;font-size:var(--modal-body);line-height:1.7}.modal-field{display:grid;gap:8px;margin-top:16px;font-size:var(--modal-body)}.modal-field div{display:flex;gap:10px}.modal-field input,.modal-form-grid input{width:100%;min-height:42px;border:1px solid #d9d9df;border-radius:6px;padding:0 12px;font-size:var(--modal-control)}.modal-field button,.modal-actions button,.exception-file button{border:1px solid #d8d8df;border-radius:6px;background:#fff;padding:0 14px;font-size:var(--modal-body)}.success-line{display:flex;align-items:center;gap:8px;margin-top:14px;color:#0f9c48;font-size:var(--modal-body)}.upload-dropzone{display:grid;place-items:center;height:217px;padding:0 20px;border:2px dashed #d5d5d5;border-radius:9px;background:#fbfbff;text-align:center}.upload-dropzone svg{color:#5b62f4}.upload-dropzone h3{margin:15px 0 6px;color:#333;font-size:16px;font-weight:500;line-height:1.35}.upload-dropzone p{margin:0;color:#999;font-size:14px;line-height:1.5}.upload-picker-actions{display:flex;gap:12px;margin-top:16px}.upload-picker-actions label{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 14px;border:1px solid #d5d7ff;border-radius:4px;background:#fff;color:#5b45ff;font-size:13px;font-weight:700;cursor:pointer}.upload-picker-actions input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}.upload-file-list{margin-top:14px;padding:14px 16px;border:1px solid #e5e7eb;border-radius:7px;background:#fff}.upload-file-list>div,.duplicate-candidate-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.upload-file-list strong,.duplicate-candidate-list strong{color:#202020;font-size:14px}.upload-file-list span,.duplicate-candidate-list span{color:#777;font-size:13px}.upload-file-list ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.upload-file-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#333;font-size:13px}.upload-file-list li.invalid,.upload-error-message,.exception-form-error{color:#ef4444}.upload-file-list li span{overflow:hidden;color:inherit;text-overflow:ellipsis;white-space:nowrap}.upload-file-list li em{flex:0 0 auto;color:inherit;font-style:normal}.upload-file-list p,.upload-error-message{margin:8px 0 0;font-size:13px}.upload-stage-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.upload-stage-list span{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:#f1f2f5;color:#777;font-size:12px}.upload-stage-list span.active{background:#e7e6ff;color:#5b45ff;font-weight:700}.warning-box,.choice-row{color:#666;font-size:var(--modal-body)}.warning-box{display:flex;gap:12px}.upload-warning-box{align-items:flex-start;min-height:89px;margin-top:25px;padding:21px 20px;border:1px solid #ffcf80;border-radius:7px;background:#fffaf0;color:#666;font-size:14px;line-height:1.6}.upload-warning-box svg{flex:0 0 auto;margin-top:3px}.upload-warning-box strong{color:#333;font-size:16px}.upload-drawer-footer{display:flex;align-items:center;justify-content:flex-end;gap:16px;height:89px;padding:0 24px;border-top:1px solid #e5e5e5;background:#fff}.upload-cancel-button,.upload-start-button{display:inline-flex;align-items:center;justify-content:center;height:40px;border-radius:4px;font-size:14px;cursor:pointer}.upload-cancel-button{width:90px;border:1px solid #d9d9d9;background:#fff;color:#666}.upload-start-button{width:112px;border:0;background:#5b45ff;color:#fff;font-weight:700;box-shadow:0 3px 5px #4531cf59}.modal-actions{display:flex;justify-content:flex-end;gap:12px}.full-width{width:100%}.choice-row{display:flex;align-items:center;gap:12px}.exception-file{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}.exception-file strong,.exception-file span{display:block}.exception-file span{color:#777;font-size:var(--modal-caption)}.modal-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.modal-form-grid label{display:grid;gap:8px;color:#555;font-size:var(--modal-body)}.compare-grid,.explain-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compare-grid section{border:1px solid #eeeeee;border-radius:10px;padding:16px;background:#fbfbff}.compare-grid h3{margin:0 0 14px;font-size:var(--modal-section-title)}.compare-grid h3 span{color:#777;font-size:var(--modal-caption)}.compare-grid dl{margin:0}.compare-grid dt{color:#777;font-size:var(--modal-caption)}.compare-grid dd{margin:4px 0 12px;color:#222;font-size:var(--modal-body);font-weight:700}.explain-score{margin-top:16px;color:#4f46f6;font-size:var(--detail-stat);font-weight:800}.explain-grid span{display:grid;gap:6px;color:#777;font-size:var(--modal-caption)}@media (max-width: 1280px){.topbar{grid-template-columns:236px 1fr 154px}.brand{padding-left:28px}.topnav{gap:28px;font-size:var(--text-sm)}.top-actions{gap:18px;padding-right:20px}.sidebar{width:236px}.main{margin-left:236px}.metrics-grid,.ai-stat-grid,.ai-pipeline-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.candidate-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding-right:36px}.candidate-card{grid-template-columns:52px minmax(0,1fr)}.candidate-match{grid-column:2;align-items:flex-start}.candidate-card-actions{margin-top:18px}.talent-pool-board{grid-template-columns:repeat(2,minmax(0,1fr))}.talent-pool-detail-page{grid-template-columns:248px minmax(0,1fr)}.talent-detail-list{padding-right:32px}.jd-match-page{padding-right:36px}.jd-match-layout{grid-template-columns:1fr}.jd-recommend-panel{min-height:0}.jd-recommend-list{grid-template-columns:repeat(3,minmax(0,1fr))}.jd-recommend-card{min-height:122px}.jd-compare-page{padding-left:20px;padding-right:20px;overflow-x:auto}.jd-compare-header,.jd-compare-table{min-width:1060px}.jd-compare-table{margin-left:0;margin-right:0}.resume-archive-grid{grid-template-columns:280px minmax(0,1fr)}.resume-stream-panel{grid-column:1 / -1;border-top:1px solid #eeeeee;border-left:0}.pagination{left:236px}}@media (max-width: 1024px){.topbar{position:sticky;grid-template-columns:1fr auto;row-gap:8px;height:auto;padding:12px 18px 10px}.brand{padding-left:0}.topnav{grid-column:1 / -1;justify-content:flex-start;gap:24px;overflow-x:auto;padding-bottom:2px}.topnav span{line-height:30px}.top-actions{padding-right:0}.sidebar{position:static;width:auto;padding:16px 18px;border-right:0;border-bottom:1px solid #dddddd}.sidebar h2{margin:0 0 12px;font-size:var(--text-lg)}.sidenav{flex-flow:row wrap;gap:8px}.sidenav button{height:42px;padding:0 14px;font-size:var(--text-sm)}.main{margin-left:0;padding-top:0}.content-header,.metrics-grid,.toolbar,.table-section,.resume-pipeline,.ai-layout{padding-left:20px;padding-right:20px}.resume-board{margin-left:20px;margin-right:20px}.candidate-header,.candidate-toolbar,.candidate-list,.talent-pool-header,.talent-pool-board{padding-left:20px;padding-right:20px}.candidate-toolbar{align-items:stretch;flex-direction:column;padding-top:16px;padding-bottom:16px}.candidate-tools,.candidate-search{width:100%}.talent-pool-detail-page{grid-template-columns:1fr}.talent-detail-sidebar{border-right:0;border-bottom:1px solid #e5e7eb}.talent-detail-sidebar header{min-height:64px;padding:0 20px}.talent-detail-search{margin-left:20px;margin-right:20px}.talent-detail-nav{display:flex;gap:8px;overflow-x:auto;padding:0 20px 16px}.talent-detail-nav button{flex:0 0 auto;min-width:86px;text-align:center}.talent-detail-source,.talent-detail-hero,.talent-detail-filterbar,.talent-detail-list{padding-left:20px;padding-right:20px}.talent-detail-hero{min-height:0}.talent-detail-filterbar{align-items:stretch;flex-direction:column;padding-top:12px;padding-bottom:12px}.jd-match-page{padding:28px 20px 40px}.jd-match-header{flex-direction:column}.jd-match-header>span{width:100%}.jd-recommend-list{grid-template-columns:1fr}.jd-score-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.jd-logic-grid{grid-template-columns:1fr;gap:20px}.jd-compare-strip{align-items:flex-start;flex-direction:column}.ai-page-header,.ai-stat-grid,.ai-pipeline-card,.ai-results-card{margin-left:20px;margin-right:20px;padding-left:0;padding-right:0}.ai-page-header{margin-left:0;margin-right:0;padding-left:20px;padding-right:20px}.ai-stat-grid{padding-bottom:20px}.ai-pipeline-card{padding:24px}.ai-pipeline-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-results-card{overflow-x:auto}.ai-results-table{min-width:940px}.resume-table-head,.resume-row{grid-template-columns:1.3fr .9fr .8fr .7fr 1fr .8fr;gap:12px}.pagination{position:static;padding:28px 0 24px}.resume-archive-header{height:auto;min-height:75px;padding:14px 18px}.resume-archive-grid{grid-template-columns:1fr}.resume-profile-panel,.resume-stream-panel{border-left:0;border-right:0}.resume-archive-main{overflow:visible}}@media (max-width: 760px){:root{--text-base: .9375rem;--text-lg: 1.0625rem;--text-xl: 1.125rem;--text-2xl: 1.375rem;--modal-title: 1.25rem;--modal-section-title: 1.0625rem;--modal-body: .875rem;--modal-caption: .75rem;--modal-control: .9375rem;--detail-hero-title: 1.5rem;--detail-stat: 1.25rem}.topbar{padding:10px 14px}.sprite-logo{width:112px;height:34px;background-size:1707px 960px;background-position:-52px -16px}.top-actions{gap:12px}.sprite-avatar{width:34px;height:34px;background-size:1554px 874px;background-position:-1500px -13px}.topnav{gap:20px}.sidebar{padding:14px}.sidenav{flex-wrap:nowrap;overflow-x:auto}.sidenav button{flex:0 0 auto}.content-header{flex-direction:column;gap:14px;padding-top:20px}.ai-page-header,.ai-results-card>header{align-items:stretch;flex-direction:column}.ai-reparse-button,.ai-result-search{width:100%}.ai-stat-grid{grid-template-columns:1fr 1fr}.candidate-header{flex-direction:column}.candidate-header>button{width:100%}.talent-pool-header{align-items:stretch;flex-direction:column;gap:18px}.talent-pool-title{gap:12px}.talent-pool-title h1{font-size:24px}.talent-pool-import{width:100%}.candidate-stat-grid{grid-template-columns:1fr;padding-left:20px;padding-right:20px}.talent-pool-board{grid-template-columns:1fr;padding-top:24px}.talent-pool-card{min-height:0;padding:26px}.talent-detail-hero{flex-direction:column;gap:20px}.talent-detail-hero aside{text-align:left}.talent-detail-card{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:18px}.talent-detail-card aside{grid-column:2;text-align:left}.talent-detail-card>svg{position:absolute;right:18px}.candidate-timeline-header{padding:0 18px}.candidate-timeline-header h2{font-size:24px}.candidate-timeline-body{padding:22px 18px}.candidate-timeline-profile{gap:18px}.candidate-timeline-profile>div:first-child{width:72px;height:72px;font-size:25px}.candidate-timeline-profile strong{font-size:20px}.candidate-timeline-profile span{font-size:15px}.candidate-timeline-list{gap:34px}.candidate-timeline-list:before{left:31px}.candidate-timeline-list li{grid-template-columns:66px minmax(0,1fr)}.candidate-timeline-node{width:56px;height:56px}.candidate-timeline-list time{font-size:14px}.candidate-timeline-list h3{font-size:20px}.candidate-timeline-list p{min-height:72px;padding:18px;font-size:16px}.candidate-timeline-footer{padding:18px}.candidate-timeline-footer button{height:56px;font-size:18px}.candidate-interview-header{padding:0 18px}.candidate-interview-header h2{font-size:24px}.candidate-interview-body{padding:24px 18px}.candidate-interview-profile{gap:18px;min-height:112px;margin-bottom:28px;padding:20px}.candidate-interview-profile>div:first-child{width:64px;height:64px;font-size:24px}.candidate-interview-profile strong{font-size:20px}.candidate-interview-profile span{font-size:16px}.candidate-interview-form{grid-template-columns:1fr;gap:20px}.candidate-interview-form span{font-size:16px}.candidate-interview-form select,.candidate-interview-form input{height:58px;padding:0 16px;font-size:18px}.candidate-interview-footer{height:76px;padding:0 18px}.candidate-result-header{padding:0 18px}.candidate-result-header h2{font-size:24px}.candidate-result-body{padding:24px 18px}.candidate-result-profile{gap:18px;min-height:112px;margin-bottom:30px;padding:20px}.candidate-result-profile>div:first-child{width:64px;height:64px;font-size:24px}.candidate-result-profile strong{font-size:20px}.candidate-result-profile span{font-size:16px}.candidate-result-summary h3{margin-bottom:24px;font-size:24px}.candidate-result-info{grid-template-columns:1fr;gap:18px}.candidate-result-info p{font-size:17px}.candidate-result-comment{margin-top:32px}.candidate-result-comment textarea{min-height:120px;padding:18px;font-size:18px}.candidate-result-footer{height:auto;flex-wrap:wrap;padding:14px 18px}.candidate-result-footer button{flex:1 1 calc(50% - 8px)}.candidate-card{grid-template-columns:1fr;padding:22px 18px}.candidate-match{grid-column:auto}.candidate-card-actions{flex-wrap:wrap}.jd-candidate-head{flex-direction:column}.jd-candidate-head aside{text-align:left}.jd-score-grid{grid-template-columns:1fr}.jd-match-detail,.jd-recommend-panel{padding:20px}.jd-candidate-identity{flex-direction:column}.jd-candidate-identity div div{align-items:flex-start;flex-direction:column;gap:8px}.jd-missing-skills{flex-wrap:wrap}.jd-compare-page{padding:10px 14px 28px}.jd-compare-header{padding-left:18px;padding-right:18px}.ai-pipeline-steps{grid-template-columns:1fr}.ai-results-card>header{padding:18px}.primary-action{width:100%;margin-top:0}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-bottom:18px}.metric-card{height:auto;min-height:96px;padding:15px}.toolbar{align-items:stretch;flex-direction:column;gap:12px;height:auto;padding-top:14px;padding-bottom:14px}.search-field,.filter-button{width:100%}.table-section{padding-top:16px}.jobs-table,.jobs-table thead,.jobs-table tbody,.jobs-table tr,.jobs-table th,.jobs-table td{display:block}.jobs-table thead{display:none}.jobs-table tr{margin-bottom:14px;border:1px solid #e8e8e8;border-radius:8px;background:#fff;overflow:hidden}.jobs-table td{display:grid;grid-template-columns:116px minmax(0,1fr);align-items:start;width:100%!important;min-height:0;height:auto;padding:12px 14px!important;border-bottom:1px solid #f2f2f2;gap:12px}.jobs-table td:before{color:#7b7b7b;font-size:var(--text-xs);font-weight:700}.jobs-table td:nth-child(1):before{content:"职位名称"}.jobs-table td:nth-child(2):before{content:"行业与薪资"}.jobs-table td:nth-child(3):before{content:"难度与服务费"}.jobs-table td:nth-child(4):before{content:"创建信息"}.jobs-table td:nth-child(5):before{content:"状态"}.jobs-table td:nth-child(6):before{content:"AI 技能标签"}.jobs-table td:nth-child(7):before{content:"候选人数"}.jobs-table td:nth-child(8):before{content:"操作"}.row-actions button+button{margin-left:20px}.header-actions{width:100%;flex-direction:column;align-items:stretch}.secondary-action{width:100%}.resume-board{margin:16px 16px 0}.resume-board-header{align-items:flex-start;flex-direction:column;gap:8px}.resume-table-head{display:none}.resume-row{display:grid;grid-template-columns:1fr;align-items:stretch;gap:10px;padding:16px}.resume-row>span,.resume-row>strong{display:flex;justify-content:space-between;gap:12px}.resume-pipeline,.ai-layout,.resume-detail-grid{grid-template-columns:1fr}.resume-detail-page{padding:18px 16px 28px}.resume-detail-top,.modal-actions{flex-direction:column;gap:12px}.resume-archive-header{align-items:flex-start;flex-direction:column;gap:12px}.resume-match-card div{grid-template-columns:1fr 1fr}.resume-work-item div,.resume-ocr-card>div{align-items:flex-start;flex-direction:column}.resume-detail-hero{grid-template-columns:1fr;align-items:start}.resume-detail-card dl,.modal-form-grid,.compare-grid,.explain-grid{grid-template-columns:1fr}.resume-drawer{width:100vw}.resume-drawer-header,.resume-drawer-body{padding:16px}.upload-drawer-body,.reparse-drawer-body,.explain-drawer-body{padding:0}.explain-drawer-content{grid-template-columns:1fr}.explain-log-inner pre{font-size:13px}.reparse-drawer-main{padding:20px 16px 0}.reparse-target-grid{grid-template-columns:1fr}.reparse-impact-card{align-items:flex-start;flex-direction:column}.reparse-drawer-footer{height:auto;padding:16px}.reparse-cancel-button,.reparse-start-button{width:100%}.upload-drawer-main{padding:18px 16px 0}.upload-drawer-footer{padding:0 16px}.exception-file{grid-template-columns:1fr}.create-drawer,.job-detail-drawer{width:100vw;max-width:100vw}.drawer-header{height:auto;min-height:88px;padding:16px 18px}.drawer-body{height:calc(100vh - 88px);padding:0 16px 28px}.drawer-card{padding:22px 18px 24px}.drawer-card-header{align-items:flex-start;flex-direction:column;gap:14px}.drawer-grid,.drawer-grid.two,.drawer-grid.three,.drawer-grid.salary,.drawer-grid.worktime{grid-template-columns:1fr;gap:16px}.range-divider{display:none}.ai-button{width:100%}.drawer-footer{padding-right:0}.publish-button{width:100%}.detail-header{height:auto;min-height:70px;padding:14px 16px}.detail-header-actions{gap:10px}.detail-body{height:calc(100vh - 70px);padding:16px}.detail-hero-card,.detail-card,.tracking-card{border-radius:10px}.detail-hero-card{padding:24px 20px 20px}.detail-status{position:static;margin-bottom:14px}.detail-hero-card h3{max-width:none}.detail-meta span{margin:0 8px}.detail-tags{flex-wrap:wrap}.detail-stats{grid-template-columns:1fr;gap:18px;margin-top:24px}.detail-card{padding:24px 20px 18px}.analysis-bottom{align-items:flex-start;flex-direction:column;gap:18px}.difficulty{align-items:flex-start}.tracking-card{padding:22px 18px 26px}.tracking-item{grid-template-columns:48px 1fr;row-gap:10px;padding:14px}.tracking-item time{grid-column:1 / -1;font-size:var(--modal-body)}}@media (max-width: 520px){:root{--modal-title: 1.125rem;--modal-section-title: 1rem;--modal-body: .8125rem;--modal-caption: .75rem;--modal-control: .875rem;--detail-hero-title: 1.25rem;--detail-stat: 1.125rem}.metrics-grid{grid-template-columns:1fr}.jobs-table td{grid-template-columns:1fr;gap:6px}.detail-header{align-items:flex-start;flex-direction:column;gap:12px}.detail-header-actions{width:100%;justify-content:space-between}.edit-button{flex:1}}:root{--purple: #4f46e5;--purple-strong: #4338ca;--purple-soft: #eef2ff;--app-bg: #f6f8fb;--surface: #ffffff;--surface-muted: #f9fafb;--text-primary: #111827;--text-secondary: #4b5563;--text-tertiary: #8a94a6;--line: #e5e7eb;--soft-line: #eef1f5;--sidebar-active: #eef7ea;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--shadow-card: 0 1px 2px rgba(15, 23, 42, .04);--shadow-drawer: -18px 0 42px rgba(15, 23, 42, .14)}body{background:var(--app-bg);color:var(--text-primary)}button,a,input,select,textarea{transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease,color .14s ease,transform .14s ease}button:not(:disabled){cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.56}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgba(79,70,229,.35);outline-offset:2px;box-shadow:0 0 0 4px #4f46e51a}.app,.main{background:var(--app-bg)}.topbar{border-bottom-color:var(--line);box-shadow:0 1px 2px #0f172a0a}.topnav{color:var(--text-secondary);font-size:14px}.topnav .active{color:var(--purple);font-weight:700}.top-actions{color:var(--text-secondary)}.top-actions svg:hover{color:var(--purple)}.sidebar{border-right-color:var(--line);background:#fff}.sidebar h2{color:var(--text-primary);font-size:18px;font-weight:700}.sidenav{gap:4px}.sidenav button{height:46px;border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;font-weight:500}.sidenav button:hover{background:#f3f4f6;color:var(--text-primary)}.sidenav button.active{background:var(--sidebar-active);color:var(--text-primary);font-weight:700}.sidenav button.active svg{color:#256c3b}.content-header,.resume-header,.ai-page-header,.candidate-header,.jd-match-header{background:var(--surface)}.content-header h1,.ai-page-header h1,.candidate-header h1,.jd-match-header h1{color:var(--text-primary);font-size:24px;font-weight:750}.content-header p,.ai-page-header p,.candidate-header p,.jd-match-header p{color:var(--text-secondary)}.primary-action,.resume-upload-action,.ai-reparse-button,.candidate-header>button,.talent-pool-import,.reparse-start-button,.upload-start-button,.publish-button,.candidate-card-actions button.primary,.candidate-interview-footer button.primary,.candidate-result-footer button.primary,.jd-compare-action-cell button{border-radius:var(--radius-sm);background:var(--purple);box-shadow:none;font-weight:700}.primary-action:hover,.resume-upload-action:hover,.ai-reparse-button:hover,.candidate-header>button:hover,.talent-pool-import:hover,.reparse-start-button:hover,.upload-start-button:hover,.publish-button:hover,.candidate-card-actions button.primary:hover,.candidate-interview-footer button.primary:hover,.candidate-result-footer button.primary:hover,.jd-compare-action-cell button:hover{background:var(--purple-strong);box-shadow:0 6px 14px #4f46e529}.resume-secondary-action,.filter-button,.candidate-filter,.resume-record-search,.search-field,.candidate-search,.ai-result-search,.talent-detail-search,.jd-match-header>span,.talent-sort-button,.edit-button,.upload-cancel-button,.reparse-cancel-button,.access-cancel-button,.candidate-interview-footer button,.candidate-result-footer button{border-color:#d8dee8;border-radius:var(--radius-md);background:#fff;color:var(--text-secondary)}.resume-secondary-action:hover,.filter-button:hover,.candidate-filter:hover,.edit-button:hover,.upload-cancel-button:hover,.reparse-cancel-button:hover,.access-cancel-button:hover,.candidate-interview-footer button:hover,.candidate-result-footer button:hover{border-color:#bfc7d5;background:#f9fafb;color:var(--text-primary)}input,select,textarea,.drawer-input-shell,.access-field input,.candidate-interview-form select,.candidate-interview-form input,.candidate-result-comment textarea{border-color:#d8dee8;background-color:#fff;color:var(--text-primary)}input::placeholder,textarea::placeholder,.search-field input::placeholder,.candidate-search input::placeholder,.resume-record-search input::placeholder,.ai-result-search input::placeholder,.talent-detail-search input::placeholder{color:#9aa4b2}.metric-card,.candidate-stat-card,.ai-stat-card,.resume-record-card,.ai-results-card,.jd-recommend-panel,.jd-match-detail,.talent-pool-card,.talent-detail-card,.candidate-card,.detail-hero-card,.detail-card,.drawer-card,.access-card,.duplicate-card,.modal-card{border-color:var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card)}.metric-card:hover,.candidate-stat-card:hover,.ai-stat-card:hover,.candidate-card:hover,.talent-pool-card.clickable:hover,.talent-detail-card:hover,.jd-recommend-card:hover{border-color:#cfd7e6;box-shadow:0 8px 20px #0f172a0f}.metric-label,.candidate-stat-card span,.ai-stat-card span,.jd-score-grid span,.talent-detail-hero p,.talent-detail-person p{color:var(--text-secondary)}.metric-card strong,.candidate-stat-card strong,.ai-stat-card strong{color:var(--text-primary);font-size:24px;font-weight:650}.toolbar,.candidate-toolbar,.talent-detail-filterbar,.ai-results-card>header,.resume-record-tabs,.jd-compare-header,.resume-archive-header{border-color:var(--line);background:var(--surface)}.jobs-table,.resume-file-table,.ai-results-table{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.jobs-table th,.resume-file-table th,.ai-results-table th{height:42px;border-bottom-color:var(--line);background:#f8fafc;color:var(--text-secondary);font-size:12px;font-weight:700;text-transform:none}.jobs-table td,.resume-file-table td,.ai-results-table td{border-bottom-color:var(--soft-line);color:var(--text-secondary);font-size:13px}.jobs-table tbody tr:hover,.resume-file-table tbody tr:hover,.ai-results-table tbody tr:hover{background:#fbfdff}.jobs-table tbody tr:last-child td,.resume-file-table tbody tr:last-child td,.ai-results-table tbody tr:last-child td{border-bottom-color:transparent}.jobs-table strong,.resume-file-table strong,.ai-results-table strong,.candidate-name-row h2,.talent-detail-person h3,.jd-recommend-info strong{color:var(--text-primary);font-weight:700}.status-badge,.parse-status,.candidate-status,.ai-confidence,.analysis-tags span,.candidate-tags span,.talent-detail-person span,.jd-recommend-info b,.jd-missing-skills span,.jd-compare-missing-tags span{border-radius:999px;font-weight:700}.row-actions button,.resume-file-actions button,.ai-results-table button,.jd-compare-strip button,.jd-candidate-identity button,.resume-file-link,.job-title-cell button{color:var(--purple);font-weight:700}.row-actions button:hover,.resume-file-actions button:hover,.ai-results-table button:hover,.jd-compare-strip button:hover,.jd-candidate-identity button:hover,.resume-file-link:hover,.job-title-cell button:hover{color:var(--purple-strong);text-decoration:underline;text-underline-offset:3px}.jd-compare-strip button:disabled,.jd-compare-strip button:disabled:hover{color:#94a3b8;cursor:not-allowed;text-decoration:none}.drawer-backdrop{background:#0f172a52;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.create-drawer,.job-detail-drawer,.resume-drawer,.candidate-timeline-drawer,.candidate-interview-drawer,.candidate-result-drawer,.access-modal,.duplicate-modal{box-shadow:var(--shadow-drawer)}.drawer-header,.resume-drawer-header,.candidate-timeline-header,.candidate-interview-header,.candidate-result-header,.access-modal-header,.duplicate-modal-header{border-bottom-color:var(--line)}.drawer-header h2,.resume-drawer-header h2,.candidate-timeline-header h2,.candidate-interview-header h2,.candidate-result-header h2,.access-modal-title h2,.duplicate-modal-header h2{color:var(--text-primary);font-weight:750}.drawer-card{box-shadow:none}.hint-box,.warning-box,.upload-warning-box,.reparse-alert{border-color:#f5d48b;background:#fff8eb}.ai-pipeline-card,.jd-ai-logic,.tracking-card{box-shadow:0 10px 24px #31238614}.ai-pipeline-card{background:linear-gradient(135deg,#312e81,#37308c)}.jd-ai-logic{background:linear-gradient(135deg,#312e81,#4c1d95)}.candidate-risk.warning,.warning-box.danger,.resume-file-actions button.danger{color:#dc2626}.empty-table,.resume-record-pagination,.ai-results-pagination,.pagination{color:var(--text-tertiary)}.empty-table{background:#fbfcfe!important}.loading-state,.error-state,.empty-state{display:grid;place-items:center;min-height:180px;border:1px dashed #d8dee8;border-radius:var(--radius-lg);background:#fbfcfe;color:var(--text-tertiary);font-size:14px}.error-state{border-color:#fecaca;background:#fff7f7;color:#b91c1c}.loading-state:before{content:"";width:24px;height:24px;margin-bottom:10px;border:3px solid #e5e7eb;border-top-color:var(--purple);border-radius:50%;animation:ui-spin .8s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}@media (max-width: 1024px){.jobs-table,.resume-file-table,.ai-results-table{border-radius:var(--radius-md)}}:root{--purple: #2563eb;--purple-strong: #1d4ed8;--purple-soft: #eff6ff;--app-bg: #f5f7fb;--surface-muted: #f8fafc;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #94a3b8;--line: #dde3ec;--soft-line: #edf1f7;--sidebar-active: #eaf3ff;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--shadow-card: 0 1px 2px rgba(15, 23, 42, .04);--shadow-raised: 0 8px 18px rgba(15, 23, 42, .06);--shadow-drawer: -16px 0 32px rgba(15, 23, 42, .16)}.topbar{grid-template-columns:248px minmax(0,1fr) 172px;height:64px}.brand{padding-left:32px}.topnav{gap:34px}.topnav span{position:relative;line-height:64px}.topnav .active:after{content:"";position:absolute;right:0;bottom:0;left:0;height:2px;border-radius:999px 999px 0 0;background:var(--purple)}.top-actions{gap:18px;padding-right:24px}.top-actions svg{padding:2px;border-radius:4px}.top-actions svg:hover{background:#f1f5f9}.sidebar{inset:64px auto 0 0;width:248px;padding:20px 12px}.sidebar h2{margin:0 12px 18px;font-size:16px}.sidenav button{height:40px;padding:0 14px;gap:10px}.sidenav button svg{width:18px;height:18px}.main{margin-left:248px;padding-top:64px}.content-header,.resume-header,.ai-page-header,.candidate-header,.talent-pool-header{padding:20px 28px;border-bottom:1px solid var(--soft-line)}.content-header h1,.ai-page-header h1,.candidate-header h1,.jd-match-header h1,.talent-pool-title h1{font-size:22px;line-height:1.28}.content-header p,.ai-page-header p,.candidate-header p,.jd-match-header p,.talent-pool-title p{margin-top:5px;font-size:13px}.primary-action,.resume-upload-action,.resume-secondary-action,.ai-reparse-button,.candidate-header>button,.talent-pool-import,.filter-button,.candidate-filter,.edit-button{height:36px;min-width:auto;padding:0 14px;font-size:13px}.metrics-grid,.ai-stat-grid,.candidate-stat-grid{gap:12px;padding:18px 28px}.metric-card,.ai-stat-card,.candidate-stat-card{min-height:84px;height:auto;padding:14px 15px}.metric-label,.ai-stat-card span,.candidate-stat-card span{font-size:12px;font-weight:600}.metric-card strong,.ai-stat-card strong,.candidate-stat-card strong{margin-top:8px;font-size:23px;line-height:1.1}.toolbar,.candidate-toolbar{min-height:58px;height:auto;padding:10px 28px}.search-field,.candidate-search,.resume-record-search,.ai-result-search,.talent-detail-search{height:36px;border-radius:var(--radius-md);background:#fff}.table-section{padding:18px 28px 84px}.jobs-table,.resume-file-table,.ai-results-table{border-collapse:separate;border-spacing:0;box-shadow:var(--shadow-card)}.jobs-table th,.resume-file-table th,.ai-results-table th{height:38px;padding-top:0;padding-bottom:0;color:#64748b;font-size:12px}.jobs-table td,.resume-file-table td,.ai-results-table td{height:64px;padding-top:10px;padding-bottom:10px;line-height:1.45}.jobs-table strong,.job-title-cell button,.resume-file-link,.resume-file-table strong,.ai-results-table strong{font-size:13px}.creator-avatar{width:24px;height:24px;font-size:12px}.status-badge,.parse-status,.candidate-status,.ai-confidence,.resume-status{min-height:22px;height:22px;padding:0 9px;border:1px solid transparent;font-size:12px!important}.status-badge.resume_screening,.parse-status.success,.candidate-status.active,.resume-status.new,.resume-status.parsed,.ai-confidence.high{border-color:#bbf7d0;background:#ecfdf3;color:#15803d}.status-badge.interviewing,.parse-status.processing,.candidate-status.interview{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.status-badge.ended,.candidate-status.hired{border-color:#e2e8f0;background:#f1f5f9;color:#64748b}.status-badge.offer_sent{border-color:#fde68a;background:#fffbeb;color:#a16207}.parse-status.failed,.resume-status.failed,.ai-confidence.low{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.pagination{left:248px;bottom:18px;gap:14px;font-size:13px}.pagination button,.ai-results-pagination button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--text-secondary);font-size:16px}.pagination button:hover,.ai-results-pagination button:hover{border-color:#cbd5e1;background:#f8fafc;color:var(--text-primary)}.resume-upload-zone{min-height:220px;margin:18px 28px;border-color:#bfd4ff;border-radius:var(--radius-lg);background:#f8fbff}.resume-upload-icon{width:54px;height:54px}.resume-upload-icon svg{width:28px;height:28px}.resume-upload-zone h2{margin-top:14px;font-size:17px}.resume-upload-zone p{font-size:13px}.resume-upload-zone button{height:36px;margin-top:14px;border-radius:var(--radius-md);font-size:13px}.resume-record-card{margin:0 28px 28px;border-radius:var(--radius-lg)}.resume-record-tabs{min-height:54px;padding:0 18px}.resume-tabs{height:54px;gap:22px}.resume-tabs button{min-width:auto;font-size:13px}.ai-page,.candidate-page,.jd-match-page,.resume-detail-page{background:var(--app-bg)}.ai-pipeline-card{margin:18px 28px;padding:22px;border:1px solid rgba(147,197,253,.24);border-radius:var(--radius-lg);background:linear-gradient(135deg,#172554,#1e3a8a)}.ai-pipeline-card h2{margin-bottom:18px;font-size:18px}.ai-pipeline-steps{gap:10px}.ai-pipeline-steps article{min-height:88px;padding:14px;border-radius:var(--radius-md);background:#ffffff1a}.ai-pipeline-steps strong{margin-top:7px;font-size:16px}.ai-results-card{margin:0 28px 28px;border-radius:var(--radius-lg)}.ai-results-card>header{min-height:58px;padding:10px 18px}.ai-results-card h2{font-size:17px}.ai-results-card header span{font-size:12px}.candidate-stat-grid{grid-template-columns:repeat(5,minmax(0,1fr));padding-right:28px}.candidate-tabs{gap:8px}.candidate-tabs button{height:34px;min-width:auto;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-md);font-size:13px}.candidate-tabs button.active{border-color:#bfdbfe;background:var(--purple-soft);color:var(--purple-strong)}.candidate-list,.talent-pool-board,.talent-detail-list{gap:12px;padding:18px 28px 32px}.candidate-card{grid-template-columns:44px minmax(0,1fr) 190px;gap:14px;min-height:148px;padding:18px 20px;border-radius:var(--radius-lg)}.candidate-card.interactive{position:relative;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.candidate-card.interactive:hover,.candidate-card.interactive:focus-visible{border-color:#1d7cff;background:#eff6ff;box-shadow:0 10px 24px #2563eb1f;transform:translateY(-1px)}.candidate-card.interactive:active{transform:translateY(0)}.candidate-card.interactive:focus-visible{outline:2px solid rgba(37,99,235,.35);outline-offset:2px}.candidate-card.interactive .candidate-card-actions{position:relative;z-index:2}.candidate-card.interactive .candidate-card-actions button{cursor:pointer}.candidate-card-hover-tip{position:absolute;top:14px;right:18px;z-index:1;display:inline-flex;align-items:center;height:26px;padding:0 10px;border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:700;opacity:0;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease;pointer-events:none}.candidate-card.interactive:hover .candidate-card-hover-tip,.candidate-card.interactive:focus-visible .candidate-card-hover-tip{opacity:1;transform:translateY(0)}.candidate-filter-menu{position:relative;flex:0 0 auto}.candidate-filter-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:15;display:grid;gap:4px;width:132px;padding:6px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:0 10px 24px #0f172a1f}.candidate-filter-dropdown button{display:flex;align-items:center;justify-content:flex-start;height:30px;padding:0 9px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:12px;font-weight:700}.candidate-filter-dropdown button:hover,.candidate-filter-dropdown button.active{background:var(--purple-soft);color:var(--purple)}.candidate-avatar{width:44px;height:44px;font-size:18px}.candidate-name-row h2{font-size:16px}.candidate-meta{gap:18px;margin-top:8px}.candidate-meta span,.candidate-summary strong,.candidate-summary p,.candidate-risk{font-size:12px}.candidate-summary{margin-top:18px}.candidate-tags span{min-height:22px;padding:0 9px;border:1px solid #e2e8f0;background:#f8fafc;font-size:12px}.candidate-risk{margin-top:14px}.candidate-match>strong{font-size:40px}.candidate-match>div:not(.candidate-card-actions){width:118px;height:6px}.candidate-card-actions button{height:30px;min-width:auto;padding:0 11px;border-radius:var(--radius-sm);font-size:12px}.talent-pool-card{min-height:214px;padding:22px;border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.talent-pool-icon{width:48px;height:48px;border-radius:var(--radius-md)}.talent-pool-icon svg{width:25px;height:25px}.talent-pool-card-top span{min-width:auto;height:30px;padding:0 12px;font-size:13px}.talent-pool-card h2{margin:18px 0 10px;font-size:18px}.talent-pool-card p{min-height:48px;font-size:13px;font-weight:500}.talent-pool-card strong{margin-top:16px;font-size:13px}.talent-detail-sidebar header,.talent-detail-source{min-height:58px}.talent-detail-hero{min-height:142px;padding:22px 28px}.talent-detail-hero h2{font-size:22px}.talent-detail-hero aside strong{font-size:30px}.talent-detail-filterbar{min-height:54px;padding:8px 28px}.talent-detail-card{min-height:104px;padding:18px;border-radius:var(--radius-lg)}.talent-detail-person h3{font-size:15px}.talent-detail-person p{margin:6px 0 10px;font-size:13px}.talent-detail-card aside strong{font-size:23px}.jd-match-page{padding:24px 28px 36px}.jd-match-header{margin-bottom:18px}.jd-recommend-panel,.jd-match-detail{min-height:0;padding:20px}.jd-recommend-panel>header{margin-bottom:16px}.jd-recommend-panel h2,.jd-ai-logic h3,.jd-compare-header h1{font-size:17px}.jd-recommend-list{gap:10px}.jd-recommend-card{min-height:92px;padding:13px;border-radius:var(--radius-lg)}.jd-recommend-card.active{border-width:1px;background:#f0f7ff}.jd-recommend-avatar{width:44px;height:44px;font-size:16px}.jd-recommend-info strong{font-size:15px}.jd-recommend-info em{margin-left:auto;font-size:16px}.jd-recommend-info small{margin-top:6px;font-size:12px}.jd-recommend-info b{min-height:22px;margin-top:9px}.jd-candidate-head{min-height:96px;padding-bottom:18px}.jd-candidate-identity>span{width:52px;height:52px;font-size:20px}.jd-candidate-identity h2{font-size:18px}.jd-candidate-identity p{margin:6px 0 13px;font-size:13px}.jd-candidate-head aside strong{font-size:34px}.jd-score-grid{margin-top:18px;gap:10px}.jd-score-grid article{min-height:84px;padding:12px;border-color:#cdebd6;border-radius:var(--radius-md)}.jd-score-grid strong{font-size:24px}.jd-ai-logic{min-height:auto;margin-top:18px;padding:20px;border-radius:var(--radius-lg);background:#10233f}.jd-logic-grid{gap:28px}.jd-compare-strip{margin-top:18px;padding-top:18px}.jd-compare-page{padding:18px 28px 32px;background:var(--app-bg)}.jd-compare-header{min-height:68px;padding:0 20px;border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.jd-compare-table{margin:16px 0 0;border-radius:var(--radius-lg)}.jd-compare-axis,.jd-compare-candidate{min-height:166px}.jd-compare-row-label,.jd-compare-score-cell{min-height:96px}.jd-compare-candidate>span{width:50px;height:50px}.jd-compare-score-cell strong,.jd-compare-resource-cell strong{font-size:28px}.drawer-header,.detail-header,.resume-drawer-header,.candidate-timeline-header,.candidate-interview-header,.candidate-result-header,.access-modal-header{min-height:68px;height:auto;padding:14px 24px}.drawer-header h2,.detail-title h2,.resume-drawer-header h2,.candidate-timeline-header h2,.candidate-interview-header h2,.candidate-result-header h2,.access-modal-title h2{font-size:20px}.drawer-header p,.resume-drawer-header p{font-size:13px}.drawer-body{height:calc(100vh - 68px);padding:0 24px 28px}.drawer-card{margin-top:16px;padding:20px 22px;border-radius:var(--radius-lg)}.drawer-card:before{width:3px}.drawer-card-header{margin-bottom:16px}.drawer-card h3{font-size:16px}.drawer-grid,.drawer-grid.two,.drawer-grid.three{gap:16px}.drawer-grid.salary,.drawer-grid.worktime{gap:12px;margin-top:16px}.drawer-field{font-size:13px}.drawer-field>span:first-child{min-height:auto;margin-bottom:6px;color:#334155;font-weight:600}.field-error{margin-top:6px;color:var(--danger);font-size:12px;font-style:normal;line-height:1.4}.drawer-input-shell{height:38px;padding:0 11px}.drawer-input-shell input,.drawer-input-shell select,.drawer-field textarea{font-size:14px}.drawer-field textarea{min-height:78px;padding:11px 12px}.ai-button,.publish-button{height:34px;font-size:13px}.hint-box{min-height:44px;margin:12px 0 18px;padding:10px 14px}.drawer-footer{padding-top:16px}.detail-body,.candidate-timeline-body,.candidate-interview-body,.candidate-result-body{padding:18px 22px 28px}.detail-hero-card,.detail-card,.tracking-card{border-radius:var(--radius-lg)}.detail-hero-card{padding:24px}.detail-hero-card h3{font-size:24px}.detail-meta{margin:12px 0 16px}.detail-tags{gap:8px;flex-wrap:wrap}.detail-tags span{height:24px;padding:0 10px;border-radius:999px}.detail-stats{column-gap:28px;row-gap:18px;margin-top:22px}.detail-stats strong{font-size:17px}.detail-card{margin-top:14px;padding:22px 24px}.detail-card ul{line-height:1.85}.ai-analysis{border:1px solid #fde68a;border-radius:var(--radius-lg)}.tracking-card{margin-top:14px;background:#12325f}.candidate-timeline-profile,.candidate-interview-profile,.candidate-result-profile{min-height:96px;margin-bottom:24px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#f8fafc}.candidate-timeline-profile>div:first-child,.candidate-interview-profile>div:first-child,.candidate-result-profile>div:first-child{width:58px;height:58px;font-size:22px}.candidate-timeline-profile strong,.candidate-interview-profile strong,.candidate-result-profile strong{font-size:18px}.candidate-timeline-profile span,.candidate-interview-profile span,.candidate-result-profile span{margin-top:6px;font-size:14px}.candidate-timeline-list{gap:26px}.candidate-timeline-list:before{left:31px}.candidate-timeline-list li{grid-template-columns:68px minmax(0,1fr)}.candidate-timeline-node{width:52px;height:52px}.candidate-timeline-list time{font-size:13px}.candidate-timeline-list h3{margin:7px 0 9px;font-size:16px}.candidate-timeline-list p{min-height:auto;padding:14px 16px;font-size:13px}.candidate-timeline-footer,.candidate-interview-footer,.candidate-result-footer,.upload-drawer-footer,.reparse-drawer-footer{height:64px;padding:0 22px}.candidate-timeline-footer button{height:42px;font-size:14px}.candidate-interview-form{gap:18px 16px}.candidate-interview-form span,.candidate-result-comment span{font-size:13px;font-weight:600}.candidate-interview-form select,.candidate-interview-form input{height:40px;padding:0 12px;border-radius:var(--radius-md);font-size:14px}.candidate-result-summary h3{margin-bottom:20px;font-size:20px;font-weight:700}.candidate-result-info{gap:18px 22px}.candidate-result-info p{font-size:14px}.candidate-result-comment{margin-top:28px}.candidate-result-comment textarea{min-height:110px;padding:12px;border-radius:var(--radius-md);font-size:14px}.access-modal{grid-template-rows:68px minmax(0,1fr) 64px}.access-modal-body{padding:22px}.access-card{min-height:auto;padding:18px}.access-section+.access-section{margin-top:22px}.empty-table{height:132px!important;color:#64748b!important;font-weight:600}@media (max-width: 1280px){.topbar{grid-template-columns:228px minmax(0,1fr) 150px}.sidebar{width:228px}.main{margin-left:228px}.pagination{left:228px}.candidate-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.candidate-card{grid-template-columns:44px minmax(0,1fr)}}@media (max-width: 1024px){.topbar{height:auto}.main{margin-left:0;padding-top:0}.sidebar{inset:auto;width:auto}.content-header,.resume-header,.ai-page-header,.candidate-header,.talent-pool-header,.metrics-grid,.ai-stat-grid,.candidate-stat-grid,.toolbar,.candidate-toolbar,.table-section,.candidate-list,.talent-pool-board,.talent-detail-list,.jd-match-page{padding-left:20px;padding-right:20px}.resume-upload-zone,.resume-record-card,.ai-pipeline-card,.ai-results-card{margin-left:20px;margin-right:20px}}@media (max-width: 760px){.content-header h1,.ai-page-header h1,.candidate-header h1,.jd-match-header h1,.talent-pool-title h1{font-size:20px}.metrics-grid,.ai-stat-grid,.candidate-stat-grid{grid-template-columns:1fr}.jobs-table td,.resume-file-table td,.ai-results-table td{height:auto}.candidate-card{grid-template-columns:1fr}.candidate-match{align-items:flex-start}.drawer-header,.detail-header,.resume-drawer-header,.candidate-timeline-header,.candidate-interview-header,.candidate-result-header,.access-modal-header{padding:14px 16px}.drawer-body,.detail-body,.candidate-timeline-body,.candidate-interview-body,.candidate-result-body{padding-left:16px;padding-right:16px}}:root{--page-x: 28px;--page-y: 20px;--panel-pad: 16px;--panel-gap: 16px;--success: #16a34a;--success-bg: #f0fdf4;--success-line: #bbf7d0;--warning: #d97706;--warning-bg: #fffbeb;--warning-line: #fde68a;--danger: #dc2626;--danger-bg: #fef2f2;--danger-line: #fecaca;--pending: #2563eb;--pending-bg: #eff6ff;--pending-line: #bfdbfe}.page-header,.panel,.filter-bar{min-width:0}.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.page-header-main{display:flex;align-items:center;gap:14px;min-width:0}.page-header-leading{display:inline-flex;flex:0 0 auto}.page-header-leading button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid #cbd5e1;border-radius:var(--radius-md);background:#fff;color:var(--text-secondary)}.page-header-leading button:hover{border-color:#94a3b8;background:#f8fafc;color:var(--text-primary)}.page-header-copy{min-width:0}.page-header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:12px;flex:0 0 auto}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:16px}.status-select-field{display:inline-flex;align-items:center;gap:8px;width:132px;height:36px;padding:0 10px;border:1px solid #cbd5e1;border-radius:var(--radius-md);background:#fff;color:var(--text-secondary)}.status-select-field:hover{border-color:#94a3b8;background:#f8fafc;color:var(--text-primary)}.status-select-field:focus-within{border-color:var(--purple);box-shadow:0 0 0 3px #2563eb1f}.status-select-field select{min-width:0;flex:1;border:0;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:currentColor;font-size:13px;font-weight:700}.status-select-field svg{flex:0 0 auto}.panel{min-width:0}.main{padding-bottom:32px}.main>.content-header,.ai-page-header,.candidate-header,.talent-pool-header,.resume-archive-header{min-height:86px;margin:var(--page-y) var(--page-x) 0;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card)}.jd-match-header{min-height:74px;margin:0 0 var(--panel-gap);padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card)}.jd-current-job{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid #d8dee8;border-radius:var(--radius-md);background:#fff;color:var(--text-tertiary);font-size:13px;white-space:nowrap}.resume-archive-header{height:auto}.content-header h1,.ai-page-header h1,.candidate-header h1,.jd-match-header h1,.talent-pool-title h1,.resume-archive-title h1{color:var(--text-primary);font-size:22px;font-weight:750;line-height:1.25}.content-header p,.ai-page-header p,.candidate-header p,.jd-match-header p,.talent-pool-title p,.resume-archive-title p{color:var(--text-tertiary);font-size:13px;font-weight:500}.metrics-grid,.ai-stat-grid,.candidate-stat-grid{margin:var(--panel-gap) var(--page-x) 0;padding:var(--panel-pad);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card)}.resume-metrics,.ai-stat-grid,.candidate-stat-grid{border-bottom:1px solid var(--line)}.metric-card,.ai-stat-card,.candidate-stat-card{border-radius:var(--radius-md);background:#fbfdff}.metric-card strong,.ai-stat-card strong,.candidate-stat-card strong,.jd-candidate-head aside strong,.candidate-match>strong,.talent-detail-card aside strong{letter-spacing:0}.toolbar,.candidate-toolbar,.talent-detail-filterbar{margin:var(--panel-gap) var(--page-x) 0;padding:11px var(--panel-pad);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card)}.table-section,.candidate-list,.talent-pool-board,.talent-detail-list{margin:var(--panel-gap) var(--page-x) 0;padding:var(--panel-pad);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card)}.candidate-list,.talent-pool-board,.talent-detail-list{display:grid;gap:12px}.jobs-table,.resume-file-table,.ai-results-table{border:0;border-radius:var(--radius-md);box-shadow:none}.jobs-table th:first-child,.jobs-table td:first-child,.resume-file-table th:first-child,.resume-file-table td:first-child,.ai-results-table th:first-child,.ai-results-table td:first-child{padding-left:14px}.jobs-table th:last-child,.jobs-table td:last-child,.resume-file-table th:last-child,.resume-file-table td:last-child,.ai-results-table th:last-child,.ai-results-table td:last-child{padding-right:14px}.jobs-table tbody tr,.resume-file-table tbody tr,.ai-results-table tbody tr{background:#fff}.jobs-table tbody tr:hover,.resume-file-table tbody tr:hover,.ai-results-table tbody tr:hover,.jobs-table tbody tr.selected,.resume-file-table tbody tr.selected,.ai-results-table tbody tr.selected{background:#f8fbff}.jobs-table tbody tr.selected td,.resume-file-table tbody tr.selected td,.ai-results-table tbody tr.selected td{box-shadow:inset 3px 0 0 var(--purple)}.empty-table,.empty-state{border:1px dashed #cbd5e1!important;border-radius:var(--radius-md);background:#f8fafc!important;color:#64748b!important}.resume-upload-zone,.resume-record-card,.ai-pipeline-card,.ai-results-card,.jd-recommend-panel,.jd-match-detail,.talent-detail-hero,.detail-hero-card,.detail-card,.tracking-card,.resume-profile-panel,.resume-archive-main,.resume-stream-panel{border:1px solid var(--line);box-shadow:var(--shadow-card)}.resume-upload-zone,.resume-record-card,.ai-pipeline-card,.ai-results-card{margin-left:var(--page-x);margin-right:var(--page-x)}.resume-record-card,.ai-results-card,.jd-recommend-panel,.jd-match-detail,.candidate-card,.talent-pool-card,.talent-detail-card,.drawer-card,.detail-hero-card,.detail-card,.tracking-card{border-radius:var(--radius-lg)}.resume-record-tabs,.ai-results-card>header,.jd-recommend-panel>header{border-bottom:1px solid var(--soft-line)}.resume-file-table th,.jobs-table th,.ai-results-table th{background:#f8fafc}.primary-action,.resume-upload-action,.ai-reparse-button,.candidate-header>button,.talent-pool-import,.publish-button,.upload-start-button,.reparse-start-button,.access-save-button,.duplicate-confirm,.exception-complete,.candidate-card-actions button.primary,.candidate-interview-footer button.primary,.candidate-result-footer button.primary,.jd-compare-action-cell button{border:1px solid var(--purple);background:var(--purple);color:#fff}.resume-secondary-action,.filter-button,.candidate-filter,.edit-button,.upload-cancel-button,.reparse-cancel-button,.access-cancel-button,.duplicate-skip,.exception-cancel,.candidate-interview-footer button,.candidate-result-footer button,.resume-upload-zone button{border:1px solid #cbd5e1;background:#fff;color:var(--text-secondary);box-shadow:none}.row-actions button,.resume-file-actions button,.ai-results-table td:nth-child(5) button,.jd-compare-strip button,.jd-candidate-identity button,.resume-archive-back,.resume-archive-actions button,.close-detail,.drawer-back-button,.access-modal-close{background:transparent;box-shadow:none}.row-actions button.danger,.resume-file-actions button.danger,.exception-invalid,.duplicate-close{color:var(--danger)}.row-actions button.danger:hover,.resume-file-actions button.danger:hover,.exception-invalid:hover{color:#b91c1c}.primary-action:disabled,.resume-upload-action:disabled,.ai-reparse-button:disabled,.publish-button:disabled,.upload-start-button:disabled,.reparse-start-button:disabled,.access-save-button:disabled,.candidate-card-actions button.primary:disabled{border-color:#cbd5e1;background:#e2e8f0;color:#94a3b8}.search-field:focus-within,.candidate-search:focus-within,.resume-record-search:focus-within,.ai-result-search:focus-within,.talent-detail-search:focus-within,.drawer-input-shell:focus-within,.access-field input:focus,.modal-field input:focus,.modal-form-grid input:focus,.candidate-interview-form select:focus,.candidate-interview-form input:focus,.candidate-result-comment textarea:focus,.drawer-field textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #2563eb1f}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true],.drawer-input-shell.error,.modal-field.error input{border-color:var(--danger);background:var(--danger-bg)}input:disabled,select:disabled,textarea:disabled,input[readonly],.candidate-interview-form input[readonly]{background:#f8fafc;color:#64748b}.status-badge.resume_screening,.parse-status.success,.candidate-status.active,.resume-status.new,.resume-status.parsed,.ai-confidence.high{border-color:var(--success-line);background:var(--success-bg);color:var(--success)}.status-badge.interviewing,.parse-status.processing,.candidate-status.interview,.ai-confidence.medium{border-color:var(--pending-line);background:var(--pending-bg);color:var(--pending)}.status-badge.offer_sent{border-color:var(--warning-line);background:var(--warning-bg);color:var(--warning)}.status-badge.ended{border-color:#d1d5db;background:#f3f4f6;color:#4b5563}.parse-status.failed,.resume-status.failed,.ai-confidence.low{border-color:var(--danger-line);background:var(--danger-bg);color:var(--danger)}.resume-status.duplicate,.resume-status.review,.candidate-risk.warning{border-color:var(--warning-line);background:var(--warning-bg);color:var(--warning)}.candidate-avatar.blue,.talent-detail-avatar.blue,.jd-recommend-avatar,.jd-candidate-identity>span,.candidate-interview-profile>div:first-child,.candidate-result-profile>div:first-child{background:#dbeafe;color:#1d4ed8}.candidate-avatar.orange,.talent-detail-avatar.yellow{background:#fef3c7;color:#b45309}.candidate-avatar.green,.talent-detail-avatar.green{background:#dcfce7;color:#15803d}.talent-detail-avatar.purple{background:#ede9fe;color:#6d28d9}.talent-detail-avatar.pink{background:#fce7f3;color:#be185d}.talent-pool-icon{background:var(--purple)}.ai-pipeline-card,.jd-ai-logic,.tracking-card,.resume-match-card{background:#10233f}.drawer-header,.detail-header,.resume-drawer-header,.candidate-timeline-header,.candidate-interview-header,.candidate-result-header,.access-modal-header,.duplicate-modal-header{background:#fff}.drawer-footer,.candidate-timeline-footer,.candidate-interview-footer,.candidate-result-footer,.upload-drawer-footer,.reparse-drawer-footer,.access-modal-footer,.duplicate-modal-footer,.exception-footer{border-top:1px solid var(--line);background:#fff;box-shadow:0 -1px 2px #0f172a08}.drawer-body,.detail-body,.resume-drawer-body,.candidate-timeline-body,.candidate-interview-body,.candidate-result-body,.access-modal-body{background:#f8fafc}.drawer-card,.modal-card,.access-card,.duplicate-card,.candidate-interview-profile,.candidate-result-profile,.candidate-timeline-profile{background:#fff}.jd-match-page{padding:var(--page-y) var(--page-x) 36px}.jd-match-layout{gap:var(--panel-gap)}.resume-archive-grid{margin:var(--panel-gap) var(--page-x) 0;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--shadow-card)}.resume-profile-panel,.resume-stream-panel,.resume-archive-main{border:0;box-shadow:none}@media (max-width: 1280px){:root{--page-x: 20px;--page-y: 16px;--panel-pad: 14px;--panel-gap: 14px}.topnav{gap:22px}.content-header h1,.ai-page-header h1,.candidate-header h1,.jd-match-header h1,.talent-pool-title h1,.resume-archive-title h1{font-size:21px}.jobs-table td,.resume-file-table td,.ai-results-table td{height:60px}}@media (max-width: 1024px){.main>.content-header,.ai-page-header,.candidate-header,.talent-pool-header,.resume-archive-header,.metrics-grid,.ai-stat-grid,.candidate-stat-grid,.toolbar,.candidate-toolbar,.talent-detail-filterbar,.table-section,.candidate-list,.talent-pool-board,.talent-detail-list,.resume-upload-zone,.resume-record-card,.ai-pipeline-card,.ai-results-card,.resume-archive-grid{margin-left:16px;margin-right:16px}}@media (max-width: 760px){.page-header,.filter-bar{align-items:stretch;flex-direction:column}.page-header-actions{width:100%;justify-content:stretch}}.app-dialog-layer{align-items:stretch;justify-content:flex-end}.app-dialog.app-dialog--sm{width:min(400px,100vw)}.app-dialog.app-dialog--md{width:min(520px,100vw)}.app-dialog.app-dialog--lg{width:min(720px,100vw)}.app-dialog.app-dialog--xl{width:min(960px,100vw)}.app-dialog-header,.drawer-header,.detail-header,.resume-drawer-header,.candidate-timeline-header,.candidate-interview-header,.candidate-result-header,.access-modal-header{min-height:76px;padding:18px 24px}.app-dialog-title-copy h2,.drawer-header h2,.detail-title h2,.resume-drawer-header h2,.candidate-timeline-header h2,.candidate-interview-header h2,.candidate-result-header h2,.access-modal-title h2{margin:0;color:var(--text-primary);font-size:22px;font-weight:800;line-height:1.25;letter-spacing:0}.app-dialog-title-copy p,.drawer-header p,.resume-drawer-header p,.explain-drawer-header p{margin:5px 0 0;color:var(--text-tertiary);font-size:13px;line-height:1.5}.app-dialog-body{color:var(--text-secondary);font-size:14px;line-height:1.6}.app-dialog-footer,.drawer-footer,.candidate-timeline-footer,.candidate-interview-footer,.candidate-result-footer,.upload-drawer-footer,.reparse-drawer-footer,.access-modal-footer,.duplicate-modal-footer,.exception-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px}.app-dialog-button{display:inline-flex;align-items:center;justify-content:center;min-width:96px;height:38px;padding:0 16px;border-radius:var(--radius-md);font-size:14px;font-weight:700;cursor:pointer}.app-dialog-cancel{border:1px solid #cbd5e1;background:#fff;color:var(--text-secondary)}.app-dialog-confirm{border:1px solid var(--purple);background:var(--purple);color:#fff}.app-dialog-confirm.danger{border-color:var(--danger);background:var(--danger)}.app-dialog-confirm:disabled{border-color:#cbd5e1;background:#e2e8f0;color:#94a3b8;cursor:not-allowed}[data-section-id]{position:relative}[data-section-id]:before{content:attr(data-section-id);position:absolute;top:8px;left:10px;z-index:6;display:inline-flex;align-items:center;height:20px;padding:0 7px;border:1px solid rgba(79,70,229,.26);border-radius:999px;background:#ffffffeb;color:#4f46e5;font-size:11px;font-weight:800;line-height:1;pointer-events:none;box-shadow:0 4px 10px #0f172a14}[data-section-id]:hover{outline:1px solid rgba(79,70,229,.48);outline-offset:2px}.resume-file-actions[data-section-id]:before{top:4px;right:6px;left:auto;height:18px;padding:0 6px;font-size:10px}.resume-upload-action[data-section-id]:before{top:-28px;left:50%;transform:translate(-50%)}.resume-record-pagination[data-section-id]:before,.empty-table[data-section-id]:before{top:6px;left:8px}.app-dialog[data-section-id]:before{top:12px;left:14px}.requirement-panel{position:fixed;top:84px;right:20px;z-index:60;display:grid;gap:14px;width:min(420px,calc(100vw - 40px));max-height:calc(100vh - 108px);padding:16px;overflow-y:auto;border:1px solid #dbe3ef;border-radius:var(--radius-lg);background:#fffffffa;box-shadow:0 22px 54px #0f172a2e}.requirement-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.requirement-panel-header span{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;background:#eef2ff;color:#4f46e5;font-size:12px;font-weight:800}.requirement-panel-header button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #cbd5e1;border-radius:var(--radius-md);background:#fff;color:var(--text-secondary);cursor:pointer}.requirement-panel-title h2{margin:0;color:var(--text-primary);font-size:18px;font-weight:800;line-height:1.35}.requirement-panel-title p{margin:8px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.7}.requirement-panel-section{padding-top:12px;border-top:1px solid #eef2f7}.requirement-panel-section h3{margin:0 0 8px;color:var(--text-primary);font-size:13px;font-weight:800}.requirement-panel-section ul{display:grid;gap:6px;margin:0;padding-left:18px}.requirement-panel-section li{color:var(--text-secondary);font-size:12px;line-height:1.65}:root{--dashboard-bg: #f5f7fb;--dashboard-panel-bg: #ffffff;--dashboard-section-bg: #ffffff;--dashboard-border: #e2e8f0;--dashboard-radius: 16px;--dashboard-radius-sm: 10px;--dashboard-padding: 24px;--dashboard-padding-sm: 20px;--dashboard-gap: 16px;--dashboard-shadow: 0 1px 2px rgba(15, 23, 42, .04)}.page-shell{min-width:0;min-height:100%;padding:var(--dashboard-padding);background:var(--dashboard-bg)}.main.page-shell{min-height:100vh;padding:calc(73px + var(--dashboard-padding)) var(--dashboard-padding) var(--dashboard-padding)}.page-shell--content>*,.page-shell--wide>*{width:min(100%,calc(100vw - 48px));margin-left:auto;margin-right:auto}.page-shell--content>*{max-width:1180px}.page-shell--wide>*{max-width:1440px}.page-panel{min-width:0;overflow:hidden;border:1px solid var(--dashboard-border);border-radius:var(--dashboard-radius);background:var(--dashboard-panel-bg);box-shadow:var(--dashboard-shadow)}.panel-section{min-width:0;margin:0;padding:var(--dashboard-padding-sm) var(--dashboard-padding);border:0;border-radius:0;background:transparent;box-shadow:none}.page-panel>.panel-section+.panel-section{border-top:1px solid var(--dashboard-border)}.page-section{min-width:0;border:1px solid var(--dashboard-border);border-radius:var(--dashboard-radius);background:var(--dashboard-section-bg);padding:var(--dashboard-padding)}.page-section--shadow{box-shadow:var(--dashboard-shadow)}.page-header.page-section,.filter-bar.page-section{padding:var(--dashboard-padding-sm) var(--dashboard-padding)}.page-header-copy h1{margin:0;color:var(--text-primary);font-size:22px;font-weight:800;line-height:1.25;letter-spacing:0}.page-header-copy p{margin:6px 0 0;color:var(--text-tertiary);font-size:13px;line-height:1.5}.stat-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:96px;border:1px solid var(--dashboard-border);border-radius:var(--dashboard-radius-sm);background:#fff;padding:16px}.stat-card-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#eef2ff;color:var(--purple)}.stat-card-copy{min-width:0}.stat-card-label,.stat-card-description{display:block;color:var(--text-tertiary);font-size:13px;line-height:1.45}.stat-card-value{display:block;margin-top:6px;color:var(--text-primary);font-size:28px;font-weight:800;line-height:1.1}.stat-card-description{margin:8px 0 0}.stat-card-trend{color:var(--success);font-size:13px;font-weight:700}.data-table-section.page-section{padding:0;overflow:hidden}.data-table-section-header,.data-table-section-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px}.data-table-section-header{border-bottom:1px solid var(--dashboard-border)}.data-table-section-footer{border-top:1px solid var(--dashboard-border);background:#fff}.data-table-scroll{min-width:0;overflow-x:auto}.data-table-section table{width:100%;border-collapse:collapse}.data-table-section th{height:44px;background:#f8fafc;color:var(--text-tertiary);font-size:12px;font-weight:800}.data-table-section td{min-height:56px;border-top:1px solid var(--dashboard-border);color:var(--text-secondary);font-size:14px}.data-table-section-footer .pagination{position:static;inset:auto;width:100%}.data-table-section.table-section{margin-top:0}.detail-hero-card.page-section,.detail-card.page-section{background:#fff}.tracking-card.page-section{background:#12325f;color:#fff}.jobs-page{display:grid;gap:var(--dashboard-gap);min-width:0;margin:var(--page-y) var(--page-x) 0}.jobs-panel-header{display:flex;align-items:center;justify-content:space-between;min-height:88px}.jobs-panel-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--dashboard-gap)}.jobs-panel-stats .stat-card{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon label" ". value";align-content:center;column-gap:9px;row-gap:12px;min-height:95px;border-color:#e1e5ec;background:#fbfdff;padding:20px 16px 17px;box-shadow:none}.jobs-panel-stats .stat-card-icon{grid-area:icon;width:18px;height:18px;border-radius:0;background:transparent}.jobs-panel-stats .stat-card-copy{display:contents}.jobs-panel-filter{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}.jobs-panel-table .jobs-table th{height:50px;background:#fbfcfe;border-bottom-color:#e2e5ea}.jobs-panel-table .jobs-table td{height:82px;border-bottom-color:#eef1f5}.jobs-panel-table .data-table-section-footer{min-height:64px}.jobs-panel-stats .stat-card-label{grid-area:label;color:#555;font-size:14px;font-weight:800;line-height:1.2;white-space:nowrap}.jobs-panel-stats .stat-card-value{grid-area:value;margin-top:0;font-size:26px;font-weight:800;line-height:1}.ai-pipeline-card.page-section{min-height:268px;margin:24px var(--page-x);padding:32px;border:0;border-radius:12px;background:#342d82;color:#fff;box-shadow:none}.ai-pipeline-card h2{display:flex;align-items:center;gap:10px;margin:0 0 35px;color:#fff;font-size:20px;font-weight:800;line-height:1.25}.ai-pipeline-card h2 span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#ffffff2e;color:#fff}.ai-pipeline-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.ai-pipeline-steps article{min-height:115px;padding:20px;border:0;border-radius:8px;background:#ffffff1f}.ai-pipeline-steps span,.ai-pipeline-steps strong,.ai-pipeline-steps p{display:block}.ai-pipeline-steps span{color:#ffffff9e;font-size:13px;font-weight:800;line-height:1.2}.ai-pipeline-steps strong{margin-top:10px;color:#fff;font-size:20px;font-weight:800;line-height:1.25}.ai-pipeline-steps p{margin:10px 0 0;color:#ffffffd9;font-size:12px;font-weight:700;line-height:1.45}
