:root{color:#1f2933;background:#f4f6f7;font-family:Inter,Noto Sans JP,Hiragino Sans,Yu Gothic,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.app-shell{background:linear-gradient(180deg,#e8f5f3b8,#f4f6f700 280px),#f4f6f7;min-height:100vh;padding:24px}.topbar{align-items:center;display:flex;gap:16px;justify-content:space-between;margin:0 auto 18px;max-width:1180px}.eyebrow,.section-kicker{color:#65707b;font-size:.76rem;font-weight:700;letter-spacing:0;margin:0 0 4px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{color:#111827;font-size:clamp(1.75rem,4.2vw,2.75rem);line-height:1.1;margin-bottom:8px}.topbar-copy{color:#4d5a66;font-size:.96rem;line-height:1.6;margin:0;max-width:620px}h2{color:#111827;font-size:1.3rem;margin-bottom:0}h3{color:#111827;font-size:1rem;margin-bottom:0}.workspace{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(320px,420px) minmax(0,1fr);margin:0 auto;max-width:1180px}.workspace.no-results{grid-template-columns:minmax(320px,520px);justify-content:center}.input-panel,.results-panel{background:#fff;border:1px solid #dde4ea;border-radius:8px;box-shadow:0 10px 30px #1f293314;padding:18px}.input-panel{max-height:calc(100vh - 132px);overflow-y:auto;position:sticky;scrollbar-gutter:stable;top:18px}.panel-heading{align-items:center;border-bottom:1px solid #e3e8ed;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:14px}.person-section{border-bottom:1px solid #edf1f4;margin-bottom:16px;padding-bottom:16px}.person-heading{align-items:center;display:flex;gap:8px;margin-bottom:6px}.person-hint{color:#65707b;font-size:.78rem;line-height:1.45;margin:0 0 10px}.pass-hint{margin-top:10px}.pass-shortcuts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.pass-shortcuts button{background:#eef7f6;border:1px solid #c8e1de;border-radius:999px;color:#0f5f59;cursor:pointer;font-size:.76rem;font-weight:800;line-height:1;min-height:30px;padding:7px 10px}.pass-shortcuts button:hover:not(:disabled),.pass-shortcuts button:focus-visible:not(:disabled){background:#dff1ef;border-color:#86bbb4;outline:none}.pass-shortcuts button:disabled{background:#f3f5f6;border-color:#dce3e7;color:#9aa4ad;cursor:not-allowed}.person-icon,.metric-icon{align-items:center;color:#0f766e;display:inline-flex}.field-grid,.pass-row{display:grid;gap:10px}.field-grid{grid-template-columns:1fr 1fr}.pass-row{align-items:end;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);margin-top:10px}.pass-arrow{color:#697782;margin-bottom:13px}.field-label{display:grid;gap:6px;min-width:0;position:relative}.field-title{align-items:center;color:#3c4752;display:flex;font-size:.83rem;font-weight:700;gap:6px;min-height:20px}.required-mark{background:#fff1d6;border:1px solid #f1c66b;border-radius:999px;color:#875a04;font-size:.68rem;line-height:1;padding:3px 6px}.station-picker{min-width:0;position:relative}.station-combobox{align-items:center;background:#f8fafb;border:1px solid #cfd8df;border-radius:7px;color:#111827;display:flex;gap:8px;min-height:42px;min-width:0;padding:0 10px;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease;width:100%}.station-combobox:focus-within{background:#fff;border-color:#0f766e;box-shadow:0 0 0 3px #0f766e26}.station-combobox input{background:transparent;border:0;color:#111827;min-height:40px;min-width:0;outline:none;padding:0;width:100%}.station-combobox input::placeholder{color:#6b7783;font-weight:600}.station-combobox.selected{background:#fff}.station-trigger{align-items:center;background:#f8fafb;border:1px solid #cfd8df;border-radius:7px;color:#111827;display:flex;gap:8px;justify-content:space-between;min-height:42px;min-width:0;outline:none;padding:9px 10px;text-align:left;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease;width:100%}.station-trigger:hover,.station-trigger:focus{background:#fff;border-color:#0f766e;box-shadow:0 0 0 3px #0f766e26}.station-trigger:not(.selected){color:#6b7783;font-weight:600}.station-trigger-main{display:grid;gap:2px;min-width:0}.station-trigger-main small{color:#65707b;font-size:.72rem;font-weight:700}.clear-station-button{align-items:center;background:#fff;border:1px solid #cfd8df;border-radius:999px;color:#4b5563;display:inline-flex;height:24px;justify-content:center;position:absolute;right:34px;top:31px;width:24px}.station-menu{background:#fff;border:1px solid #cfd8df;border-radius:8px;box-shadow:0 18px 45px #1f29332e;left:0;max-height:min(480px,70vh);overflow:hidden;position:absolute;right:0;top:calc(100% + 6px);z-index:30}.station-search{align-items:center;border-bottom:1px solid #e3e8ed;color:#0f766e;display:flex;gap:8px;padding:10px}.station-search input{border:0;color:#111827;min-width:0;outline:none;width:100%}.station-menu-list{max-height:390px;overflow-y:auto;padding:8px}.station-group+.station-group{margin-top:12px}.station-group h4{color:#596673;font-size:.76rem;letter-spacing:0;margin:0 0 6px}.station-options{display:grid;gap:5px}.station-option{background:#fff;border:1px solid transparent;border-radius:7px;color:#111827;display:grid;gap:3px;min-height:48px;padding:8px 9px;text-align:left;width:100%}.station-option:hover,.station-option.active{background:#e8f5f3;border-color:#b9ddd8}.station-option-name{font-weight:900}.station-option-meta{color:#65707b;font-size:.76rem;line-height:1.35}.empty-stations{color:#65707b;font-size:.86rem;margin:0;padding:10px 4px}.more-stations{background:#f8fafb;border:1px solid #e3e8ed;border-radius:7px;color:#65707b;font-size:.78rem;margin:8px 0 0;padding:8px}.form-actions{display:grid;gap:10px}.primary-button,.ghost-button{align-items:center;border-radius:7px;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:42px;padding:10px 14px}.primary-button{background:#0f766e;border:1px solid #0f766e;color:#fff}.primary-button:hover:not(:disabled){background:#0b5f59}.primary-button:disabled{background:#a7b8bf;border-color:#a7b8bf}.ghost-button{background:#fff;border:1px solid #cfd8df;color:#2f3a45;white-space:nowrap}.ghost-button:hover{background:#f8fafb}.status-text{color:#65707b;font-size:.86rem;margin:0}.status-text.warning{color:#a33c06;font-weight:700}.result-list{display:grid;gap:14px}.comparison-table{border:1px solid #d7e0e6;border-radius:8px;display:grid;margin-bottom:14px;overflow-x:auto}.comparison-row{align-items:center;background:#fff;border-bottom:1px solid #edf1f4;display:grid;gap:10px;grid-template-columns:minmax(92px,1.2fr) .8fr .8fr .7fr 1fr;min-height:42px;min-width:620px;padding:9px 12px}.comparison-row:last-child{border-bottom:0}.comparison-head{background:#f8fafb;color:#65707b;font-size:.74rem;font-weight:900}.comparison-row strong{color:#111827}.comparison-row span{color:#3c4752;font-size:.84rem}.candidate-card{border:1px solid #d7e0e6;border-radius:8px;display:grid;gap:14px;padding:16px}.candidate-header,.rank-line,.summary-strip,.person-breakdown-row{align-items:center;display:flex}.candidate-header{gap:14px;justify-content:space-between}.rank-line{gap:9px}.rank-badge{align-items:center;background:#172033;border-radius:6px;color:#fff;display:inline-flex;font-size:.84rem;font-weight:900;height:28px;justify-content:center;min-width:28px}.area-text{color:#65707b;font-size:.88rem;margin:4px 0 0 37px}.metric-pill{align-items:center;background:#e8f5f3;border:1px solid #b9ddd8;border-radius:999px;color:#0f5f59;display:inline-flex;flex-shrink:0;font-weight:800;gap:6px;padding:7px 10px}.tag-list{display:flex;flex-wrap:wrap;gap:7px}.tag{background:#f1f5f9;border:1px solid #d9e2ea;border-radius:999px;color:#334155;font-size:.78rem;font-weight:800;padding:5px 8px}.reason-list{color:#2f3a45;display:grid;font-size:.92rem;gap:6px;margin:0;padding-left:20px}.summary-strip{background:#f8fafb;border:1px solid #e3e8ed;border-radius:8px;display:grid;gap:0;grid-template-columns:repeat(3,1fr);overflow:hidden}.metric{align-items:center;border-right:1px solid #e3e8ed;display:grid;gap:3px 7px;grid-template-columns:auto 1fr;padding:10px}.metric:last-child{border-right:0}.metric-label{color:#65707b;font-size:.74rem;font-weight:800}.metric strong{color:#111827;font-size:.95rem;grid-column:2}.participant-breakdown{border-top:1px solid #edf1f4;display:grid;gap:8px;padding-top:12px}.person-breakdown-row{gap:10px}.breakdown-name{color:#111827;flex:0 0 48px;font-weight:900}.breakdown-values{color:#46525e;display:flex;flex-wrap:wrap;font-size:.86rem;gap:7px 12px}@media(max-width:900px){.app-shell{padding:18px}.topbar{align-items:flex-start;flex-direction:column}.workspace,.workspace.no-results{grid-template-columns:1fr}.input-panel{max-height:none;overflow:visible;position:static}}@media(max-width:560px){.app-shell{padding:12px}.input-panel,.results-panel{padding:14px}.field-grid,.pass-row,.summary-strip{grid-template-columns:1fr}.pass-arrow{display:none}.candidate-header{align-items:flex-start;flex-direction:column}.area-text{margin-left:0}.metric{border-bottom:1px solid #e3e8ed;border-right:0}.metric:last-child{border-bottom:0}}
