:root{--color-primary: #635BFF;--color-primary-hover: #4F46E5;--color-primary-light: #EEECFF;--color-primary-border: #D9D6FF;--color-text-primary: #17181C;--color-text-secondary: #667085;--color-text-tertiary: #98A2B3;--color-bg: #F8F9FB;--color-surface: #FFFFFF;--color-border: #E8EAF0;--color-success: #16A34A;--color-success-light: #ECFDF3;--color-success-border: #A7F3D0;--color-ai: #635BFF;--color-ai-light: #EEECFF;--color-warning: #F59E0B;--color-warning-light: #FEF6E7;--color-error: #EF4444;--color-error-light: #FEF2F2;--color-error-border: #FECACA;--radius-card: 12px;--radius-search: 14px;--shadow-card-hover: 0 4px 16px rgba(20, 20, 40, .06);--focus-ring: 0 0 0 3px rgba(99, 91, 255, .12)}body{margin:0;background:var(--color-bg);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}#root{min-height:100vh}.page{max-width:1200px;margin:0 auto;padding:20px 24px 60px}.job-card.ant-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:none;transition:border-color .2s,box-shadow .2s}.job-card.ant-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-card-hover)}.hero-search .ant-input,.hero-search .ant-input-affix-wrapper{background:var(--color-surface);border-radius:var(--radius-search)}.hero-search .ant-input-affix-wrapper:focus,.hero-search .ant-input-affix-wrapper-focused{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.official-link{color:var(--color-success)}.official-badge{background:var(--color-success-light);color:var(--color-success)}.ai-tag{background:var(--color-ai-light);color:var(--color-ai)}.score-ring{font-weight:700}.dim-bar-label{font-size:12px;color:var(--color-text-tertiary)}.chat-bubble-ai{background:var(--color-surface);border-radius:12px;padding:12px 16px;max-width:85%;box-shadow:0 1px 3px #1414280f}.chat-bubble-user{background:var(--color-primary);color:#fff;border-radius:12px;padding:12px 16px;max-width:85%;margin-left:auto}.kanban-col{background:#f1f2f6;border-radius:8px;min-height:420px;padding:8px}.kanban-card{cursor:grab}.kanban-col.drag-over{outline:2px dashed var(--color-primary)}.ro-form .ant-input[disabled],.ro-form .ant-input-disabled,.ro-form .ant-input-affix-wrapper-disabled .ant-input,.ro-form .ant-select-disabled .ant-select-selection-item,.ro-form .ant-select-disabled .ant-select-selection-overflow-item{color:var(--color-text-primary)}.company-link{color:var(--color-primary);cursor:pointer;font-weight:600;border-bottom:1px dashed var(--color-primary-border);padding-bottom:1px;transition:color .15s,border-color .15s}.company-link:hover{color:var(--color-primary-hover);border-bottom-color:var(--color-primary-hover)}.city-filter-tag{cursor:pointer;border-radius:6px;padding:2px 10px;font-size:13px;border:1px solid #E8EAF0;background:#f9fafb;color:#344054;transition:all .15s}.city-filter-tag:hover{border-color:var(--color-primary);color:var(--color-primary)}.city-filter-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.city-filter-active:hover{color:#fff}.resume-viewer{background:#f1f2f6;border-radius:8px;padding:16px 12px 8px}.resume-paper{box-sizing:border-box;width:210mm;max-width:100%;min-height:297mm;margin:0 auto;padding:18mm 20mm;background:#fff;box-shadow:0 2px 14px #1414281f;color:#1a1a1a;font-size:11pt;line-height:19pt;font-family:-apple-system,BlinkMacSystemFont,Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.rp-empty{color:var(--color-text-tertiary);text-align:center;padding-top:60mm}.rp-title{font-size:18pt;line-height:24pt;text-align:center;color:#1f4e79;margin-bottom:4pt}.rp-contact{font-size:10pt;line-height:15pt;text-align:center;color:#595959}.rp-rule{border-bottom:1.1px solid #1F4E79;margin:8pt 0}.rp-h{font-size:13pt;line-height:17pt;color:#1f4e79;margin-top:14pt}.rp-hrule{border-bottom:.8px solid #9DB6D2;margin-top:4pt}.rp-p{font-size:11pt;line-height:19pt;margin-bottom:5pt;word-break:break-word}.rp-e{font-size:11pt;line-height:19pt;margin:10pt 0 3pt;word-break:break-word}.rp-b{position:relative;font-size:11pt;line-height:19pt;padding-left:18pt;margin-bottom:4pt;word-break:break-word}.rp-dot{position:absolute;left:6pt}.rp-caption{text-align:center;color:var(--color-text-tertiary);font-size:12px;margin-top:8px}
