body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html,body,#root{height:100%;margin:0;overflow:auto}.top-nav-header{display:flex;justify-content:space-between;align-items:center;background-color:#fff;padding:0 32px;box-shadow:0 2px 4px #0000000f;z-index:100;position:sticky;top:0;border-bottom:1px solid #eaeaea}@media(max-width:768px){.top-nav-header{padding:0 16px}.ant-menu{padding-right:0!important}}.nav-left img{display:flex;align-items:center}.ant-menu{margin-left:auto;margin-right:0;padding-right:30px;justify-content:flex-end;width:auto}.logo{height:24px;background-color:transparent}.main-content{flex:1;height:100%;margin:0;display:flex;flex-direction:column}.content-box{flex:1;height:100%;display:flex;flex-direction:column;min-height:0}@media(max-width:768px){.logo{height:16px}}.main-footer{text-align:center;color:#8c96a5;font-size:14px;background-color:#f5f7fa;border-top:1px solid #e1e5eb;position:static;flex-shrink:0}.ant-layout{display:flex;flex-direction:column;min-height:100vh}.logout-button{margin-left:16px;font-weight:500;color:#e63946}.logout-button:hover{color:#c53030}.nav-menu .ant-menu-item-selected,.nav-menu .ant-menu-item-selected:after,.nav-menu .ant-menu-item-selected>span,.nav-menu .ant-menu-item-selected>a{border-bottom:none}.nav-menu .ant-menu-item-selected>a{border-bottom:4px solid #1677ff;color:#1677ff}.nav-right{display:flex;align-items:center;justify-content:flex-end;flex:1}.nav-menu{margin-left:auto}@media(max-width:768px){.home-sidebar-container{display:none}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media(prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.workflow-container{align-self:center;margin:20px 30px;width:80%}.custom-steps-container{display:flex;justify-content:space-between;margin-bottom:32px;position:relative;padding:0 10px}.custom-steps-container:after{content:"";position:absolute;top:24px;left:40px;right:40px;height:2px;background-color:#e1e5eb;z-index:1}.custom-step{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2;flex:1;max-width:160px;cursor:pointer}.step-circle{width:48px;height:48px;border-radius:50%;background-color:#fff;border:2px solid #e1e5eb;color:#8c96a5;display:flex;justify-content:center;align-items:center;font-size:18px;font-weight:600;margin-bottom:8px;transition:all .3s ease}.custom-step.active .step-circle{background-color:#2d55e3;border-color:#2d55e3;color:#fff;box-shadow:0 0 0 4px #2d55e340}.custom-step.completed .step-circle{background-color:#34c87c;border-color:#34c87c;color:#fff}.step-title{text-align:center;font-weight:600;font-size:14px;color:#8c96a5;transition:all .3s ease}.custom-step.active .step-title{color:#2c3549}.custom-step.completed .step-title{color:#34c87c}.workflow-step-content{background-color:#fff;border-radius:12px;padding:20px 40px;box-shadow:0 4px 12px #0000000d}.llm-reasoning-container{margin-bottom:16px;border:1px solid #e8e8e8;border-radius:8px;padding:0 0 0 32px}.llm-reasoning{padding:0;border-radius:4px;margin-top:0;margin-bottom:0!important;color:#6b7280}.llm-reasoning-container p.label{color:#bbb;position:relative;top:-10px;line-height:20px;margin:0 0 -20px;left:0;background:#fff;padding:0 8px;width:fit-content}.llm-reasoning button{color:#bbb;width:24px!important;height:24px;margin:8px 8px 0 0}.service-offerings-preview{margin:0;position:relative}.llm-reasoning p{text-align:left}.preview-content{white-space:pre-wrap;text-align:left!important;margin-block-start:0;margin-block-end:0}.expand-toggle{padding:0;height:auto;margin-top:4px;color:#1890ff}.preview-content p{text-align:left;margin-bottom:8px;line-height:1.5}.preview-content ul{padding-left:20px}.preview-content h3{margin-top:12px;margin-bottom:8px;font-size:16px}.preview-content strong{font-weight:600}@media(max-width:768px){.custom-steps-container{flex-wrap:wrap;gap:20px}.custom-steps-container:after{display:none}.custom-step{flex:0 0 45%}}@media(max-width:480px){.custom-step{flex:0 0 100%}}.step-description{font-size:16px;margin-bottom:24px;font-weight:500}.upload-area .ant-upload-drag{border:2px dashed #e1e5eb!important;border-radius:12px!important;padding:10px 20px!important;background-color:#f5f7fa!important;transition:all .3s;margin-bottom:24px}.upload-area .ant-upload-drag:hover{border-color:#2d55e3!important;background-color:#2d55e308!important}.upload-text{font-weight:500;font-size:13px;margin-top:16px!important;margin-bottom:8px!important;font-size:16px!important;color:#2c3549!important}.upload-subtext{font-size:12px!important;color:#8c96a5!important}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.pulse{animation:pulse 2s infinite}.file-list{border-top:1px solid #f0f0f0;padding-top:12px}.file-item{background:#fff;margin-bottom:8px!important;box-shadow:0 2px 4px #0000000a;animation:fadeIn .3s ease-in-out;display:flex!important;align-items:center;padding:8px 12px;border:1px solid #f0f0f0;border-radius:4px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.file-icon{background-color:#2d55e31a;color:#2d55e3;width:40px;height:40px;border-radius:8px;display:flex;justify-content:center;align-items:center;margin-right:12px;font-weight:600;font-size:14px;flex-shrink:0}.file-info{flex:1;overflow:hidden}.file-name{font-weight:500;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta{font-size:12px;color:#8c96a5}.file-action-btn{color:#8c96a5!important;transition:all .2s}.file-action-btn:hover{color:#2c3549!important;background-color:#f5f7fa!important}.tag-container{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}.tag{background-color:#2d55e31a;color:#2d55e3;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:500}@media(max-width:768px){.preview-panel{min-height:240px}}.preview-panel{background:#f5f7fa;border-radius:12px;padding:24px;min-height:480px;margin-bottom:32px;display:flex;flex-direction:column;box-shadow:0 4px 12px #0000000d}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e1e5eb}.preview-title{font-weight:600;font-size:16px;color:#2c3549}.preview-controls{display:flex;gap:8px}.preview-controls button{color:#8c96a5!important;transition:all .2s}.preview-controls button:hover{color:#2c3549!important;background-color:#0000000d!important}.preview-content{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;transition:transform .3s ease;transform-origin:center center;overflow:hidden}.preview-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.spinner{width:40px;height:40px;border:3px solid #e1e5eb;border-radius:50%;border-top-color:#2d55e3;animation:spin 1s ease-in-out infinite;margin-bottom:16px}.preview-fallback{display:flex;flex-direction:column;align-items:center;text-align:center;color:#8c96a5;padding:32px}.pdf-container{width:100%;max-width:600px;height:400px;box-shadow:0 4px 16px #0000001a;border-radius:8px;overflow:hidden}.pdf-placeholder{width:100%;height:100%;background-color:#fff;display:flex;flex-direction:column}.pdf-header{display:flex;align-items:center;padding:12px;background-color:#f1f3f6;border-bottom:1px solid #e1e5eb}.pdf-logo{background-color:#ff4d4f;color:#fff;width:32px;height:32px;border-radius:4px;display:flex;justify-content:center;align-items:center;font-weight:600;font-size:12px;margin-right:12px}.pdf-title{font-size:14px;font-weight:500;color:#2c3549;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-page{flex:1;padding:40px;overflow-y:auto;background-color:#fff;position:relative}.pdf-content{background-color:#fff;padding:20px;height:100%;color:#2c3549;font-size:14px;line-height:1.5}.pdf-navigation{display:flex;justify-content:center;align-items:center;padding-top:16px;margin-top:16px;border-top:1px solid #e1e5eb}.page-indicator{margin:0 12px;font-size:14px;color:#8c96a5}@media(max-width:768px){.preview-panel{min-height:360px;padding:16px}.pdf-container{max-width:100%;height:320px}.pdf-page{padding:20px}}.loading-indicator{display:flex;align-items:center;margin-bottom:24px}.loading-spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:#4361ee;border-radius:50%;animation:spin 1s linear infinite;margin-right:12px}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:14px;font-weight:500;color:#374151}.progress-container{margin-bottom:32px}.progress-label{display:flex;margin-bottom:8px}.progress-text{font-size:14px;font-weight:500;color:#374151}.progress-percentage{font-size:14px;font-weight:600;color:#4361ee}.progress-bar{height:8px;background-color:#e5e7eb;border-radius:9999px;overflow:hidden}.progress-value{height:100%;border-radius:9999px;background:linear-gradient(to right,#4361ee,#4cc9f0);transition:width .5s ease}.btn{border-radius:8px!important;font-weight:500!important;height:auto!important;padding:10px 16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:all .2s ease!important}.btn-primary{background-color:#4361ee!important;box-shadow:0 2px 4px #4361ee40!important}.btn-primary:hover:not(:disabled){background-color:#3f37c9!important;transform:translateY(-1px)!important;box-shadow:0 4px 6px #4361ee4d!important}.btn-primary:disabled{background-color:#9ca3af!important;border-color:#9ca3af!important;color:#e5e7eb!important;box-shadow:none!important}.btn-secondary{background-color:#fff!important;color:#4b5563!important;border:1px solid #d1d5db!important}.btn-secondary:hover{background-color:#f3f4f6!important;color:#1f2937!important}@media(max-width:768px){.processing-container{padding:16px}.btn{width:100%}}.matches-list{max-height:calc(100% - 90px);margin-right:-15px;overflow-y:auto;padding-right:15px}.company-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px;margin:24px 0 0;position:relative;overflow:hidden;padding-bottom:10px}.company-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;border:1px solid #e8e8e8;position:relative;display:flex;flex-direction:column;transition:all .2s ease;overflow-y:auto;overflow-x:hidden}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;overflow:hidden;padding:16px 16px 12px;border-bottom:1px solid #f0f0f0;flex-wrap:wrap}.card-header,.company-card>*{min-width:0}.company-info{flex:1;margin-top:10px}.company-name{font-size:16px;font-weight:600;color:#1a202c;margin-bottom:4px}.match-count{font-size:13px;color:#6b7280}.company-checkbox{position:absolute;top:6px;right:6px;z-index:1}.offerings-row{display:flex;flex-wrap:wrap;gap:8px}.offering-badge{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:20px;font-size:12px;white-space:nowrap}.offering-badge.matched{background-color:#10b9811a;color:#10b981}.offering-badge.unmatched{background-color:#ef44441a;color:#ef4444}.offering-icon{font-size:12px}.skeleton{min-height:120px}.selection-count{font-size:14px;color:#6b7280;font-weight:500}.btn{border-radius:8px;font-weight:500;height:auto;padding:8px 16px;display:inline-flex;align-items:center;gap:8px}.btn-primary{background-color:#4361ee;border-color:#4361ee;color:#fff;box-shadow:0 2px 4px #4361ee40}.btn-primary:hover:not(:disabled){background-color:#3f37c9;border-color:#3f37c9;transform:translateY(-1px);box-shadow:0 4px 6px #4361ee4d}.btn-secondary{background-color:#fff;color:#4b5563;border:1px solid #d1d5db}.btn-secondary:hover{background-color:#f9fafb;color:#1f2937}.company-accordion{display:flex;flex-direction:column;gap:8px;margin-top:16px}.company-accordion-item{border:1px solid #e8e8e8;border-radius:4px;overflow:hidden;background-color:#fff}.company-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;cursor:pointer;background-color:#f5f5f5;transition:background-color .2s}.company-row:hover{background-color:#ececec}.company-row-name{font-weight:500;display:flex;align-items:center}.company-row-count{color:#666;font-size:14px}.expand-icon{margin-right:8px;font-size:12px}.candidate-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px;padding:16px}@media(max-width:768px){.candidate-cards{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}}@media(max-width:768px){.action-bar{flex-direction:column;gap:16px}.btn{flex:1}}.empty-state{background-color:#f9fafb;padding:40px;border-radius:12px;margin-bottom:32px}.action-bar{display:flex;position:relative;bottom:20px;justify-content:space-between;align-items:center;margin-top:24px;padding-top:16px}.button-primary{background-color:#4361ee!important;box-shadow:0 2px 4px #4361ee40!important}.button-primary:hover:not(:disabled){background-color:#3f37c9!important;transform:translateY(-1px)!important;box-shadow:0 4px 6px #4361ee4d!important}@media(max-width:768px){.match-companies-container{padding:16px}.company-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:24px}.action-bar{flex-direction:column;gap:16px}.action-bar button{width:100%}}.panel-title{font-size:20px!important;font-weight:600!important;margin-bottom:12px!important;color:#1f2937!important}.panel-info{font-size:14px!important;color:#4b5563!important;margin-bottom:16px!important;padding-bottom:16px!important;border-bottom:1px solid #e5e7eb!important;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.panel-detail{font-size:14px!important;color:#4b5563!important;margin-bottom:24px!important;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.company-tag{margin:0!important;display:inline-flex!important;align-items:center!important;background-color:#4361ee1a!important;color:#4361ee!important;font-size:12px!important;font-weight:500!important;padding:4px 8px 4px 4px!important;border-radius:16px!important;border:none!important;gap:6px!important}.company-tag-icon{width:20px;height:20px;border-radius:4px;background-color:#4361ee;color:#fff;display:flex;justify-content:center;align-items:center;font-size:10px;font-weight:700}.skill-tag{margin:0!important;background-color:#f3f4f6!important;color:#374151!important;font-size:12px!important;font-weight:500!important;padding:4px 10px!important;border-radius:16px!important;border:none!important;align-items:center;display:flex}.candidates-section{margin-top:32px;margin-bottom:32px}.candidates-section .ant-col{min-width:300px}.section-title{font-size:16px!important;font-weight:600!important;margin-bottom:16px!important;color:#374151!important}.company-collapse .ant-collapse-header{padding:16px!important;background-color:#f9fafb!important;border-radius:8px!important}.company-collapse .ant-collapse-content-box{padding:16px!important}.company-panel-header{display:flex;justify-content:space-between;align-items:center;width:100%}.company-panel-title{display:flex;align-items:center;gap:12px;font-weight:600;font-size:16px;color:#1f2937}.company-panel-icon{width:28px;height:28px;border-radius:6px;color:#fff;display:flex;justify-content:center;align-items:center;font-size:12px;font-weight:700}.company-panel-count{font-size:14px;color:#6b7280;font-weight:500}.skeleton-collapse .ant-collapse-header{background-color:#f9fafb!important}.candidate-card{height:100%;border-radius:8px!important;border:1px solid #e5e7eb!important;transition:all .2s ease;box-shadow:0 1px 3px #0000000d!important}.candidate-card:hover{border-color:#4895ef!important;box-shadow:0 4px 12px #4361ee1a!important;transform:translateY(-2px)}.skeleton-card{padding:0!important}.candidate-header{display:flex;gap:12px;margin-bottom:12px}.candidate-avatar{background-color:#e5e7eb!important;color:#6b7280!important;font-weight:700!important}.candidate-name{font-size:16px!important;margin-bottom:4px!important;color:#111827!important}.candidate-title{font-size:12px;color:#4b5563;margin-bottom:4px}.candidate-company{font-size:12px;color:#4361ee;font-weight:500;display:flex;align-items:center;gap:4px}.candidate-company .company-tag-icon{width:16px;height:16px;font-size:8px}.candidate-skills{display:flex;flex-wrap:wrap;gap:6px;min-height:50px}.candidate-skill{margin:0!important;background-color:#f3f4f6!important;color:#4b5563!important;font-size:11px!important;padding:2px 8px!important;border-radius:12px!important;border:none!important}.candidate-footer{display:flex;justify-content:space-between;align-items:center}.candidate-match{font-size:12px;font-weight:600;color:#10b981;display:flex;align-items:center;gap:4px}.match-icon{font-size:12px;color:#10b981}.view-profile-btn{font-size:12px!important;padding:0!important;color:#4361ee!important;font-weight:500!important}.view-profile-btn:hover{color:#3f37c9!important}.action-buttons{display:flex;justify-content:flex-end;gap:12px}.button-secondary{background-color:#fff!important;color:#4b5563!important;border:1px solid #d1d5db!important;border-radius:8px!important}.button-outline{background-color:transparent!important;color:#4361ee!important;border:1px solid #4361ee!important;border-radius:8px!important}.button-primary{background-color:#4361ee!important;border-color:#4361ee!important;border-radius:8px!important;box-shadow:0 2px 4px #4361ee40!important}.button-primary:hover:not(:disabled){background-color:#3f37c9!important;border-color:#3f37c9!important;transform:translateY(-1px)!important;box-shadow:0 4px 6px #4361ee4d!important}.button-primary:disabled{background-color:#9ca3af!important;border-color:#9ca3af!important;color:#e5e7eb!important;box-shadow:none!important}@media(max-width:768px){.search-candidates-container{padding:16px}.company-panel-header{flex-direction:column;align-items:flex-start;gap:8px}.action-buttons{flex-direction:column;gap:8px}.action-buttons button{width:100%}}.step-split-layout{display:flex;width:100%;height:70dvh;overflow:hidden}.match-section{flex:2;min-width:50%;margin:10px 20px;height:100%;display:flex;flex-direction:column;justify-content:space-between}.chat-section{flex:1;min-width:0;border-left:1px solid #e5e7eb}.company-card:hover{box-shadow:0 5px 15px #00000014;cursor:pointer}.company-info{display:flex;flex-direction:column;gap:6px}.company-name{font-size:16px;font-weight:600;color:#1f1f1f}.company-score{display:flex;align-items:center;gap:6px}.score-pill{background-color:#f0f0f0;color:#595959;padding:3px 6px;border-radius:12px;font-size:12px;font-weight:500}.score-label{font-size:12px;color:#8c8c8c}.company-checkbox{margin-left:8px}.card-content{padding:16px;display:flex;flex-direction:column;gap:12px;flex-grow:1}.website-container{display:flex;align-items:center;gap:5px}.link-icon{color:#4763e4;font-size:14px}.company-website{font-size:13px;color:#4763e4;text-decoration:none}.company-website:hover{text-decoration:underline}.company-offerings{display:flex;flex-wrap:wrap;gap:6px}.offering-tag{background-color:#f5f5f5;color:#595959;padding:4px 10px;border-radius:12px;font-size:12px;white-space:nowrap}.expand-button{width:100%;background-color:#f9f9f9;border:none;border-top:1px solid #f0f0f0;padding:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;font-size:13px;color:#8c8c8c;transition:all .2s ease;margin-top:auto}.expand-button:hover{background-color:#f0f0f0}.company-details{padding:0 16px;max-height:0;overflow:hidden;transition:all .3s ease;position:absolute;width:100%;background:#fff;z-index:20;box-shadow:0 5px 15px #00000026;border-bottom-left-radius:8px;border-bottom-right-radius:8px;opacity:0;left:0;top:100%}.expanded .company-details{max-height:500px;padding:16px;opacity:1;z-index:20}.detail-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;z-index:15;opacity:0;pointer-events:none;transition:opacity .3s ease}.overlay-active{opacity:1;pointer-events:all}.detail-section{margin-top:12px}.detail-section:first-child{margin-top:0}.detail-label{font-size:13px;font-weight:600;color:#262626;margin-bottom:4px}.detail-text{font-size:13px;line-height:1.5;color:#595959}.company-card.skeleton{padding:16px;min-height:140px}@media(max-width:768px){.company-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));max-height:70vh}.company-card{min-height:200px}.company-details{position:fixed;left:10%;right:10%;width:80%;top:20%;max-height:60%;overflow-y:auto}}@media(max-width:480px){.company-grid{grid-template-columns:1fr}}.auth-page-container{display:flex;justify-content:center;align-items:center;min-height:90vh;background:#f4f7fd}.auth-box{background:#fff;padding:40px;border-radius:12px;box-shadow:0 6px 20px #0000001a;width:400px}
