:root{color-scheme:light;font-family:Inter,PingFang SC,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5;color:#172033;background:#eef2f6;--bg: #eef2f6;--surface: #ffffff;--surface-muted: #f7f9fc;--line: #d9e0ea;--line-strong: #c6d0dc;--text: #172033;--text-primary: #0f172a;--text-secondary: #64748b;--muted: #68758a;--bg-page: #f8fafc;--border: #e2e8f0;--blue: #2563eb;--green: #0f766e;--orange: #d97706;--purple: #7c3aed;--red: #dc2626;--teal: #0891b2;--shadow: 0 12px 28px rgba(31, 41, 55, .08);--brand-accent: var(--blue);--brand-surface: #eff6ff;--brand-border: #bfdbfe;--brand-sidebar: #111827}[data-role=enterprise]{--brand-accent: #0f766e;--brand-surface: #f0fdfa;--brand-border: #99f6e4;--brand-sidebar: #0f2824}[data-role=platform]{--brand-accent: #c2410c;--brand-surface: #fff7ed;--brand-border: #fed7aa;--brand-sidebar: #2d1a0e}*{box-sizing:border-box}body{margin:0;min-width:1180px;background:var(--bg)}button,input,textarea{font:inherit}button{letter-spacing:0}#app{min-height:100vh}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:18px 14px;background:var(--brand-sidebar, #111827);color:#e5e7eb}.brand-block{display:flex;align-items:center;gap:12px;padding:8px 8px 20px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;background:#f8fafc;color:#111827;font-size:20px;font-weight:800}.brand-block strong,.brand-block span{display:block}.brand-block strong{color:#fff;font-size:17px}.brand-block span{margin-top:2px;color:#aeb8c8;font-size:12px}.side-nav{display:grid;gap:4px}.side-nav button{display:flex;align-items:center;gap:10px;width:100%;min-height:42px;padding:0 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:#cbd5e1;cursor:pointer;text-align:left}.side-nav button:hover{background:#ffffff14;color:#fff}.side-nav button.active{background:#fff;color:#111827}.sidebar-footer{margin-top:auto;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#ffffff0f}.sidebar-footer span,.sidebar-footer strong{display:block}.sidebar-footer span{color:#aeb8c8;font-size:12px}.sidebar-footer strong{margin:4px 0 12px;color:#fff}.main-shell{min-width:0}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;padding:14px 24px;border-bottom:1px solid var(--line);background:#fffffff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar h1{margin:0;font-size:22px;line-height:1.2}.topbar p{margin:4px 0 0;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:10px}.top-actions .el-input{width:320px}.role-select{width:138px}.role-tag{display:inline-flex;align-items:center;height:32px;padding:0 12px;border-radius:6px;font-size:13px;white-space:nowrap}.content{padding:24px}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(340px,.72fr);gap:16px;align-items:start}.panel{min-width:0;overflow:hidden;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.panel-span-2{grid-column:span 2}.panel-span-3{grid-column:span 3}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:14px}.panel-header>div:first-child{min-width:0}.panel-header h2{margin:0;font-size:16px;line-height:1.25}.panel-header p{margin:4px 0 0;color:var(--muted);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.table-header{align-items:center}.button-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.selected-count{font-size:13px;color:#1e40af;display:flex;align-items:center;white-space:nowrap}.dashboard-scope{grid-column:span 3;margin-bottom:4px}.metrics-grid{grid-column:span 3;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.metric-card{display:flex;align-items:flex-end;justify-content:space-between;min-height:104px;padding:16px;border:1px solid var(--line);border-left:4px solid var(--brand-accent, var(--blue));border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.metric-card strong{display:block;margin-top:8px;color:var(--text);font-size:26px;line-height:1}.metric-card span{color:var(--muted);font-size:12px;text-align:right}.metric-label{margin:0;color:var(--muted)}.metric-green{border-left-color:var(--green)}.metric-orange{border-left-color:var(--orange)}.metric-purple{border-left-color:var(--purple)}.metric-teal{border-left-color:var(--teal)}.metric-red{border-left-color:var(--red)}.chart{width:100%;height:300px}.chart-large{height:360px}.compact-table{--el-table-header-bg-color: #f8fafc;--el-table-border-color: #e5eaf2;font-size:13px}.progress-stack{display:flex;gap:6px;flex-wrap:wrap}.progress-stack span{min-width:44px;padding:3px 8px;border-radius:999px;background:#f1f5f9;color:#475569;text-align:center}.filter-grid{display:grid;grid-template-columns:minmax(200px,1.4fr) repeat(5,minmax(120px,1fr));gap:10px}.filter-grid--wide{grid-template-columns:minmax(200px,1.4fr) repeat(5,minmax(110px,1fr))}.quick-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.quick-filters button,.template-list button{border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);color:var(--text);cursor:pointer}.quick-filters button{padding:7px 10px}.quick-filters button:hover,.template-list button:hover{border-color:var(--brand-accent, var(--blue));color:var(--brand-accent, var(--blue))}.resumes-layout .upload-panel,.resumes-layout .search-panel{grid-column:span 3}.resume-uploader .el-upload-dragger{padding:24px;border-radius:8px}.upload-drop{display:grid;place-items:center;gap:6px;color:var(--muted)}.upload-drop strong{color:var(--text);font-size:16px}.upload-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:14px}.upload-actions .el-select{width:180px}.parse-progress{display:grid;grid-template-columns:260px minmax(0,1fr);align-items:center;gap:16px;margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.parse-progress strong,.parse-progress span{display:block}.parse-progress span{color:var(--muted);font-size:12px}.mini-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.mini-stats span{padding:6px 10px;border-radius:999px;background:#eef2ff;color:#374151}.candidate-cell strong,.candidate-cell span{display:block}.candidate-cell span{margin-top:2px;color:var(--muted);font-size:12px}.tag-row{display:flex;flex-wrap:wrap;gap:5px}.skill-req-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.skill-req-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 4px 2px 10px;border-radius:4px;background:var(--brand-accent, #409eff);color:#fff;font-size:12px}.skill-req-tag.preferred{background:#909399}.skill-req-tag .skill-req-name{font-weight:500}.skill-req-tag .el-button{color:#fff;font-size:11px;padding:0 6px;min-height:auto;height:22px}.skill-req-tag .el-button:hover{color:#fff;opacity:.8}.score{color:var(--brand-accent, var(--blue))}.drawer-content{display:grid;gap:14px}.detail-block{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.detail-block h3{margin:0 0 10px;font-size:15px}.detail-block p{margin:0;color:#334155}.detail-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.detail-block-header h3{margin:0}.follow-up-timeline{display:grid;gap:10px}.follow-up-item{padding:10px;border-left:3px solid var(--brand, #2563eb);background:#fff;border-radius:4px}.follow-up-item.is-pending{border-left-color:#dc2626;background:#fef2f2}.follow-up-meta{display:flex;gap:8px;align-items:center;margin-bottom:6px;font-size:13px;color:#64748b}.follow-up-by{font-weight:600;color:#334155}.follow-up-content{font-size:14px;line-height:1.6;margin:0 0 6px!important}.follow-up-next{font-size:12px;color:#ea580c;margin-bottom:4px}.follow-up-actions{display:flex;gap:4px;justify-content:flex-end}.follow-up-empty{text-align:center;color:#94a3b8;padding:20px}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.detail-list div{min-width:0}.detail-list dt{color:var(--muted);font-size:12px}.detail-list dd{margin:2px 0 0;color:var(--text)}.resume-preview{min-height:160px;padding:14px;border:1px dashed var(--line-strong);border-radius:8px;background:#fff}.resume-file-list{display:grid;gap:10px}.resume-file-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.resume-file-item div{min-width:0}.resume-file-actions{display:flex;flex-shrink:0;gap:8px}.resume-file-item strong,.resume-file-item span,.resume-file-item small{display:block}.resume-file-item span,.resume-file-item small{margin-top:2px;color:var(--muted);font-size:12px}.resume-preview-modal{min-height:360px}.resume-preview-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.resume-preview-meta span{padding:4px 8px;border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:12px;background:#f8fafc}.resume-preview-frame{width:100%;height:64vh;min-height:460px;border:1px solid var(--line);border-radius:8px;background:#fff}.resume-image-preview{display:block;max-width:100%;max-height:64vh;margin:0 auto;border:1px solid var(--line);border-radius:8px;background:#fff;object-fit:contain}.resume-text-preview{min-height:280px;padding:16px;border:1px solid var(--line);border-radius:8px;white-space:pre-wrap;line-height:1.7;color:var(--text);background:#f8fafc}.jobs-layout .panel-span-2,.collaboration-layout .panel-span-2,.billing-layout .panel-span-2,.org-layout .panel-span-2{grid-column:span 2}.balance-panel{background:linear-gradient(135deg,#f8fafc,#eff6ff);border-color:#bfdbfe}.balance-grid{display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:12px}.balance-card{padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);display:flex;flex-direction:column;gap:6px}.balance-card.wallet{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:transparent}.balance-card.wallet .balance-label,.balance-card.wallet .balance-sub{color:#ffffffbf}.balance-label{font-size:13px;color:var(--muted)}.balance-value{font-size:28px;font-weight:700;line-height:1}.balance-value small{font-size:14px;font-weight:400;margin-left:4px;color:var(--muted)}.wallet .balance-value small{color:#ffffffa6}.announcement-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;margin-bottom:16px;border-radius:8px;font-size:13px;line-height:1.5;animation:announcement-slide .3s ease-out}@keyframes announcement-slide{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.announcement-bar.announcement-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.announcement-bar.announcement-warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.announcement-bar.announcement-success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.announcement-inner{display:flex;align-items:center;gap:10px;flex:1}.announcement-icon{flex-shrink:0;opacity:.7}.announcement-text{flex:1}.announcement-close{background:none;border:none;font-size:18px;cursor:pointer;color:inherit;opacity:.5;padding:0 0 0 12px;line-height:1}.announcement-close:hover{opacity:.8}.credit-cost-hint{font-size:12px;color:var(--muted);margin:8px 0 0;padding:6px 10px;background:#f8fafc;border-radius:6px;line-height:1.6}.balance-sub{font-size:12px;color:var(--muted)}.credit-balance-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(135deg,#f0f9ff,#eff6ff);border:1px solid #bfdbfe;border-radius:10px;margin-bottom:20px}.credit-balance-label{font-size:13px;color:#6b7280}.credit-balance-value{font-size:20px;font-weight:700;color:#1e40af}.credit-balance-hint{font-size:12px;color:#9ca3af;margin-left:auto}.credit-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.credit-package-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 12px 18px;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s;background:#fff}.credit-package-card:hover{border-color:#93c5fd;box-shadow:0 4px 12px #2563eb14}.credit-package-card.selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 4px 16px #2563eb26}.credit-package-card.recommended{border-color:#fbbf24}.credit-package-card.recommended.selected{border-color:#2563eb}.credit-package-card.disabled{opacity:.5;cursor:not-allowed}.credit-package-card.disabled:hover{border-color:#e5e7eb;box-shadow:none}.pkg-badge{position:absolute;top:-10px;right:-8px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:11px;font-weight:600;padding:2px 10px;border-radius:20px;box-shadow:0 2px 6px #f59e0b59}.pkg-icon{color:#9ca3af;margin-bottom:4px}.credit-package-card.selected .pkg-icon{color:#2563eb}.credit-package-card.recommended .pkg-icon{color:#f59e0b}.credit-package-card.recommended.selected .pkg-icon{color:#2563eb}.pkg-credits{font-size:22px;font-weight:700;color:#111827}.pkg-credits small{font-size:13px;color:#6b7280;font-weight:400}.pkg-price{font-size:18px;font-weight:600;color:#2563eb}.pkg-unit{font-size:12px;color:#9ca3af}.pkg-save{font-size:12px;color:#16a34a;background:#f0fdf4;padding:2px 8px;border-radius:10px;font-weight:500}.pkg-insufficient{font-size:11px;color:#dc2626;background:#fef2f2;padding:2px 8px;border-radius:10px}.credit-selected-summary{margin-top:16px;padding:10px 16px;background:#f0f9ff;border-radius:8px;text-align:center;font-size:14px;color:#374151}.credit-selected-summary strong{color:#2563eb}.job-filters{margin-bottom:14px}.batch-actions{margin-bottom:8px;display:flex;gap:8px}.template-list{display:grid;gap:10px}.template-list button{display:grid;gap:4px;width:100%;padding:12px;text-align:left}.template-list span{font-weight:700}.template-list small{color:var(--muted)}.reminder-list,.feedback-list,.deal-list,.privacy-list,.company-list,.incentive-list,.price-list,.quota-list,.insight-list,.contract-summary-list{display:grid;gap:10px}.contract-summary-item{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.contract-summary-item span{min-width:60px;color:#475569;font-size:14px}.contract-summary-item strong{font-size:22px;font-weight:700}.contract-summary-item small{color:#64748b;margin-left:auto}.contract-link{color:var(--brand-accent, #3b82f6);cursor:pointer;font-weight:600;font-size:13px}.contract-link:hover{text-decoration:underline}.contract-tag{display:inline-block;margin-top:2px;font-size:12px;color:#0f766e;background:#f0fdfa;padding:1px 7px;border-radius:4px}.text-muted{color:#94a3b8;font-size:13px}.empty-hint{text-align:center;padding:24px;color:#94a3b8;font-size:14px}.settlement-detail{display:flex;align-items:center;gap:10px;margin-top:4px;font-size:13px;color:#475569}.settlement-detail span{font-weight:600;color:#0f766e}.eval-text{display:block;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reminder-item,.feedback-item,.company-item,.insight-item,.incentive-list>div,.privacy-list>div{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.reminder-item div,.insight-item div,.incentive-list>div>div{min-width:0;flex:1}.reminder-item strong,.reminder-item span,.insight-item strong,.insight-item span,.incentive-list strong,.incentive-list span,.company-item strong,.company-item span{display:block}.reminder-item span,.insight-item span,.incentive-list span,.company-item span{color:var(--muted);font-size:12px}.company-actions{display:flex;align-items:center;gap:4px}.dept-list{display:grid;gap:2px}.dept-item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:var(--surface-muted);border-radius:6px;font-size:13px}.dept-item strong{font-weight:600}.dept-item span{color:var(--muted);font-size:12px}.dept-empty{text-align:center;padding:24px;color:var(--muted);font-size:13px}.match-workbench{display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px}.match-selector{display:grid;gap:12px}.match-result{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:center}.suggestion-grid,.evaluation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.suggestion-item,.evaluation-result,.report-paper,.match-row,.deal-item,.price-list>div,.quota-list>div,.security-grid>div,.commission-box{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.dimension-item span,.dimension-item small{display:block}.dimension-item small{color:var(--muted)}.report-paper h3{margin:0 0 10px}.report-paper p{margin:0 0 14px;color:#334155}.report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.report-grid dt{color:var(--muted);font-size:12px}.report-grid dd{margin:2px 0 0;font-weight:700}.question-list{display:grid;gap:10px;margin:0;padding-left:20px}.evaluation-result{display:grid;gap:10px}.evaluation-result>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.evaluation-result p{margin:0;color:#334155}.match-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.match-row strong,.match-row span{display:block}.match-row span{color:var(--muted);font-size:12px}.feedback-item{align-items:flex-start;flex-direction:column}.feedback-item span{color:var(--muted);font-size:12px}.feedback-item p{margin:0;color:#334155}.deal-list{grid-template-columns:repeat(3,minmax(0,1fr))}.deal-item span,.deal-item strong,.deal-item small{display:block}.deal-item strong{margin:6px 0;font-size:24px}.deal-item small{color:var(--muted)}.offer-list{display:grid;gap:8px;margin-top:12px}.offer-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.offer-item div{min-width:0}.offer-item strong,.offer-item span{display:block}.offer-item span{margin-top:2px;color:var(--muted);font-size:12px}.privacy-list>div{justify-content:space-between}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.plan-card{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.plan-card.highlighted{border-color:var(--brand-accent, var(--blue));background:#eff6ff}.plan-card span{color:var(--muted);font-size:12px}.plan-card h3{margin:4px 0}.plan-card strong{font-size:22px}.plan-bundle{margin-top:6px;padding:4px 10px;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:6px;display:flex;align-items:baseline;gap:4px}.plan-bundle .bundle-value{font-size:16px;font-weight:700;color:#d97706}.plan-bundle .bundle-label{font-size:11px;color:#92400e}.credit-low{color:#dc2626!important;font-weight:600}.plan-card ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.plan-card li{display:flex;align-items:center;gap:8px;color:#334155}.price-list>div,.quota-list>div{display:grid;gap:5px}.price-list strong{font-size:18px}.price-list small{color:var(--muted)}.invoice-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.invoice-item{display:flex;align-items:center;gap:8px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.invoice-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-item strong{flex-shrink:0;color:var(--muted);font-size:12px}.commission-box{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.commission-box span,.commission-box strong{display:block}.commission-box strong{font-size:24px}.compact-timeline{padding-left:4px}.pay-summary{text-align:center;padding:16px 0;border-bottom:1px solid var(--line);margin-bottom:16px}.pay-amount span{font-size:14px;color:var(--text-secondary)}.pay-amount strong{display:block;font-size:36px;color:var(--text-primary);margin-top:4px}.pay-detail{margin-top:6px;font-size:13px;color:var(--text-secondary)}.pay-channel-group{display:flex;justify-content:center;margin-bottom:20px}.qr-mock{text-align:center}.qr-box{width:180px;height:180px;margin:0 auto 12px;border:2px dashed var(--line);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--bg-page)}.qr-icon{font-size:40px}.qr-box span{font-size:13px;color:var(--text-secondary)}.qr-hint{font-size:13px;color:var(--text-secondary);margin:0 0 4px}.qr-amount{font-size:20px;font-weight:600;color:var(--text-primary);margin:0}.bank-info{padding:12px 16px;background:var(--bg-page);border-radius:8px;margin-bottom:8px}.bank-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px}.bank-row:not(:last-child){border-bottom:1px solid var(--line)}.bank-row span{color:var(--text-secondary)}.bank-hint{margin:8px 0 0;font-size:12px;color:var(--text-warning, #e6a23c)}.org-tree{padding:8px 0;background:transparent}.tree-node{display:flex;align-items:center;gap:8px}.company-list{max-height:362px;overflow:auto}.company-item{justify-content:space-between}.security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.security-grid>div{display:grid;gap:6px}.security-grid span{color:var(--muted);font-size:12px}.settings-form .el-select,.dialog-form .el-select,.dialog-form .el-date-editor{width:100%}.permission-table .el-checkbox{height:22px}.assistant{position:fixed;z-index:50;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 22px 50px #0f172a2e;overflow:hidden!important}.assistant.collapsed{width:auto!important;height:auto!important}.assistant.dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.assistant.resizing{-webkit-user-select:none;user-select:none}.assistant-header{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:10px 12px;background:#172033;color:#fff;cursor:grab;-webkit-user-select:none;user-select:none}.drag-handle{opacity:.5}.assistant-title{flex:1;min-width:0;font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-header-actions{display:flex;gap:4px}.header-action-btn{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:6px;background:transparent;color:#94a3b8;cursor:pointer}.header-action-btn:hover{background:#ffffff1f;color:#fff}.assistant-body{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;padding:12px;overflow:hidden!important}.assistant-context{flex-shrink:0;display:flex;flex-wrap:wrap;gap:6px;padding-bottom:8px;margin-bottom:10px;border-bottom:1px solid var(--line)}.assistant-context:empty{display:none}.context-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;background:#eff6ff;color:#2563eb;font-size:12px;white-space:nowrap;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis}.context-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-chip-close{display:grid;place-items:center;width:16px;height:16px;border:0;border-radius:50%;background:transparent;color:#93c5fd;cursor:pointer;font-size:14px;line-height:1;padding:0;margin-left:2px}.context-chip-close:hover{background:#dbeafe;color:#1d4ed8}.assistant-messages{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:8px;overflow-x:hidden;overflow-y:auto;padding:2px 0}.assistant-message{max-width:88%;padding:9px 12px;border-radius:10px;font-size:14px;line-height:1.5;min-width:0!important;word-break:break-all!important;overflow-wrap:anywhere!important;box-sizing:border-box}.assistant-message:not(.user){background:#f1f5f9;color:#334155}.assistant-message.user{align-self:flex-end;background:#dbeafe;color:#1d4ed8}.msg-text{min-width:0;font-size:14px;line-height:1.5;white-space:normal;word-break:break-all!important;overflow-wrap:anywhere!important}.msg-text *{max-width:100%!important;word-break:break-all!important;overflow-wrap:anywhere!important}.msg-text p{margin:0 0 4px}.msg-text p:last-child{margin-bottom:0}.msg-text ul,.msg-text ol{margin:4px 0;padding-left:18px}.msg-text li{margin-bottom:2px}.msg-text strong{color:#1e293b}.msg-sources{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;padding-top:6px;border-top:1px solid rgba(0,0,0,.08);min-width:0}.msg-source-tag{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:4px;background:#2563eb14;color:#3b82f6;font-size:11px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-suggestions{flex-shrink:0;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;min-width:0}.assistant-suggestions button{padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);cursor:pointer;font-size:12px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.assistant-suggestions button:hover{background:var(--surface-muted)}.assistant-form{flex-shrink:0;display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:8px;margin-top:10px}.assistant-form input{width:100%;min-width:0;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;outline:none;font-size:14px}.assistant-form button{display:grid;place-items:center;border:0;border-radius:8px;background:var(--brand-accent, var(--blue));color:#fff;cursor:pointer}.assistant-form button:disabled{opacity:.5;cursor:not-allowed}.assistant-resize-handle{position:absolute;bottom:0;right:0;width:18px;height:18px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,rgba(148,163,184,.4) 50%);border-bottom-right-radius:10px}.assistant-resize-handle:hover{background:linear-gradient(135deg,transparent 50%,rgba(37,99,235,.5) 50%)}.spin{animation:spin .8s linear infinite}.auth-shell{display:grid;grid-template-columns:minmax(520px,1fr) 460px;min-height:100vh;background:#f4f7fb}.auth-visual{display:flex;flex-direction:column;justify-content:space-between;padding:42px;background:linear-gradient(#111827b8,#111827c2),url(https://images.unsplash.com/photo-1551836022-d5d88e9218df?auto=format&fit=crop&w=1600&q=80);background-position:center;background-size:cover;color:#fff}.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand .brand-mark{background:#fff}.auth-brand strong,.auth-brand span{display:block}.auth-brand strong{font-size:18px}.auth-brand span{color:#dbe4f0;font-size:12px}.auth-copy{max-width:680px}.auth-copy h1{margin:0;max-width:680px;font-size:42px;line-height:1.12}.auth-copy p{max-width:620px;margin:18px 0 0;color:#dbe4f0;font-size:16px}.auth-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,160px));gap:12px}.auth-metrics div{padding:14px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#ffffff1a}.auth-metrics strong,.auth-metrics span{display:block}.auth-metrics strong{font-size:24px}.auth-metrics span{color:#dbe4f0}.auth-panel{align-self:center;width:420px;margin:0 auto;padding:28px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.auth-form{padding-top:10px}.sms-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:8px;width:100%}.auth-switch{display:flex;align-items:center;justify-content:space-between;margin:4px 0 16px}.auth-submit{width:100%}.third-party-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.auth-hint{display:flex;align-items:center;gap:8px;margin-top:14px;padding:10px;border-radius:8px;background:#f1f5f9;color:#475569;font-size:12px}.global-search-panel{max-height:390px;overflow:auto}.global-search-list{display:grid;gap:8px}.global-search-list button{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);cursor:pointer;text-align:left}.global-search-list button:hover{border-color:var(--brand-accent, var(--blue))}.global-search-list strong,.global-search-list span{display:block}.global-search-list span{color:var(--muted);font-size:12px}.notification-list{display:grid;gap:10px}.notification-item{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.notification-item.unread{border-color:#93c5fd;background:#eff6ff}.notification-item strong,.notification-item span{display:block}.notification-item span{margin-top:2px;color:var(--muted);font-size:12px}.notification-item p{margin:0;color:#334155}.import-tabs{margin-top:-4px}.import-form,.mailbox-grid{display:grid;gap:12px}.import-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.import-actions .el-select{width:180px}.mailbox-grid{grid-template-columns:320px minmax(0,1fr);align-items:start}.mailbox-left{display:grid;gap:0}.mailbox-right{display:grid;gap:8px}.mailbox-right-header{display:flex;align-items:center;justify-content:space-between;padding:4px 0}.mailbox-right-header strong{font-size:14px}.mailbox-right-header span{font-size:12px;color:var(--text-secondary)}.mailbox-form{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.mailbox-form .el-form-item{margin-bottom:10px}.mailbox-form .el-input-number{width:100%}.inline-actions{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:6px 0}.mailbox-buttons{display:flex;gap:8px;flex-wrap:wrap}.sync-result-box{padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);font-size:13px}.sync-result-box>div{display:flex;align-items:center;gap:8px;margin-bottom:4px}.sync-note{margin:4px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.5}.duplicate-box{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid #fed7aa;border-radius:8px;background:#fff7ed}.duplicate-box>.dup-row{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;padding:6px 0;border-bottom:1px solid #fed7aa}.duplicate-box>.dup-row:last-child{border-bottom:none}.duplicate-box .dup-info{display:flex;align-items:center;gap:8px}.duplicate-box .dup-name{font-weight:600}.duplicate-box small{color:var(--muted);font-size:.82rem}.saved-filter-panel{transition:padding .25s ease}.saved-filter-panel.collapsed{padding-bottom:12px}.sf-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;-webkit-user-select:none;user-select:none}.sf-header-left{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--text)}.sf-header-icon{color:var(--brand-accent, #2563eb);flex-shrink:0}.sf-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--brand-accent, #2563eb);color:#fff;font-size:11px;font-weight:600;line-height:1}.sf-toggle{flex-shrink:0}.sf-collapse-enter-active,.sf-collapse-leave-active{transition:opacity .2s ease,transform .2s ease;overflow:hidden}.sf-collapse-enter-from,.sf-collapse-leave-to{opacity:0;transform:translateY(-6px)}.sf-body{min-width:0}.sf-list{display:grid;gap:6px}.sf-item{position:relative;display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px 10px 0;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);color:var(--text);cursor:pointer;text-align:left;overflow:hidden;transition:border-color .15s,box-shadow .15s,background .15s}.sf-item:hover{border-color:var(--accent, var(--blue));background:var(--surface);box-shadow:0 1px 4px #0000000a}.sf-item:hover .sf-remove{opacity:1}.sf-accent-bar{flex-shrink:0;width:4px;height:32px;border-radius:0 3px 3px 0;background:var(--accent, var(--blue))}.sf-item-body{flex:1;min-width:0}.sf-item-name{display:block;font-size:13px;font-weight:600;line-height:1.4;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-item-conds{display:block;margin-top:2px;font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-remove{flex-shrink:0;opacity:0;transition:opacity .15s}.sf-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 10px 16px;color:var(--muted)}.sf-empty span{font-size:13px}.sf-empty small{font-size:11px;color:#9ca3af;text-align:center;line-height:1.5}.export-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.profile-layout .panel-span-2{grid-column:span 2}.profile-card{display:grid;place-items:center;gap:8px;margin-bottom:18px;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);text-align:center}.profile-avatar{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#172033;color:#fff;font-size:28px;font-weight:800}.profile-card h2{margin:0}.profile-card span{color:var(--muted)}.profile-form .el-button{width:100%}.permission-chip-list{display:flex;flex-wrap:wrap;gap:8px}.account-bindings{margin-top:18px}.account-bindings h3{margin:0 0 10px;font-size:15px}.binding-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.binding-row+.binding-row{margin-top:8px}.binding-row strong,.binding-row span{display:block}.binding-row span{color:var(--muted);font-size:12px}.security-section h3,.notification-section h3{margin:0 0 10px;font-size:14px;font-weight:600}.password-change{display:grid;gap:8px}.notif-prefs{display:grid;gap:6px}.notif-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:13px}.integration-layout .panel-span-3{grid-column:span 3}.integration-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.integration-summary div{padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.integration-summary span,.integration-summary strong{display:block}.integration-summary span{color:var(--muted)}.integration-summary strong{margin-top:6px;font-size:24px}.integration-category-list{display:grid;gap:8px}.integration-category-list button{min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);color:var(--text);cursor:pointer;text-align:left}.integration-category-list button.active,.integration-category-list button:hover{border-color:var(--brand-accent, var(--blue));background:#eff6ff;color:var(--brand-accent, var(--blue))}.integration-service strong,.integration-service span{display:block}.integration-service span{margin-top:2px;color:var(--muted);font-size:12px}.integration-principles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.integration-principles div{display:grid;gap:8px;min-height:132px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.integration-principles strong,.integration-principles span{display:block}.integration-principles span{color:var(--muted);font-size:12px}.integration-drawer{display:grid;gap:14px}.credential-list{display:grid;gap:10px;width:100%}.credential-row{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:10px}.credential-row span{color:var(--muted)}.credential-row-pem{align-items:start}.integration-test-result{display:grid;gap:4px;padding:12px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff}.integration-test-result span{color:var(--muted);font-size:12px}.el-card,.el-button,.el-input__wrapper,.el-select__wrapper,.el-textarea__inner,.el-dialog,.el-message-box,.el-tag,.el-alert,.el-upload-dragger{border-radius:8px}.el-button.is-circle{border-radius:50%}@media(max-width:1600px){.page-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dashboard-scope,.metrics-grid,.resumes-layout .upload-panel,.resumes-layout .search-panel{grid-column:span 2}.metrics-grid,.plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.filter-grid{grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(110px,1fr))}}@media(max-width:1180px){.page-grid{grid-template-columns:minmax(0,1fr)}.dashboard-scope,.panel-span-2,.resumes-layout .upload-panel,.resumes-layout .search-panel{grid-column:span 1}.metrics-grid{grid-column:span 1;grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid{grid-template-columns:minmax(160px,1.4fr) repeat(3,minmax(100px,1fr))}}@media(max-width:1180px){body{min-width:980px}.app-shell{grid-template-columns:220px minmax(0,1fr)}.top-actions .el-input{width:240px}}.contract-preview-dialog .el-dialog__body{padding:0;display:flex;flex-direction:column;overflow:hidden}.contract-preview-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--bg-secondary, #f8fafc);flex-shrink:0}.contract-preview-toolbar .preview-controls{display:flex;align-items:center;gap:12px}.contract-preview-body{flex:1;overflow:auto;background:#e5e7eb;padding:32px 24px 48px;display:flex;justify-content:center}.contract-paper{width:780px;background:#fff;padding:56px 64px 48px;box-shadow:0 2px 20px #0000001f;border-radius:4px;transition:transform .2s}.contract-paper-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.contract-paper-header h1{font-size:22px;letter-spacing:2px;margin:0;color:#1f2937}.contract-paper-badge{padding:4px 14px;border-radius:20px;font-size:12px;font-weight:600;background:var(--brand-surface, #eff6ff);color:var(--brand-accent, var(--blue));border:1px solid var(--brand-border, #bfdbfe);flex-shrink:0}.contract-paper-badge.signed{background:#ecfdf5;color:#059669;border-color:#a7f3d0}.contract-paper-badge.voided{background:#fef2f2;color:#dc2626;border-color:#fecaca}.contract-paper-badge.pending{background:#fffbeb;color:#d97706;border-color:#fde68a}.contract-paper-subtitle{font-size:13px;color:#6b7280;margin:0 0 24px}.paper-meta-row{display:flex;border-bottom:1px dashed #e5e7eb;padding:8px 0;font-size:14px}.paper-meta-row label{width:100px;color:#6b7280;flex-shrink:0}.paper-meta-row span{font-weight:500}.contract-paper-preamble{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:16px 20px;margin-bottom:20px}.contract-paper-preamble p{font-size:14px;margin:0 0 4px;line-height:1.8}.contract-paper-preamble p:last-child{margin-bottom:0}.preamble-intro{margin-top:8px!important;padding-top:8px;border-top:1px dashed #e5e7eb;font-size:13px!important;color:#4b5563}.contract-paper-summary{display:flex;flex-wrap:wrap;gap:0;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:20px;overflow:hidden}.summary-item{flex:1 1 50%;display:flex;padding:10px 16px;font-size:13px;background:#fff;border-bottom:1px solid #f3f4f6}.summary-item:nth-child(odd){border-right:1px solid #f3f4f6}.summary-item:nth-last-child(-n+2){border-bottom:none}.summary-label{color:#6b7280;width:70px;flex-shrink:0}.summary-value{font-weight:600;color:#1f2937}.contract-paper-body h3{font-size:15px;margin:20px 0 12px;padding-bottom:6px;border-bottom:2px solid #1f2937;color:#1f2937}.paper-clause{display:flex;gap:10px;padding:10px 14px;margin-bottom:4px;background:#fafbfc;border-radius:6px;border-left:3px solid #e5e7eb;transition:all .3s}.paper-clause.highlight{border-left-color:var(--brand-accent, var(--blue));background:var(--brand-surface, #eff6ff)}.paper-clause.special{border-left-color:#f59e0b;background:#fffbeb}.clause-num{font-size:14px;font-weight:600;color:#9ca3af;min-width:24px;padding-top:1px}.clause-body{flex:1;min-width:0}.clause-label{font-size:13px;color:#374151;font-weight:600;margin-bottom:2px}.clause-content{font-size:13px;color:#4b5563;line-height:1.6}.contract-paper-signatures{display:flex;justify-content:space-between;margin-top:40px;padding-top:20px;border-top:1px solid #e5e7eb}.sig-block{width:260px;text-align:center}.sig-label{font-size:13px;color:#6b7280;margin-bottom:14px;font-weight:500}.sig-stamp{padding:16px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fafcfd}.sig-stamp-red{font-size:16px;font-weight:700;color:#dc2626;margin-bottom:8px}.sig-info{font-size:12px;color:#6b7280;line-height:1.6}.sig-sms{font-size:11px;color:#9ca3af;margin-top:4px}.sig-placeholder{display:flex;align-items:center;justify-content:center;gap:6px;padding:20px;border:2px dashed #d1d5db;border-radius:8px;color:#9ca3af;font-size:14px}.sig-wait-icon{color:#d1d5db}.contract-paper-footer{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:36px;padding-top:12px;border-top:1px solid #e5e7eb;font-size:11px;color:#9ca3af;word-break:break-all}.contract-sign-dialog .sign-steps{margin-bottom:24px}.sign-step-body{min-height:300px}.sign-sms-section{display:flex;flex-direction:column;gap:16px;align-items:center;margin-top:24px}.sms-phone-display{text-align:center;padding:16px 32px;background:#f0f9ff;border-radius:8px}.sms-phone-display span{display:block;font-size:13px;color:#6b7280;margin-bottom:4px}.sms-phone-display strong{font-size:20px;letter-spacing:2px}.sms-input{width:260px}.sms-input .el-input__inner{letter-spacing:8px;font-size:18px;text-align:center}.sms-hint{font-size:12px;color:#9ca3af}.sms-hint code{background:#f3f4f6;padding:2px 6px;border-radius:3px;font-weight:600}.sign-summary{margin-bottom:20px}.sign-agree{margin-bottom:20px;display:flex;justify-content:center}.sign-confirm-btn{width:100%}.sign-complete{text-align:center}.seal-animation-container{height:260px;display:flex;align-items:center;justify-content:center}.seal-circle{width:180px;height:180px;border-radius:50%;border:6px solid #dc2626;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.3) rotate(-180deg);transition:all .8s cubic-bezier(.34,1.56,.64,1)}.seal-circle.seal-stamped{opacity:1;transform:scale(1) rotate(0)}.seal-inner{text-align:center;color:#dc2626}.seal-company{font-size:14px;font-weight:700}.seal-text{font-size:10px;margin:4px 0;letter-spacing:1px}.seal-date{font-size:10px;color:#9ca3af}.evidence-card{margin-top:16px}.evidence-hash{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f9fafb;border-radius:8px;margin-bottom:8px}.evidence-label{font-size:13px;color:#6b7280;flex-shrink:0}.evidence-value.mono{font-family:SF Mono,Cascadia Code,monospace;font-size:12px;word-break:break-all;flex:1;color:#374151}.todo-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.todo-card{display:flex;align-items:center;gap:14px;padding:16px 20px;background:#fff;border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:box-shadow .2s,transform .15s}.todo-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.todo-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.todo-count{font-size:22px;font-weight:700}.todo-label{font-size:13px;color:#6b7280}.dashboard-alert{margin-bottom:16px}.clause-editor{width:100%}.clause-edit-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}.clause-edit-row .el-input:last-child{flex:1}.template-preview-paper{padding:24px;background:#f9fafb;border-radius:8px}.metric-big-number{font-size:42px;font-weight:700;text-align:center;padding:20px;color:var(--brand-accent, var(--blue))}.metric-big-number span{font-size:16px;font-weight:400;color:#6b7280}.metric-detail-row{display:flex;justify-content:space-around;padding:8px 0}.detail-item{text-align:center}.detail-label{font-size:12px;color:#6b7280}.detail-value{font-size:16px;font-weight:600}.metric-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.metric-value{font-size:28px;font-weight:700;margin:4px 0}.metric-trend{font-size:13px;display:flex;align-items:center;gap:4px}.metric-trend.up{color:#16a34a}.metric-trend.down{color:#dc2626}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:20px}.card{background:var(--surface);border-radius:12px;padding:20px;box-shadow:var(--shadow)}.card h4{margin:0 0 16px;font-size:15px;font-weight:600}.chart-box{width:100%;height:280px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h3{margin:0;font-size:15px;font-weight:600}.section-actions{display:flex;gap:8px;align-items:center}.filter-bar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px;align-items:center}.data-dashboard-page,.enterprise-insight-page,.platform-console-page,.contract-page{padding:0}.contract-summary-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.summary-card{background:var(--surface);border-radius:12px;padding:20px;text-align:center;box-shadow:0 2px 8px #0000000f}.summary-num{font-size:32px;font-weight:700;color:var(--brand-accent)}.summary-label{font-size:13px;color:var(--text-secondary);margin-top:4px}.tenant-detail-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.detail-card{background:var(--bg);border-radius:8px;padding:14px 16px}.detail-card-label{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.detail-card-value{font-size:15px;font-weight:600;color:var(--text-primary)}.todo-info{display:flex;flex-direction:column;gap:2px}.match-preview{padding:12px;background:var(--bg-page);border-radius:8px}.perm-tips{padding:12px 16px;background:var(--brand-surface);border-radius:8px;font-size:13px;color:var(--text-secondary);margin-bottom:16px}.drawer-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.candidate-edit-form{padding:8px 0}.follow-up-time{font-size:12px;color:var(--text-secondary)}.resume-preview-dialog{min-height:500px}.profile-drawer .el-drawer__body{padding:0}.profile-drawer-header{display:flex;justify-content:space-between;align-items:center;width:100%}.profile-header-left{display:flex;align-items:center;gap:12px}.profile-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.profile-header-name{font-size:16px;font-weight:700;color:#1e293b}.profile-header-subtitle{font-size:13px;color:#64748b;margin-top:2px}.header-dot{margin:0 4px;color:#94a3b8}.profile-header-actions{display:flex;align-items:center;gap:8px}.profile-drawer-body{display:flex;height:calc(100vh - 120px);overflow:hidden}.profile-sidebar{width:280px;flex-shrink:0;overflow-y:auto;padding:16px;background:#f8fafc;border-right:1px solid #e2e8f0}.sidebar-card{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.sidebar-card:last-child{border-bottom:none;margin-bottom:0}.sidebar-card-title{font-size:13px;font-weight:600;color:#64748b;margin:0 0 10px;text-transform:uppercase;letter-spacing:.5px}.info-grid{display:grid;gap:8px}.info-item{display:flex;justify-content:space-between;align-items:baseline}.info-label{font-size:13px;color:#94a3b8}.info-value{font-size:13px;color:#334155;font-weight:500;text-align:right;max-width:170px;word-break:break-all}.lang-list{display:grid;gap:6px}.lang-item{display:flex;justify-content:space-between;align-items:center}.lang-name{font-size:13px;color:#334155}.cert-tags{display:flex;flex-wrap:wrap;gap:6px}.skill-cloud{display:flex;flex-wrap:wrap;gap:5px}.skill-tag{cursor:default}.profile-main{flex:1;overflow-y:auto;padding:0}.profile-sections{padding:0 16px 24px;display:flex;flex-direction:column;gap:8px}.profile-section{padding:16px 0;border-bottom:1px solid #f1f5f9}.profile-section:last-child{border-bottom:none}.profile-section-title{margin:0 0 14px;font-size:15px;font-weight:600;color:#1e293b;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.timeline{position:relative;padding-left:20px}.timeline-item{position:relative;padding-bottom:20px;padding-left:16px}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";position:absolute;left:0;top:8px;bottom:0;width:1.5px;background:#e2e8f0}.timeline-item:last-child:before{display:none}.timeline-dot{position:absolute;left:-22px;top:6px;width:8px;height:8px;border-radius:50%;background:#3b82f6;border:2px solid #bfdbfe}.timeline-dot.edu-dot{background:#10b981;border-color:#a7f3d0}.timeline-content{min-width:0}.timeline-header{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.timeline-header h4{margin:0;font-size:15px;color:#1e293b}.timeline-date{font-size:12px;color:#94a3b8;white-space:nowrap}.timeline-company{display:flex;align-items:center;gap:4px;font-size:13px;color:#64748b;margin-top:4px}.timeline-subtitle{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569;margin-top:4px}.degree-badge{background:#dbeafe;color:#1e40af;padding:1px 6px;border-radius:3px;font-size:12px}.timeline-desc{font-size:13px;color:#475569;line-height:1.7;margin:8px 0 0}.project-list{display:grid;gap:14px}.project-card{padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;transition:box-shadow .15s}.project-card:hover{box-shadow:0 2px 8px #0000000f}.project-name{margin:0 0 8px;font-size:15px;color:#1e293b}.project-tech{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:8px}.tech-label{font-size:12px;color:#94a3b8;margin-right:2px}.project-desc{font-size:13px;color:#475569;line-height:1.7;margin:0 0 6px}.project-role{font-size:13px;color:#64748b;margin:0}.skills-section{padding:8px 0}.skill-category h5{font-size:14px;color:#475569;margin:0 0 12px}.skill-bars{display:grid;gap:10px}.skill-bar-item{min-width:0}.skill-bar-label{display:flex;justify-content:space-between;font-size:13px;margin-bottom:3px}.skill-bar-label span:first-child{color:#334155}.skill-bar-level{color:#94a3b8;font-size:12px}.resume-file-list-new{display:grid;gap:8px}.file-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e2e8f0;border-radius:8px}.file-card-icon{color:#3b82f6;flex-shrink:0}.file-card-info{flex:1;min-width:0}.file-card-info strong{display:block;font-size:14px;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{font-size:12px;color:#94a3b8}.file-card-actions{display:flex;gap:4px}.follow-ups-section{padding:8px 0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.follow-up-count{font-size:13px;color:#94a3b8}.empty-block{padding:40px 20px;text-align:center;color:#94a3b8}.empty-block p{margin:0}.edit-form-overlay{padding:16px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin:16px}.topbar p{max-width:600px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-nav button span,.metric-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-table .cell{word-break:break-word;overflow-wrap:break-word}.compact-table .cell{overflow:hidden;text-overflow:ellipsis}.compact-table .cell .el-select{max-width:100%}.compact-table .cell .el-select .el-select__tags{max-width:100%;overflow:hidden}.compact-table .cell .el-select .el-select__tags-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80px}.feedback-item p{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.timeline{position:relative;padding-left:24px}.timeline:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:var(--border-color, #e5e7eb)}.tl-item{position:relative;margin-bottom:16px}.tl-item:last-child{margin-bottom:0}.tl-dot{position:absolute;left:-20px;top:8px;width:10px;height:10px;border-radius:50%;background:var(--primary, #6c5ce7);border:2px solid #fff;box-shadow:0 0 0 2px var(--primary, #6c5ce7)}.tl-dot.success{background:#10b981;box-shadow:0 0 0 2px #10b981}.tl-dot.danger{background:#ef4444;box-shadow:0 0 0 2px #ef4444}.tl-content{background:var(--bg-secondary, #f9fafb);border-radius:8px;padding:10px 14px;border:1px solid var(--border-color, #e5e7eb)}.tl-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.tl-head strong{font-size:14px;color:var(--text-primary, #1f2937)}.tl-head span{font-size:12px;color:var(--text-tertiary, #9ca3af)}.tl-by{font-size:12px;color:var(--text-secondary, #6b7280);margin-top:4px}.insight-item div{min-width:0}.insight-item strong,.insight-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-item div{min-width:0}.privacy-list>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.deal-item span,.deal-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quota-list>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-item p{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.global-search-list strong,.global-search-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-item,.offer-item div{min-width:0}.offer-item strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel{overflow:hidden}.dialog-form .el-date-editor--datetime,.dialog-form .el-date-editor--date{width:100%}.sidebar-footer strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-block div{min-width:0}.contract-summary-item span,.contract-summary-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract-summary-item span{flex-shrink:0}.progress-stack{overflow:hidden}.binding-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-cell strong,.candidate-cell span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.security-grid>div strong,.security-grid>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.integration-service strong,.mailbox-right-header strong,.mailbox-right-header span,.auth-metrics strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-card h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.match-workbench-inline{display:grid;grid-template-columns:260px 1fr;gap:20px}.match-selector-inline{display:flex;flex-direction:column;gap:12px}.weight-sliders{display:flex;flex-direction:column;gap:6px}.weight-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary, #666)}.weight-label span{width:72px;flex-shrink:0;text-align:right}.weight-label .el-slider{flex:1}.match-actions-inline{display:flex;gap:8px;padding-top:4px}.match-result-inline{min-width:0}.candidate-match-list{display:flex;flex-direction:column;gap:12px}.candidate-match-row{padding:12px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--bg-secondary, #f9fafb)}.candidate-match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.candidate-match-header strong{font-size:14px}.candidate-match-dims{display:grid;grid-template-columns:repeat(4,1fr);gap:4px 8px;margin-bottom:6px}.mini-dim{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary, #666)}.mini-dim span{width:24px;flex-shrink:0}.mini-dim .el-progress{flex:1}.candidate-match-reason{font-size:12px;color:var(--text-secondary, #666);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.semantic-result-inline{margin-top:16px;padding:12px;border:1px solid #f59e0b;border-radius:8px;background:#fffbeb}.semantic-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.semantic-header strong{font-size:14px;color:#d97706}.semantic-result-inline p{font-size:13px;color:var(--text-secondary, #666);margin:0 0 8px;line-height:1.6}.semantic-skills{display:flex;flex-wrap:wrap;gap:4px}.optimize-suggestions{display:flex;flex-direction:column;gap:14px}.suggestion-item{padding:14px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--bg-secondary, #f9fafb)}.suggestion-item strong{display:block;font-size:14px;margin-bottom:6px;color:var(--text-primary, #1f2937)}.suggestion-item p{font-size:13px;color:var(--text-secondary, #666);margin:0 0 10px;line-height:1.6}.optimize-diff{display:flex;gap:12px;align-items:stretch;margin-bottom:8px}.diff-panel{flex:1;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden}.diff-label{font-size:12px;font-weight:600;padding:6px 10px;background:var(--bg-secondary, #f3f4f6);border-bottom:1px solid var(--border-color, #e5e7eb)}.diff-content{font-size:13px;line-height:1.7;padding:12px;min-height:120px;white-space:pre-wrap}.diff-content.original{background:#fef2f2;color:#991b1b}.diff-content.optimized{background:#f0fdf4;color:#166534}.diff-divider{display:flex;align-items:center;color:var(--text-tertiary, #9ca3af)}.compare-empty{text-align:center;padding:40px 0;color:var(--text-tertiary, #9ca3af);font-size:14px}.compare-grid{display:grid;gap:16px}.compare-col{border:1px solid var(--border-color, #e5e7eb);border-radius:10px;overflow:hidden}.compare-header{padding:12px 14px;border-top:3px solid #6c5ce7;background:var(--bg-secondary, #f9fafb)}.compare-header strong{display:block;font-size:15px;color:var(--text-primary, #1f2937);margin-bottom:4px}.compare-header span{font-size:13px;color:var(--text-secondary, #6b7280)}.compare-header .el-tag{margin-top:6px}.compare-body{padding:12px 14px}.compare-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px dashed var(--border-color, #e5e7eb);font-size:13px}.compare-row label{color:var(--text-tertiary, #9ca3af);flex-shrink:0}.compare-row span{color:var(--text-primary, #1f2937);font-weight:500}.compare-skills label{display:block;font-size:13px;color:var(--text-tertiary, #9ca3af);margin:10px 0 6px}.compare-skills .skill-tags{display:flex;flex-wrap:wrap;gap:4px}.compare-summary{margin-top:10px}.compare-summary label{display:block;font-size:13px;color:var(--text-tertiary, #9ca3af);margin-bottom:4px}.compare-summary p{font-size:12px;line-height:1.5;color:var(--text-secondary, #6b7280);margin:0}.question-panel{min-height:120px}.question-meta{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color, #e5e7eb)}.question-meta span{font-size:14px;color:var(--text-secondary, #666)}.question-list{padding-left:20px;margin:0}.question-list li{font-size:14px;line-height:1.8;color:var(--text-primary, #1f2937);margin-bottom:8px}@media(max-width:768px){.match-workbench-inline{grid-template-columns:1fr}.candidate-match-dims{grid-template-columns:repeat(2,1fr)}}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:16px;color:#64748b;font-size:14px}.loading-spin{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ai-daily-summary{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:4px}.ai-summary-item{flex:1;min-width:120px;background:#f8fafc;border-radius:8px;padding:12px 16px;text-align:center}.ai-summary-label{display:block;font-size:12px;color:#64748b;margin-bottom:4px}.ai-summary-value{font-size:18px;font-weight:700;color:#1e293b}.app-icp{text-align:center;padding:8px 0 16px;margin-top:auto;font-size:12px}.app-icp a{color:#94a3b8;text-decoration:none}.app-icp a:hover{color:#3b82f6}.portal-page[data-v-6d3c9e2c]{min-height:100vh;background:#f5f7fa;font-family:PingFang SC,Microsoft YaHei,sans-serif}.portal-hero[data-v-6d3c9e2c]{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);color:#fff;text-align:center;padding:80px 24px 64px}.portal-hero-content h1[data-v-6d3c9e2c]{font-size:36px;margin:0 0 12px;font-weight:700}.portal-hero-content p[data-v-6d3c9e2c]{font-size:18px;opacity:.85;margin:0 0 32px}.portal-hero-actions[data-v-6d3c9e2c]{display:flex;gap:16px;justify-content:center}.portal-section[data-v-6d3c9e2c]{max-width:1200px;margin:0 auto;padding:64px 24px}.portal-section-alt[data-v-6d3c9e2c]{background:#fff;max-width:none;padding:64px calc((100% - 1200px)/2 + 24px)}.portal-section-header[data-v-6d3c9e2c]{text-align:center;margin-bottom:40px}.portal-section-header h2[data-v-6d3c9e2c]{display:flex;align-items:center;justify-content:center;gap:10px;font-size:26px;color:#1a1a2e;margin:0 0 8px}.portal-section-header p[data-v-6d3c9e2c]{color:#909399;font-size:15px;margin:0}.portal-search-bar[data-v-6d3c9e2c]{display:flex;gap:12px;margin-bottom:32px}.portal-search-bar .el-input[data-v-6d3c9e2c]{flex:1}.portal-search-bar .el-select[data-v-6d3c9e2c]{width:160px}.portal-positions-grid[data-v-6d3c9e2c]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.portal-position-card[data-v-6d3c9e2c]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #0000000f;transition:transform .2s,box-shadow .2s}.portal-position-card[data-v-6d3c9e2c]:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.portal-position-card-head[data-v-6d3c9e2c]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.portal-position-card-head h3[data-v-6d3c9e2c]{font-size:18px;margin:0;color:#303133}.portal-position-company[data-v-6d3c9e2c]{display:flex;align-items:center;gap:4px;color:#606266;font-size:14px;margin:0 0 12px}.portal-position-meta[data-v-6d3c9e2c]{display:flex;gap:16px;color:#909399;font-size:13px;margin-bottom:14px}.portal-position-meta span[data-v-6d3c9e2c]{display:flex;align-items:center;gap:4px}.portal-position-skills[data-v-6d3c9e2c]{display:flex;gap:6px;flex-wrap:wrap}.portal-upload-area[data-v-6d3c9e2c]{border:2px dashed #c0c4cc;border-radius:16px;padding:48px;text-align:center;transition:border-color .2s,background .2s}.portal-upload-area.dragging[data-v-6d3c9e2c]{border-color:#409eff;background:#ecf5ff}.portal-upload-icon[data-v-6d3c9e2c]{color:#c0c4cc;margin-bottom:12px}.portal-upload-area p[data-v-6d3c9e2c]{color:#606266;font-size:16px;margin:0 0 6px}.portal-upload-area span[data-v-6d3c9e2c]{color:#909399;font-size:13px;display:block;margin-bottom:16px}.portal-upload-name[data-v-6d3c9e2c]{color:#409eff!important;font-weight:500;margin-top:12px!important}.portal-upload-form[data-v-6d3c9e2c]{max-width:800px;margin:32px auto 0}.portal-upload-submit[data-v-6d3c9e2c]{text-align:center;margin-top:24px}.portal-upload-success[data-v-6d3c9e2c]{text-align:center;padding:40px;color:#67c23a}.portal-upload-success h3[data-v-6d3c9e2c]{margin:12px 0 8px;color:#303133}.portal-upload-success p[data-v-6d3c9e2c]{color:#909399;margin-bottom:24px}.portal-optimize-box[data-v-6d3c9e2c]{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.portal-optimize-results[data-v-6d3c9e2c]{max-width:700px;margin:32px auto 0;display:flex;flex-direction:column;gap:16px}.portal-optimize-item[data-v-6d3c9e2c]{background:#fff;border-radius:10px;padding:20px;border-left:4px solid #e6a23c;box-shadow:0 2px 8px #0000000a}.portal-optimize-item.high[data-v-6d3c9e2c]{border-left-color:#f56c6c}.portal-optimize-item.medium[data-v-6d3c9e2c]{border-left-color:#e6a23c}.portal-optimize-item.low[data-v-6d3c9e2c]{border-left-color:#909399}.portal-optimize-item-head[data-v-6d3c9e2c]{display:flex;align-items:center;gap:10px;margin-bottom:8px}.portal-optimize-item p[data-v-6d3c9e2c]{margin:0;color:#606266;line-height:1.6}.portal-salary-filters[data-v-6d3c9e2c]{display:flex;gap:16px;justify-content:center;margin-bottom:32px}.portal-salary-filters .el-select[data-v-6d3c9e2c]{width:180px}.portal-salary-grid[data-v-6d3c9e2c]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.portal-salary-card[data-v-6d3c9e2c]{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000a}.portal-salary-card-head[data-v-6d3c9e2c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.portal-salary-location[data-v-6d3c9e2c]{font-weight:600;color:#303133}.portal-salary-range[data-v-6d3c9e2c]{display:flex;justify-content:space-between;margin-bottom:12px}.portal-salary-range div[data-v-6d3c9e2c]{text-align:center}.portal-salary-range span[data-v-6d3c9e2c]{display:block;font-size:12px;color:#909399}.portal-salary-range strong[data-v-6d3c9e2c]{font-size:20px;color:#303133}.portal-salary-median strong[data-v-6d3c9e2c]{color:#409eff}.portal-salary-sample[data-v-6d3c9e2c]{text-align:center;font-size:12px;color:#c0c4cc;margin:0}.portal-reports-grid[data-v-6d3c9e2c]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.portal-report-card[data-v-6d3c9e2c]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #0000000f}.portal-report-card h3[data-v-6d3c9e2c]{font-size:18px;margin:0 0 16px;color:#303133}.portal-report-stats[data-v-6d3c9e2c]{display:flex;gap:32px;margin-bottom:16px}.portal-report-stats div span[data-v-6d3c9e2c]{display:block;color:#909399;font-size:13px}.portal-report-stats div strong[data-v-6d3c9e2c]{font-size:20px;color:#67c23a}.portal-report-stats div strong.tight[data-v-6d3c9e2c]{color:#e6a23c}.portal-report-stats div strong.scarce[data-v-6d3c9e2c]{color:#f56c6c}.portal-report-stats div strong.up[data-v-6d3c9e2c]{color:#409eff}.portal-report-skills[data-v-6d3c9e2c]{margin-bottom:12px}.portal-report-skills span[data-v-6d3c9e2c]{color:#909399;font-size:13px}.portal-report-skills p[data-v-6d3c9e2c]{margin:4px 0 0;color:#606266}.portal-report-insight[data-v-6d3c9e2c]{color:#909399;font-size:13px;margin:0;line-height:1.5}.portal-footer[data-v-6d3c9e2c]{text-align:center;padding:40px 24px;color:#909399;font-size:13px;border-top:1px solid #ebeef5}.portal-footer p[data-v-6d3c9e2c]{margin:4px 0}@media(max-width:1024px){.portal-positions-grid[data-v-6d3c9e2c],.portal-salary-grid[data-v-6d3c9e2c],.portal-reports-grid[data-v-6d3c9e2c]{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.portal-positions-grid[data-v-6d3c9e2c],.portal-salary-grid[data-v-6d3c9e2c],.portal-reports-grid[data-v-6d3c9e2c]{grid-template-columns:1fr}.portal-search-bar[data-v-6d3c9e2c]{flex-direction:column}.portal-search-bar .el-select[data-v-6d3c9e2c]{width:100%}.portal-hero-content h1[data-v-6d3c9e2c]{font-size:26px}}.share-preview-shell[data-v-47bfda6d]{max-width:720px;margin:0 auto;padding:0 16px 40px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;background:#f5f7fa;min-height:100vh}.share-header[data-v-47bfda6d]{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #e8ecf2;margin-bottom:20px}.share-brand[data-v-47bfda6d]{display:flex;align-items:center;gap:10px}.share-brand .brand-mark[data-v-47bfda6d]{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#6c5ce7,#a78bfa);color:#fff;font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:center}.share-brand strong[data-v-47bfda6d]{display:block;font-size:15px;color:#1a1a2e}.share-brand span[data-v-47bfda6d]{font-size:12px;color:#8e8ea0}.share-meta[data-v-47bfda6d]{display:flex;align-items:center;gap:12px}.meta-views[data-v-47bfda6d]{font-size:13px;color:#8e8ea0}.share-loading[data-v-47bfda6d]{text-align:center;padding:80px 0;color:#8e8ea0}.loading-spin[data-v-47bfda6d]{width:36px;height:36px;border:3px solid #e8ecf2;border-top-color:#6c5ce7;border-radius:50%;animation:spin-47bfda6d .8s linear infinite;margin:0 auto 16px}@keyframes spin-47bfda6d{to{transform:rotate(360deg)}}.share-error[data-v-47bfda6d]{padding:60px 0}.share-body[data-v-47bfda6d]{display:flex;flex-direction:column;gap:16px}.share-card[data-v-47bfda6d]{background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 1px 3px #0000000f}.card-header[data-v-47bfda6d]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f0f2f5}.card-header h2[data-v-47bfda6d]{font-size:16px;font-weight:600;color:#1a1a2e;margin:0}.report-meta[data-v-47bfda6d]{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:12px;font-size:14px;color:#555}.report-meta strong[data-v-47bfda6d]{color:#333}.report-content[data-v-47bfda6d]{font-size:14px;line-height:1.8;color:#444}.report-placeholder[data-v-47bfda6d]{color:#999;font-style:italic}.candidate-badge[data-v-47bfda6d]{font-size:14px;color:#6c5ce7;font-weight:500}.candidate-grid[data-v-47bfda6d]{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.info-item label[data-v-47bfda6d]{display:block;font-size:12px;color:#999;margin-bottom:4px}.info-item span[data-v-47bfda6d]{font-size:15px;color:#333;font-weight:500}.skill-tags[data-v-47bfda6d]{margin-bottom:16px}.skill-tags label[data-v-47bfda6d]{font-size:13px;color:#666;margin-right:8px}.skill-tags .el-tag[data-v-47bfda6d]{margin:0 6px 6px 0}.candidate-summary[data-v-47bfda6d]{background:#f8f9fc;border-radius:8px;padding:14px 16px}.candidate-summary label[data-v-47bfda6d]{font-size:13px;color:#666;display:block;margin-bottom:6px}.candidate-summary p[data-v-47bfda6d]{font-size:14px;color:#555;line-height:1.7;margin:0}.timeline[data-v-47bfda6d]{position:relative;padding-left:20px}.timeline[data-v-47bfda6d]:before{content:"";position:absolute;left:7px;top:0;bottom:0;width:2px;background:#e8ecf2}.tl-item[data-v-47bfda6d]{position:relative;margin-bottom:20px}.tl-item[data-v-47bfda6d]:last-child{margin-bottom:0}.tl-dot[data-v-47bfda6d]{position:absolute;left:-16px;top:6px;width:10px;height:10px;border-radius:50%;background:#6c5ce7;border:2px solid #fff;box-shadow:0 0 0 2px #6c5ce7}.tl-head[data-v-47bfda6d]{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:4px}.tl-head strong[data-v-47bfda6d]{font-size:15px;color:#1a1a2e}.tl-head span[data-v-47bfda6d]{font-size:13px;color:#999}.tl-title[data-v-47bfda6d]{font-size:14px;color:#555;margin-bottom:4px}.tl-desc[data-v-47bfda6d]{font-size:13px;color:#888;line-height:1.6}.edu-list[data-v-47bfda6d]{display:flex;flex-direction:column;gap:12px}.edu-item[data-v-47bfda6d]{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.edu-item strong[data-v-47bfda6d]{font-size:15px;color:#1a1a2e}.edu-item span[data-v-47bfda6d]{font-size:14px;color:#555}.edu-date[data-v-47bfda6d]{font-size:12px;color:#999;margin-left:auto}.resume-actions[data-v-47bfda6d]{display:flex;gap:12px;align-items:center;margin-top:12px}.resume-preview-iframe[data-v-47bfda6d]{border:1px solid #e8ecf2;border-radius:8px;overflow:hidden}.resume-iframe[data-v-47bfda6d]{width:100%;height:640px;border:none}.action-card[data-v-47bfda6d]{background:linear-gradient(135deg,#f8f9fc,#fff)}.decision-area[data-v-47bfda6d]{display:flex;gap:16px;justify-content:center;padding:8px 0 12px}.decision-hint[data-v-47bfda6d]{text-align:center;font-size:12px;color:#bbb;margin-top:4px}.schedule-area[data-v-47bfda6d]{margin-top:16px;padding-top:16px;border-top:1px solid #f0f2f5}.schedule-area h3[data-v-47bfda6d]{font-size:15px;color:#333;margin:0 0 12px}.schedule-form[data-v-47bfda6d]{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.interview-card[data-v-47bfda6d]{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:12px 16px;margin-bottom:8px}.iv-time[data-v-47bfda6d]{font-size:15px;font-weight:600;color:#166534;margin-bottom:4px}.iv-meta[data-v-47bfda6d]{font-size:13px;color:#15803d}.decision-log[data-v-47bfda6d]{display:flex;flex-direction:column;gap:10px}.dl-item[data-v-47bfda6d]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dl-by[data-v-47bfda6d]{font-size:13px;color:#555}.dl-at[data-v-47bfda6d]{font-size:12px;color:#999}.dl-reason[data-v-47bfda6d]{width:100%;font-size:13px;color:#666;padding:6px 10px;background:#f8f9fc;border-radius:6px;margin-top:2px}.share-footer[data-v-47bfda6d]{text-align:center;padding:24px 0 12px;font-size:12px;color:#ccc}
