.candidate-tabs{display:flex;gap:24px;border-bottom:1px solid #dfe5ee;margin-bottom:24px}.candidate-tabs button{border:0;background:none;padding:12px 4px;color:#64748b;font-size:15px;font-weight:600;cursor:pointer;border-bottom:3px solid transparent}.candidate-tabs button.active{color:#ed6b47;border-bottom-color:#ed6b47}.candidate-center{color:#243047;max-width:1600px;margin:0 auto}.candidate-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.candidate-heading h2{font-size:24px;margin:0 0 6px}.candidate-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}.candidate-toolbar select,.candidate-search input{background:#fff;border:1px solid #dfe5ee;border-radius:8px;padding:10px;font:inherit;max-width:100%}.candidate-search{display:flex;gap:8px;flex:1;min-width:220px}.candidate-search input{width:100%;min-width:0}.candidate-toolbar label{font-size:12px;display:flex;align-items:center;gap:5px}.candidate-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:16px;align-items:start}.candidate-list,.candidate-detail{background:#fff;border:1px solid #e1e6ee;border-radius:12px;min-width:0;overflow:hidden}.candidate-list-head{display:flex;justify-content:space-between;padding:16px;color:#7b879a;font-size:12px;border-bottom:1px solid #edf0f5}.candidate-row{display:flex;align-items:center;gap:12px;padding:12px 16px;min-height:76px;border-bottom:1px solid #edf0f5}.candidate-row.is-focused{background:#fff7f2;box-shadow:inset 3px 0 #ed6b47}.candidate-row>input{flex:none}.candidate-row-main{display:grid;grid-template-columns:40px minmax(0,1.3fr) minmax(90px,.8fr) minmax(90px,1fr);align-items:center;gap:12px;width:100%;min-width:0;background:none;border:0;text-align:left;cursor:pointer;color:inherit;font:inherit;padding:0}.candidate-token-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f2eee9;color:#896551;border-radius:10px;font-size:12px;font-weight:700;overflow:hidden}.candidate-row-main strong,.candidate-row-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-row-main strong{font-size:14px;font-weight:600}.candidate-row-main small{font-size:12px;color:#8190a6;margin-top:6px}.candidate-name,.candidate-volume,.candidate-row-status{min-width:0}.candidate-row-status strong{font-size:12px;color:#687a89}.candidate-detail{padding:24px;position:sticky;top:16px;max-height:calc(100vh - 130px);overflow-y:auto;overflow-wrap:anywhere}.candidate-detail-top{display:flex;justify-content:space-between;color:#8792a1;font-size:12px;margin-bottom:16px}.candidate-detail h2{font-size:20px;margin:16px 0 4px}.candidate-detail p{font-size:14px;line-height:1.6}.candidate-portrait{width:160px;height:160px;border-radius:12px;object-fit:cover;display:block}.candidate-monogram{display:flex;align-items:center;justify-content:center;background:#f7f3ec;color:#b19477;font-size:40px;font-weight:700}.candidate-facts{display:grid;gap:12px;margin:20px 0;font-size:12px}.candidate-facts>div{display:flex;justify-content:space-between;gap:12px}.candidate-facts span{color:#8792a1}.candidate-facts strong{font-weight:500;text-align:right}.candidate-check{background:#f7f9fc;padding:12px;border-radius:8px;margin-bottom:20px}.candidate-check strong{font-size:14px}.candidate-generated{border-top:1px solid #edf0f5;padding-top:16px}.candidate-detail-empty{display:flex;align-items:center;justify-content:center;min-height:360px;color:#8895a7;font-size:14px;text-align:center;padding:20px}.candidate-pagination{display:flex;align-items:center;justify-content:center;gap:20px;padding:16px;font-size:12px;color:#7b879a}.candidate-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;bottom:12px;background:#fff;border:1px solid #dfe5ee;border-radius:12px;padding:16px 20px;margin:16px 0;box-shadow:0 6px 25px #2430470a;z-index:3;font-size:14px}.candidate-empty{text-align:center;padding:64px 24px;color:#8491a4}.candidate-empty h3{color:#48566c;font-size:18px}.candidate-empty p{margin-bottom:20px}.candidate-empty .btn{margin:4px}.candidate-errors{background:#fff8ef;border:1px solid #f0dfc8;border-radius:8px;padding:12px;margin-bottom:16px;font-size:12px}.candidate-job{background:#fff;border:1px solid #e1e6ee;border-radius:12px;padding:16px 20px;margin:16px 0}.candidate-job-heading,.candidate-job-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;font-size:14px}.candidate-job-row{font-size:12px;color:#7b879a}.candidate-chain-options{display:flex;gap:16px;flex-wrap:wrap}.candidate-mobile-close{display:none}.candidate-materials .topic-panel,.candidate-materials .studio-topic-options,.candidate-materials .topic-list,.candidate-materials .studio-results{display:none}.candidate-materials .studio-page>.page-head{margin-top:8px}.candidate-tasks .studio-results{margin-top:20px}.candidate-center button:focus-visible,.candidate-tabs button:focus-visible{outline:2px solid #ed6b47;outline-offset:3px}
@media(max-width:1100px){.candidate-row-main{grid-template-columns:32px minmax(0,1fr) minmax(90px,.7fr)}.candidate-row-status{grid-column:2/4;display:flex;justify-content:space-between;gap:8px}.candidate-row-status small{margin:0}.candidate-token-icon{width:32px;height:32px}.candidate-layout{grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr)}}
@media(max-width:760px){.candidate-layout{display:block}.candidate-detail{display:none}.candidate-detail.is-open{display:block;position:fixed;inset:70px 12px 16px;max-height:none;z-index:20;box-shadow:0 0 0 100vmax #17223666}.candidate-mobile-close{display:inline-flex}.candidate-heading{align-items:flex-start;flex-wrap:wrap}.candidate-heading h2{font-size:22px}.candidate-toolbar{gap:8px}.candidate-search{flex-basis:100%}.candidate-toolbar select{flex:1;min-width:90px;font-size:12px}.candidate-row{padding:12px;gap:8px}.candidate-bottom{padding:12px;bottom:8px}.candidate-tabs{gap:20px}.candidate-pagination{padding:12px}.candidate-detail-empty{min-height:180px}}
