*,*:before,*:after{box-sizing:border-box}html,body{margin:0}body{min-width:320px;min-height:100vh;background:var(--surface-canvas);color:var(--fg-1);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"ss01","cv11";background-image:radial-gradient(oklch(0 0 0 / .012) 1px,transparent 1px),radial-gradient(oklch(0 0 0 / .008) 1px,transparent 1px);background-size:3px 3px,7px 7px;background-position:0 0,1px 2px}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button[disabled]{opacity:.55;cursor:not-allowed}h1,h2,h3,h4,p{margin:0}h1{font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:var(--tr-h1);font-weight:var(--fw-semibold)}h2{font-size:var(--fs-h2);line-height:var(--lh-h2);letter-spacing:var(--tr-h2);font-weight:var(--fw-semibold)}h3{font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--tr-h3);font-weight:var(--fw-semibold)}h4{font-size:var(--fs-h4);line-height:var(--lh-h4);font-weight:var(--fw-semibold)}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:var(--space-4);height:var(--header-h);padding:0 var(--space-6);background:#f6f5f1d9;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--border-subtle)}.brand{display:inline-flex;align-items:center;gap:var(--space-2);border:0;background:transparent;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-weight:var(--fw-semibold);font-size:15px;letter-spacing:-.015em;color:inherit}.brand:hover{background:#0000000a}.brand-mark{width:24px;height:24px;display:inline-grid;place-items:center;position:relative}.brand-mark svg{display:block}.topbar>p{flex:1;min-width:0;color:var(--fg-3);font-size:var(--fs-body-sm)}.topbar-tagline{color:var(--fg-3);font-size:var(--fs-body-sm)}.topbar-spacer{flex:1}.topbar-actions{display:flex;align-items:center;gap:var(--space-2);position:relative}.model-selector{display:inline-flex;align-items:center;gap:var(--space-2);height:28px;padding:0 var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--surface-raised);color:var(--fg-3);font-size:var(--fs-caption);font-weight:var(--fw-medium)}.model-selector span{color:var(--fg-3);text-transform:uppercase;font-size:10px}.model-selector select{max-width:190px;min-width:86px;border:0;outline:0;background:transparent;color:var(--fg-1);font:inherit}.model-selector:focus-within{border-color:var(--lime-500);box-shadow:0 0 0 3px #e5f46d3d}.agent-state{display:inline-flex;align-items:center;gap:var(--space-2);padding:5px var(--space-3) 5px var(--space-2);border-radius:var(--radius-full);background:var(--surface-raised);border:1px solid var(--border-subtle);font-size:var(--fs-caption);font-weight:var(--fw-medium);color:var(--fg-2);height:28px}.agent-state strong{color:var(--fg-1);font-weight:var(--fw-medium)}.agent-state .dot{width:8px;height:8px;border-radius:50%;background:var(--ink-300);flex-shrink:0}.agent-state.idle .dot{background:var(--ink-400)}.agent-state.ready .dot{background:var(--success-500);box-shadow:0 0 0 3px #47a56629}.agent-state.working .dot{background:var(--lime-500);box-shadow:0 0 0 3px #e5f46d59;animation:pulse 1.6s var(--ease-in-out) infinite}.agent-state.error .dot{background:var(--danger-500)}@keyframes pulse{0%,to{box-shadow:0 0 #e5f46d80}50%{box-shadow:0 0 0 6px #e5f46d00}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1;transition:background var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out)}.btn .lucide{width:16px;height:16px;flex-shrink:0}.btn-primary{background:var(--lime-500);color:var(--ink-900);border-color:#0000000f}.btn-primary:hover{background:var(--lime-600)}.btn-primary:active{background:var(--lime-700);color:var(--paper-100)}.btn-ink{background:var(--ink-900);color:var(--paper-100)}.btn-ink:hover{background:var(--ink-700)}.btn-outline{background:var(--surface-raised);color:var(--fg-1);border-color:var(--border-default)}.btn-outline:hover{border-color:var(--border-strong);background:var(--paper-50)}.btn-ghost{background:transparent;color:var(--fg-1)}.btn-ghost:hover{background:#0000000a}.btn-danger{background:var(--surface-raised);color:var(--danger-700);border-color:#bd413f26}.btn-danger:hover{background:var(--danger-50)}.btn-sm{height:28px;padding:0 var(--space-3);font-size:var(--fs-body-sm)}.btn-lg{height:44px;padding:0 var(--space-5);font-size:var(--fs-body-lg)}.btn-icon{width:32px;height:32px;padding:0}.canvas{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:var(--space-8) 0 var(--space-14);display:grid;gap:var(--space-3)}.flow-stepper{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);color:var(--fg-3);font-size:var(--fs-caption);letter-spacing:.04em;text-transform:uppercase}.flow-stepper-step{display:inline-flex;align-items:center;gap:var(--space-1-5)}.flow-stepper-step .dot{width:6px;height:6px;border-radius:50%;background:var(--ink-300)}.flow-stepper-step.done .dot{background:var(--success-500)}.flow-stepper-step.active .dot{background:var(--lime-500);box-shadow:0 0 0 3px #e5f46d4d}.flow-stepper-step.active{color:var(--fg-1)}.flow-stepper-arrow{color:var(--ink-300)}.panel{background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-subtle)}.panel-header.no-border{border-bottom:0;padding-bottom:0}.panel-step{display:flex;align-items:center;gap:var(--space-3)}.panel-step-num{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:var(--radius-full);background:var(--ink-900);color:var(--paper-100);font-size:11px;font-weight:var(--fw-medium);font-family:var(--font-mono);font-feature-settings:"tnum"}.panel-step-num.done{background:var(--lime-500);color:var(--ink-900)}.panel-step-num.muted{background:var(--ink-100);color:var(--ink-500)}.panel-step-title h2{font-size:var(--fs-h3)}.panel-step-title p{color:var(--fg-3);font-size:var(--fs-body-sm);margin-top:2px}.panel-body{padding:var(--space-5) var(--space-6)}.drop-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-5);align-items:start}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-5);min-height:168px;border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--paper-50);text-align:center;transition:border-color var(--dur-micro) var(--ease-out),background var(--dur-micro) var(--ease-out)}.upload-zone:hover,.upload-zone.dragging{border-color:var(--ink-700);background:var(--paper-200)}.upload-zone .icon-tile{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--border-subtle);color:var(--fg-2);margin-bottom:var(--space-2)}.upload-zone strong{font-size:var(--fs-body-lg);font-weight:var(--fw-medium);color:var(--fg-1)}.upload-zone span{color:var(--fg-3);font-size:var(--fs-body-sm)}.upload-zone input[type=file]{display:none}.text-or{display:flex;align-items:center;gap:var(--space-3);color:var(--fg-3);font-size:var(--fs-caption);letter-spacing:.08em;text-transform:uppercase;margin:var(--space-3) 0}.text-or:before,.text-or:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.brief-textarea,.addendum-area{display:block;width:100%;min-height:168px;padding:var(--space-3) var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--fg-1);font:inherit;line-height:var(--lh-body);resize:vertical;transition:border-color var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out)}.brief-textarea::placeholder,.addendum-area::placeholder{color:var(--fg-4)}.brief-textarea:focus-visible,.addendum-area:focus-visible{outline:none;border-color:var(--ink-900);box-shadow:0 0 0 3px #e5f46d73}.addendum-area{min-height:96px}.file-attached{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;gap:var(--space-3);align-items:center;padding:var(--space-2-5, 10px) var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-raised)}.file-attached.success{border-color:#47a56640;background:var(--success-50)}.file-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--ink-100);color:var(--ink-700)}.file-attached strong{font-weight:var(--fw-medium);font-size:var(--fs-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.file-attached .meta{font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--fg-3)}.file-attached .check{color:var(--success-500)}.file-stack{display:grid;gap:var(--space-2)}.banner{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-size:var(--fs-body-sm)}.banner .lucide{width:16px;height:16px;flex-shrink:0;margin-top:1px}.banner-info,.banner.info{background:var(--info-50);border-color:#4f84ba2e;color:var(--info-700)}.banner-warn,.banner.warn{background:var(--warning-50);border-color:#bd821a38;color:var(--warning-700)}.banner-error,.banner.error{background:var(--danger-50);border-color:#bd413f33;color:var(--danger-700)}.banner-success,.banner.success{background:var(--success-50);border-color:#47a56638;color:var(--success-700)}.ratio-controls{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-1);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-raised)}.ratio-field{display:inline-flex;align-items:center;gap:var(--space-2);padding:0 var(--space-2)}.ratio-field label{font-size:var(--fs-caption);color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase}.ratio-field input{width:48px;height:28px;padding:0 var(--space-2);border:0;border-radius:var(--radius-sm);background:var(--paper-100);text-align:center;font-family:var(--font-mono);font-size:var(--fs-mono);font-weight:var(--fw-medium);color:var(--fg-1)}.ratio-field input:focus-visible{outline:none;background:var(--surface-raised);box-shadow:0 0 0 2px #e5f46d8c}.ratio-percent{color:var(--fg-3);font-family:var(--font-mono);font-size:var(--fs-mono-sm)}.ratio-divider{width:1px;height:16px;background:var(--border-subtle)}.skill-table{display:grid;gap:var(--space-2)}.skill-row{display:grid;grid-template-columns:132px minmax(0,1fr) 88px 32px;gap:var(--space-3);align-items:center;padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--paper-50);transition:border-color var(--dur-micro) var(--ease-out),background var(--dur-micro) var(--ease-out)}.skill-row:hover{border-color:var(--border-default);background:var(--surface-raised)}.group-pill{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:4px var(--space-2);border-radius:var(--radius-full);font-size:var(--fs-caption);font-weight:var(--fw-medium);width:fit-content;height:22px;line-height:1;letter-spacing:0}.group-pill:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0}.group-critical{background:var(--danger-50);color:var(--danger-700)}.group-critical:before{background:var(--danger-500)}.group-main{background:var(--info-50);color:var(--info-700)}.group-main:before{background:var(--info-500)}.group-plus{background:var(--lime-50);color:var(--lime-800)}.group-plus:before{background:var(--lime-700)}.clarification-panel{display:grid;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-raised)}.clarification-panel>p{margin:0;color:var(--fg-2);font-size:var(--fs-body-sm)}.clarification-list{display:grid;gap:var(--space-3)}.clarification-item{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--paper-50)}.clarification-item>div:first-child{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.clarification-item strong{color:var(--fg-1);font-weight:var(--fw-medium)}.clarification-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.clarification-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.clarification-state{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.clarification-state-badge{display:inline-flex;flex-direction:column;gap:2px;padding:6px var(--space-2);border-radius:var(--radius-sm);background:var(--paper-100);border:1px solid var(--border-subtle);color:var(--fg-2);font-size:var(--fs-caption);line-height:1.3}.clarification-state-badge strong{color:var(--fg-1);font-weight:var(--fw-medium);font-size:var(--fs-body-sm)}.clarification-state-badge.state-not_important{border-color:var(--ink-200)}.clarification-state-badge.state-hiring_manager{border-color:var(--info-200)}.clarification-state-badge.state-softer{border-color:var(--warning-200)}.hint-chip{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-full);background:var(--paper-100);border:1px solid var(--border-subtle);color:var(--fg-2);font-size:var(--fs-caption);font-weight:var(--fw-medium);letter-spacing:0;white-space:nowrap;cursor:help}.hint-chip.hint-blocker{background:var(--danger-50);border-color:var(--danger-200, var(--border-default));color:var(--danger-700)}.hint-chip.hint-important{background:var(--info-50);border-color:var(--info-200, var(--border-default));color:var(--info-700)}.hint-chip.hint-plus{background:var(--lime-50);border-color:var(--lime-200, var(--border-default));color:var(--lime-800)}.hint-chip.hint-softer{background:var(--warning-50, var(--paper-100));color:var(--warning-700, var(--fg-2))}.hint-chip.hint-hiring_manager{background:var(--info-50);color:var(--info-700)}.hint-chip.hint-why_asked,.hint-chip.hint-not_important{background:var(--paper-100);color:var(--fg-3)}.step-hint{margin:var(--space-2) 0 0;color:var(--fg-2);font-size:var(--fs-caption);line-height:1.45}.requirement-legend{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:var(--space-2) 0 var(--space-3);padding:var(--space-2) var(--space-3);border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);background:var(--paper-50)}.requirement-legend small{flex:1 1 280px;color:var(--fg-3);font-size:var(--fs-caption);line-height:1.4}.result-snapshot{margin:var(--space-1) 0 0;color:var(--fg-3);font-size:var(--fs-body-sm)}.result-snapshot strong{color:var(--fg-1);font-weight:var(--fw-medium)}.skill-input{width:100%;padding:6px var(--space-2);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;font:inherit;font-weight:var(--fw-medium);color:var(--fg-1);resize:none}.skill-input:hover{border-color:var(--border-subtle)}.skill-input:focus-visible{outline:none;border-color:var(--border-default);background:var(--surface-raised)}.skill-row small{grid-column:2;grid-row:2;color:var(--fg-3);font-size:var(--fs-body-sm);line-height:1.4;padding:0 var(--space-2) 4px}.skill-row.has-detail{grid-template-rows:auto auto}.skill-row.has-detail .group-pill,.skill-row.has-detail .weight-input,.skill-row.has-detail .row-action,.skill-row.has-detail em{grid-row:1 / span 2}.weight-input,.skill-row input[type=number]{width:100%;height:32px;padding:0 var(--space-2);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-raised);text-align:right;font-family:var(--font-mono);font-size:var(--fs-mono);font-weight:var(--fw-medium)}.weight-input:focus-visible,.skill-row input[type=number]:focus-visible{outline:none;border-color:var(--ink-900);box-shadow:0 0 0 2px #e5f46d73}.skill-row em{font-style:normal;color:var(--fg-3);font-size:var(--fs-caption);text-align:right;letter-spacing:.02em}.row-action{width:32px;height:32px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--fg-3)}.row-action:hover{border-color:#bd413f33;background:var(--danger-50);color:var(--danger-500)}.add-row-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.criteria-summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);margin-top:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--paper-50);font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--fg-2)}.criteria-summary b{color:var(--fg-1);font-weight:var(--fw-medium)}.criteria-summary.ok{background:var(--success-50);border-color:#47a56638;color:var(--success-700)}.criteria-summary.ok b{color:var(--success-700)}.criteria-summary.bad{background:var(--danger-50);border-color:#bd413f33;color:var(--danger-700)}.criteria-summary .lucide{width:14px;height:14px}.requirements-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:var(--space-4)}.run-strip,.primary-run{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--ink-900);color:var(--paper-100);box-shadow:var(--shadow-sm),var(--shadow-inset-inverse)}.run-strip p,.primary-run p{flex:1;min-width:0;color:var(--fg-on-inverse-2);font-size:var(--fs-body-sm);margin:0}.run-strip .run-context{font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--fg-on-inverse-2);display:inline-flex;align-items:center;gap:var(--space-2);padding:4px var(--space-2);border:1px solid var(--border-inverse-subtle);border-radius:var(--radius-sm)}.run-strip .run-context b{color:var(--paper-100);font-weight:var(--fw-medium)}.progress-card{padding:var(--space-5) var(--space-6);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm)}.progress-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-3)}.progress-card-head h3{font-size:var(--fs-h4)}.progress-bar{width:100%;height:6px;border-radius:var(--radius-full);background:var(--ink-100);overflow:hidden}.progress-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--lime-500),var(--lime-300));border-radius:var(--radius-full);transition:width var(--dur-page) var(--ease-out)}.progress-meta{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--fg-3)}.progress-meta b{color:var(--fg-1);font-weight:var(--fw-medium)}.results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--paper-50)}.results-stats{display:flex;align-items:center;gap:var(--space-5);font-size:var(--fs-body-sm);color:var(--fg-2)}.results-stats b{color:var(--fg-1);font-weight:var(--fw-medium);font-family:var(--font-mono);font-feature-settings:"tnum";margin-right:4px}.candidate-table{display:grid}.candidate-row{display:grid;grid-template-columns:28px minmax(0,1.4fr) minmax(0,2fr) 120px 96px 36px;gap:var(--space-4);align-items:center;padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-subtle);transition:background var(--dur-micro) var(--ease-out)}.candidate-row:hover{background:var(--paper-50)}.candidate-row.preliminary{opacity:.55}.candidate-rank{font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--fg-3);text-align:right}.candidate-name{display:flex;flex-direction:column;gap:2px;min-width:0}.candidate-name strong{font-weight:var(--fw-medium);font-size:var(--fs-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-name .meta{font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--fg-3)}.candidate-summary{color:var(--fg-2);font-size:var(--fs-body-sm);line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.verdict{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:4px var(--space-3);border-radius:var(--radius-full);font-size:var(--fs-caption);font-weight:var(--fw-medium);width:fit-content;height:24px;line-height:1}.verdict:before{content:"";width:6px;height:6px;border-radius:50%}.verdict-strong{background:var(--success-50);color:var(--success-700)}.verdict-strong:before{background:var(--success-500)}.verdict-consider{background:var(--lime-50);color:var(--lime-800)}.verdict-consider:before{background:var(--lime-700)}.verdict-borderline{background:var(--warning-50);color:var(--warning-700)}.verdict-borderline:before{background:var(--warning-500)}.verdict-reject{background:var(--danger-50);color:var(--danger-700)}.verdict-reject:before{background:var(--danger-500)}.verdict-pending{background:var(--ink-50);color:var(--fg-2)}.verdict-pending:before{background:var(--ink-400)}.score{font-family:var(--font-mono);font-size:24px;font-weight:var(--fw-medium);letter-spacing:-.02em;text-align:right;color:var(--fg-1);font-feature-settings:"tnum"}.score-em{color:var(--fg-3);font-size:13px}.candidate-toggle{width:28px;height:28px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--fg-3)}.candidate-toggle:hover{background:var(--ink-100);color:var(--fg-1)}.detail-row{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:var(--space-6);padding:var(--space-5);border-top:1px solid var(--border-subtle)}.detail-row strong{min-width:0;font-weight:var(--fw-medium);overflow-wrap:anywhere;word-break:break-word}.detail-row .detail-meta{font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--fg-3);margin-top:4px}.detail-row pre{min-width:0;margin:0;color:var(--fg-2);font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.details-head{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:var(--space-6);padding:var(--space-3) var(--space-5);background:var(--paper-50);border-bottom:1px solid var(--border-subtle);font-size:var(--fs-caption);color:var(--fg-3);letter-spacing:.06em;text-transform:uppercase;font-weight:var(--fw-medium)}@media(max-width:960px){.drop-grid{grid-template-columns:1fr}.candidate-row{grid-template-columns:24px 1fr 100px 28px}.candidate-row .candidate-summary,.candidate-row .score{display:none}.skill-row{grid-template-columns:100px 1fr 80px 28px}.detail-row,.details-head{grid-template-columns:1fr}}.workspace-page{min-height:100vh}.auth-page{display:grid;min-height:100vh;place-items:center;padding:var(--space-6)}.auth-card{width:min(480px,100%);padding:var(--space-8);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-md)}.auth-card h1{font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:var(--tr-h1);font-weight:var(--fw-semibold);margin:var(--space-2) 0 var(--space-3)}.auth-card p{color:var(--fg-2);font-size:var(--fs-body);line-height:var(--lh-body);margin:0 0 var(--space-4)}.auth-mark{display:inline-grid;width:36px;height:36px;place-items:center;border-radius:var(--radius-md);background:var(--ink-900);color:var(--paper-100);font-family:var(--font-mono);font-size:13px;font-weight:var(--fw-medium);margin-bottom:var(--space-5)}.auth-form{display:grid;gap:var(--space-3);margin-top:var(--space-5)}.auth-field{display:grid;gap:var(--space-1-5);font-size:var(--fs-body-sm);color:var(--fg-2)}.auth-field input{height:40px;padding:0 var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--fg-1);font-size:var(--fs-body)}.auth-field input:focus-visible{outline:none;border-color:var(--ink-900);box-shadow:0 0 0 3px #e5f46d73}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:40px;padding:0 var(--space-5);border-radius:var(--radius-md);border:1px solid oklch(0 0 0 / .06);background:var(--lime-500);color:var(--ink-900);font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1;transition:background var(--dur-micro) var(--ease-out)}.primary-button:hover{background:var(--lime-600)}.primary-button:active{background:var(--lime-700);color:var(--paper-100)}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--surface-raised);color:var(--fg-1);font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1;text-align:left;transition:border-color var(--dur-micro) var(--ease-out),background var(--dur-micro) var(--ease-out)}.secondary-button:hover{border-color:var(--border-strong);background:var(--paper-50)}.secondary-button small{color:var(--fg-3);font-size:var(--fs-caption);font-weight:var(--fw-regular)}.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:36px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid oklch(.55 .16 25 / .18);background:var(--surface-raised);color:var(--danger-700);font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1}.danger-button:hover{background:var(--danger-50)}.session-button,.menu-button{display:inline-flex;align-items:center;gap:var(--space-2);height:32px;padding:0 var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--fg-1);font-size:var(--fs-body-sm);font-weight:var(--fw-medium)}.session-button{color:var(--danger-700);border-color:#bd413f2e}.session-button:hover{background:var(--danger-50)}.menu-button:hover{border-color:var(--border-strong);background:var(--paper-50)}.menu-popover{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;display:grid;gap:2px;padding:var(--space-2);border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-md);z-index:6}.menu-popover button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;text-align:left;font-size:var(--fs-body-sm);font-weight:var(--fw-medium)}.menu-popover button:hover,.menu-popover button:focus-visible{background:var(--paper-50);outline:none}.menu-popover button.danger{color:var(--danger-700)}.menu-popover button.danger:hover{background:var(--danger-50)}.menu-popover button small{color:var(--fg-3);font-size:var(--fs-caption);font-weight:var(--fw-regular)}.menu-popover ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}.menu-popover li button.active{background:var(--lime-50);color:var(--ink-900)}.menu-section-label{padding:var(--space-2) var(--space-3) var(--space-1);color:var(--fg-3);font-size:10px;font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase}.drop-panel,.skills-panel,.notice-card{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm);padding:var(--space-5) var(--space-6)}.drop-panel{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:var(--space-6);align-items:start}.drop-panel.compact{grid-template-columns:minmax(0,280px) minmax(0,1fr)}.drop-panel.done{background:var(--surface-raised)}.drop-panel>div>p:not(.panel-number){color:var(--fg-3);font-size:var(--fs-body-sm);margin-top:var(--space-2)}.flow-header{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm);padding:var(--space-6)}.flow-header h1{margin:var(--space-2) 0 var(--space-2)}.flow-header>div>p:not(.eyebrow){color:var(--fg-2);font-size:var(--fs-body);line-height:var(--lh-body)}.panel-number{display:inline-grid;width:24px;height:24px;margin:0 0 var(--space-3);place-items:center;border-radius:var(--radius-full);background:var(--ink-900);color:var(--paper-100);font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium);font-feature-settings:"tnum"}.drop-panel.done .panel-number{background:var(--lime-500);color:var(--ink-900)}.panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-4)}.ratio{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-raised)}.ratio label{display:inline-flex;align-items:center;gap:var(--space-2);padding:0 var(--space-2);font-size:var(--fs-caption);color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase}.ratio input{width:56px;height:28px;padding:0 var(--space-2);border:0;border-radius:var(--radius-sm);background:var(--paper-100);text-align:center;font-family:var(--font-mono);font-size:var(--fs-mono);font-weight:var(--fw-medium);color:var(--fg-1)}.ratio input:focus-visible{outline:none;background:var(--surface-raised);box-shadow:0 0 0 2px #e5f46d8c}.skill-row .skill-label{display:grid;gap:var(--space-1);min-width:0}.skill-row .skill-label .skill-input{text-align:left;width:100%;min-height:36px;resize:vertical;overflow-wrap:anywhere}.skill-row .skill-label small{grid-column:auto;grid-row:auto;padding:0}.notice-card{display:grid;gap:var(--space-3)}.progress-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--paper-50)}.progress-row strong{font-weight:var(--fw-medium);font-family:var(--font-mono);font-feature-settings:"tnum"}progress{width:min(220px,60%);height:6px;appearance:none;-webkit-appearance:none;border:0;border-radius:var(--radius-full);overflow:hidden;background:var(--ink-100)}progress::-webkit-progress-bar{background:var(--ink-100);border-radius:var(--radius-full)}progress::-webkit-progress-value{background:linear-gradient(90deg,var(--lime-500),var(--lime-300));border-radius:var(--radius-full)}progress::-moz-progress-bar{background:linear-gradient(90deg,var(--lime-500),var(--lime-300));border-radius:var(--radius-full)}.empty-line{margin:0;color:var(--fg-3);font-size:var(--fs-body-sm)}.inline-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.brand>span:first-child:not(.brand-mark){display:inline-grid;width:24px;height:24px;place-items:center;border-radius:var(--radius-md);background:var(--ink-900);color:var(--paper-100);font-family:var(--font-mono);font-size:11px;font-weight:var(--fw-medium)}.brand strong{font-weight:var(--fw-semibold)}@media(max-width:1180px){.canvas{width:calc(100% - 28px)}.topbar{padding:0 var(--space-4)}.drop-panel,.drop-panel.compact{grid-template-columns:1fr}}@media(max-width:760px){.topbar{height:auto;padding:var(--space-3) var(--space-4);flex-wrap:wrap}.topbar>p{display:none}.topbar-actions{flex-wrap:wrap}.canvas{width:calc(100% - 20px);padding:var(--space-5) 0 var(--space-10)}.ratio{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1);padding:var(--space-1)}.ratio label{padding:0}.ratio input{width:100%}.skill-row{grid-template-columns:1fr}.primary-button,.secondary-button,.danger-button{width:100%}.menu-popover{right:-8px;min-width:220px}}
