:root{font-family:Inter,Noto Sans JP,Yu Gothic,Meiryo,system-ui,sans-serif;color:#18243b;background:#f7f9fc;font-synthesis:none;font-weight:400;font-size:14px;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:10px 18px;background:#fff;border:1px solid #dce3ed;border-radius:8px;color:#42536d;cursor:pointer;transition:background .15s}button:hover:not(:disabled){background:#f0f5ff}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #91b9ff;outline-offset:3px}.primary{background:#0966fa;border-color:#0966fa;color:#fff;font-weight:600;min-height:44px}.primary:hover:not(:disabled){background:#0054d7}.app-header{height:76px;background:#fff;border-bottom:1px solid #e6ebf2;padding:0 5%;display:flex;align-items:center;justify-content:space-between}.brand{color:#17243b;font-size:23px;font-weight:750;text-decoration:none;letter-spacing:-.6px}.brand-mark{color:#0868ff;display:inline-block;transform:rotate(-25deg);margin-right:6px;font-size:31px}.header-right{display:flex;align-items:center;gap:18px}.mvp-badge,.step-label{font-size:12px;letter-spacing:1px;border:1px solid #dce3ed;color:#687994;border-radius:20px;padding:5px 12px}.account{color:#718097;font-size:12px}.workspace{max-width:1056px;margin:44px auto 0;padding:0 32px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:#8a99ae;margin-bottom:8px}h1{font-size:30px;letter-spacing:-.8px;line-height:1.3;margin:0 0 10px}h2{font-size:16px;margin:0;font-weight:650}h3{font-size:22px;margin:0}p{margin:8px 0;color:#67778e}.ai-badge{display:inline-block;vertical-align:middle;background:#e9f1ff;color:#0866f8;padding:4px 8px;border-radius:6px;font-size:13px;letter-spacing:0;margin-left:5px}.card{background:#fff;border:1px solid #e3e8f0;border-radius:12px;padding:25px 28px;margin-bottom:18px}.card-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}.muted{color:#8190a6;font-size:12px}.hidden{display:none}.dropzone{width:100%;padding:30px 12px;background:#fbfcfe;border:1.5px dashed #d5dfed;flex-direction:column;gap:6px;color:#536680;border-radius:9px}.dropzone strong{font-size:14px;color:#344861}.dropzone b{color:#0767f7;font-weight:600}.dropzone small{font-size:11px;color:#9ba8ba;margin-top:4px}.upload-icon{padding:9px;border-radius:10px;background:#edf3ff;color:#2779f7;margin-bottom:7px}.dragging{background:#edf4ff;border-color:#0966fa}.file-row{display:flex;gap:15px;align-items:center;border:1px solid #e4eaf3;border-radius:8px;padding:17px}.file-icon{color:#0966fa;background:#edf4ff;border-radius:8px;padding:10px;display:flex}.file-name{flex:1;min-width:0}.file-name strong{display:block;overflow-wrap:anywhere;font-size:14px}.file-name small{color:#8b99af;display:block}.file-row button{font-size:12px;padding:7px 12px}.upload-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:20px}.status-steps{list-style:none;padding:0;margin:28px 0 18px;display:flex}.status-steps li{display:flex;flex:1;flex-direction:column;align-items:center;gap:9px;font-size:12px;color:#9ba8ba;position:relative}.status-steps li:not(:last-child):after{content:"";position:absolute;height:2px;background:#e8edf4;left:calc(50% + 23px);right:calc(-50% + 23px);top:17px}.status-steps li.reached:not(:last-child):after{background:#93baff}.status-circle{width:35px;height:35px;background:#edf1f7;color:#9ba8ba;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1}.reached{color:#3b506d!important}.reached .status-circle{background:#0966fa;color:#fff}.finished .status-circle{background:#11a56c}.status-message{text-align:center;font-size:12px;margin:20px 0 0}.success{color:#119363;font-size:12px}.error{color:#c44545;font-size:13px}.text-button{display:block;border:0;font-size:12px;color:#0966fa;margin:8px auto 0;padding:4px 10px}.error-box{padding:14px 18px;border:1px solid #fad4d4;background:#fff5f5;border-radius:9px;color:#ac3939;margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.small-badge{background:#f0f3f8;color:#8190a6;font-size:11px;padding:4px 10px;border-radius:5px}.empty{display:flex;flex-direction:column;align-items:center;padding:35px 0;color:#bcc7d6}.empty p{font-size:12px;color:#94a1b4}.candidate-heading{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid #edf0f6}.candidate-heading p{font-size:12px;margin:2px 0 0}.candidate-heading select{margin-left:auto;max-width:220px;padding:8px}.avatar{width:53px;height:53px;background:#e9f2ff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:23px;color:#0868ff;font-weight:650}.talent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 35px;margin:22px 0}.talent-grid dt{color:#8b99ad;font-size:11px;margin-bottom:4px}.talent-grid dd{margin:0;font-size:13px;overflow-wrap:anywhere}.skills{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:24px}.chip{border:1px solid #d6e5ff;background:#f3f7ff;color:#2777ec;font-size:11px;border-radius:20px;padding:3px 12px}.fineprint{font-size:11px;margin-top:20px}.action-bar{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e2e9f3;border-radius:10px;padding:17px 22px;margin-bottom:28px;gap:15px}.action-bar .primary{min-width:155px}.page-footer{text-align:center;color:#a0aec0;font-size:10px;padding:10px 0 25px}.login{max-width:420px;margin:80px auto;padding:30px;background:#fff;border:1px solid #e3e8f0;border-radius:12px}.login p{font-size:12px}.login form{margin-top:22px}.login label{display:block;font-size:12px;color:#64758e;margin:14px 0}.login input{display:block;width:100%;padding:11px;margin-top:6px;border:1px solid #dce3ed;border-radius:6px}.login .primary{width:100%;margin-top:12px}.connection-error{max-width:700px;margin:25px auto;text-align:center;color:#b04444}.pulse{animation:pulse 1.5s infinite}@keyframes pulse{50%{box-shadow:0 0 0 5px #e2eeff}}@media(prefers-reduced-motion:reduce){.pulse{animation:none}}@media(max-width:640px){.app-header{height:62px}.brand{font-size:20px}.account{display:none}.workspace{margin-top:28px;padding:0 16px}.page-heading{align-items:flex-start}.step-label{font-size:9px;padding:5px 8px;white-space:nowrap}h1{font-size:25px}.card{padding:20px 17px}.card-heading .muted{font-size:10px}.upload-footer{align-items:flex-end}.upload-footer>.muted{max-width:130px;font-size:10px}.talent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.file-row{gap:10px;padding:12px}.file-row button{font-size:10px;padding:7px}.action-bar{padding:15px}.action-bar>span{font-size:10px}.login{margin:40px 16px}.candidate-heading{flex-wrap:wrap}.candidate-heading select{margin-left:0;width:100%}}.source-note{display:block;margin-top:6px;font-size:11px;line-height:1.6;font-weight:400}.editor-actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.talent-editor label{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#64748b}.talent-editor input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #dbe3ec;border-radius:8px;font:inherit;color:#172b4d;background:#fff}.talent-editor{margin-top:20px}.talent-editor input:focus{outline:2px solid #9bbafc;outline-offset:1px}.project-history{margin-top:24px}.project-history details{padding:12px 0;border-bottom:1px solid #e2e8f0}.project-history summary{cursor:pointer;font-weight:600}.project-history dl>div{margin:12px 0}.project-history dt{font-size:12px;color:#64748b}.project-history dd{margin:4px 0;font-size:13px}.formal-columns{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:20px;margin-top:24px}.proposal-case{display:flex;flex-wrap:wrap;text-align:left;gap:10px;width:100%;margin-top:14px;padding:15px;border:1px solid #e0e7f0}.proposal-case strong{flex:1;min-width:120px;line-height:1.7;overflow-wrap:anywhere}.proposal-case small{width:100%;padding-left:28px;color:#7788a1}.proposal-case.selected{border-color:#0966fa;background:#f3f8ff}.formal-editor label{display:block;color:#526784;font-size:13px;margin:20px 0}.formal-editor input,.formal-editor textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #dce5f1;border-radius:10px;margin-top:10px;padding:14px;font:inherit;line-height:1.8;resize:vertical}.formal-editor textarea:disabled,.formal-editor input:disabled{background:#f5f8fc;color:#56667f}@media(max-width:800px){.formal-columns{grid-template-columns:1fr}.formal-columns>.card{min-width:0}.action-bar{flex-wrap:wrap;gap:12px}}.proposal-success-overlay{position:fixed;inset:0;z-index:100;background:#142b4f55;display:flex;align-items:center;justify-content:center;padding:20px}.proposal-success-dialog{max-width:420px;width:100%;text-align:center;box-shadow:0 15px 70px #162b4b33}.success-check{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;color:#109664;background:#e9f8ef;font-size:30px}.proposal-success-dialog h2{margin-top:20px}.proposal-success-dialog button{margin-top:16px}.box-row{display:flex;align-items:center;gap:12px}.box-row>input,.box-check input{width:17px;height:17px;accent-color:#0966fa}.box-check{display:flex;align-items:center;gap:8px;font-size:12px}.box-row .case-title{flex:1;text-align:left}.box-search{padding:12px 16px;border:1px solid #dce5f1;border-radius:9px;font:inherit;max-width:100%;box-sizing:border-box}.proposal-draft-editor{margin-top:24px}.proposal-draft-editor label{display:block;margin:20px 0}.proposal-draft-editor textarea{display:block;box-sizing:border-box;width:100%;margin-top:12px;padding:16px;border:1px solid #dce5f1;border-radius:10px;font:inherit;line-height:1.7;resize:vertical}.box-row>button:last-child{font-size:11px;color:#a94c4c}@media(max-width:640px){.box-row{flex-wrap:wrap}.box-row .case-title{min-width:60%}.box-row .match-score{margin-left:28px}.box-row>button:last-child{margin-left:auto}.box-search{width:65%}.box-row .match-score strong{font-size:18px}}.matching-workspace{max-width:1390px}.candidate-strip{display:flex;align-items:center;gap:16px}.candidate-strip p{margin:3px 0 0;font-size:12px}.strip-actions{margin-left:auto;display:flex;gap:10px}.basket-button{color:#0966fa}.basket-button b{background:#e8f1ff;padding:0 6px;border-radius:12px}.matching-toolbar{display:flex;align-items:center;gap:12px;margin:0 0 20px}.case-search{flex:1}.case-search input{padding:11px 15px;border:1px solid #dce3ed;border-radius:8px;width:100%;max-width:370px;background:#fff}.matching-columns{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;align-items:start}.matching-list,.matching-detail{padding:22px;min-width:0}.matching-list .card-heading{margin-bottom:6px}.score-help{margin:0 0 20px;line-height:1.7}.match-card{border:1px solid #e2e8f2;border-radius:10px;padding:16px;margin-bottom:14px;transition:border-color .15s}.match-card:last-child{margin-bottom:0}.match-card.selected{border-color:#3983ff;background:#f5f9ff}.match-title-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.rank{background:#e8f1ff;color:#0966fa;border-radius:8px;padding:6px 8px;font-size:17px;font-weight:650}.case-title{background:none;border:0;padding:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left;flex:1;min-width:130px;color:#192b47}.case-title strong{font-size:14px;overflow-wrap:anywhere}.case-title span{font-size:10px;color:#8694a8;margin-top:4px}.case-title:hover:not(:disabled){background:transparent;color:#0966fa}.match-score{color:#0868ff;min-width:52px;text-align:right}.match-score strong{font-size:25px;line-height:1.2}.match-score small{font-size:10px;margin-left:3px}.match-score>span{display:block;color:#8899af;font-size:9px}.add-button{color:#0966fa;border-color:#a9caff;font-size:10px;padding:7px 10px}.dimension-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;padding:15px 0 0;margin-top:8px;border:0;background:transparent;gap:0;justify-content:stretch;text-align:left}.dimension-row:hover:not(:disabled){background:transparent}.dimension-row>span{padding:0 10px;border-right:1px solid #e7edf6;min-width:0}.dimension-row>span:first-child{padding-left:0}.dimension-row>span:last-child{padding-right:0;border-right:0}.dimension-row small{font-size:10px;color:#7b8da7;white-space:nowrap}.dimension-row strong{display:block;font-size:17px;color:#223857;margin:2px 0 5px}.mini-bar{height:5px;display:block;border-radius:4px;background:#e7eef7;overflow:hidden}.mini-bar i{display:block;height:100%;background:#2477ff;border-radius:4px}.selected-note,.eligibility-note{font-size:10px;margin:13px 0 0;color:#7590b6}.comparison-subtitle{font-size:12px;margin:0 0 18px}.comparison-table-wrap{overflow:auto}.comparison-table{border-collapse:separate;border-spacing:0;border:1px solid #e2e9f3;border-radius:9px;width:100%;overflow:hidden;font-size:12px;table-layout:fixed}.comparison-table th,.comparison-table td{padding:14px 11px;border-right:1px solid #e7edf6;border-bottom:1px solid #e7edf6;text-align:left;vertical-align:top;overflow-wrap:anywhere}.comparison-table th:first-child{width:22%}.comparison-table thead{background:#f5f8fd}.comparison-table td{color:#5c7090}.comparison-table tr:last-child>*{border-bottom:0}.comparison-table tr>*:last-child{border-right:0}.matching-explanation{background:#f0f6ff;padding:18px;border-radius:9px;margin-top:18px}.matching-explanation h3{font-size:13px;color:#0966fa;margin:0 0 12px}.matching-explanation p{display:flex;gap:10px;align-items:flex-start;margin:11px 0;font-size:11px}.matching-explanation b{font-weight:500;color:#49617f}.matching-explanation small{display:block;color:#8192ac;font-size:10px;line-height:1.8}.green-dot,.unknown-dot,.amber-dot{width:8px;height:8px;border-radius:50%;background:#13a76d;flex-shrink:0;margin-top:6px}.unknown-dot{background:#a5b1c4}.amber-dot{background:#f1b331}@media(max-width:1000px){.matching-columns{grid-template-columns:1fr}.matching-detail{margin-top:0}.candidate-strip{flex-wrap:wrap}.strip-actions{margin-left:0;width:100%;justify-content:flex-end}}@media(max-width:640px){.matching-list,.matching-detail{padding:17px}.candidate-strip{padding:18px}.strip-actions{justify-content:space-between}.strip-actions button{font-size:10px;padding:8px}.match-card{padding:13px}.match-title-row{gap:8px}.match-title-row .add-button{margin-left:auto}.rank{font-size:13px}.case-title strong{font-size:12px}.dimension-row>span{padding:0 6px}.dimension-row small{font-size:9px}.matching-toolbar button{font-size:11px;padding:10px}.comparison-table{font-size:11px}.comparison-table td,.comparison-table th{padding:12px 8px}}.archive-source{margin:18px 0;padding:14px;border:1px solid #e2e8f0;border-radius:10px}.archive-source summary{cursor:pointer;font-weight:600}.archive-source pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:12px;line-height:1.8;max-height:420px;overflow:auto}.candidate-verdict{font-size:12px;color:#375f86;margin:12px 0 0}.match-score strong{font-size:21px}.matching-toolbar button:disabled{opacity:.55}.matching-list .add-button{background:#0966fa;color:#fff;border-color:#0966fa;font-weight:600;box-shadow:0 2px 6px #0966fa26}.matching-list .add-button:hover:not(:disabled){background:#0754d4;border-color:#0754d4}.matching-list .add-button:focus-visible{outline:3px solid #8cb9ff;outline-offset:3px}.matching-list .add-button:disabled{background:#e8f0fc;border-color:#d3e1f5;color:#6681a8;box-shadow:none;opacity:1}
