:root{--ink: #15181C;--graphite: #2A2F36;--slate: #566069;--muted: #79828B;--paper: #F1F4F5;--surface: #FFFFFF;--subtle: #F7F9FA;--inset: #EDF0F1;--hover: #EAEEEF;--line: #DCE1E4;--line-2: #C5CCD0;--strong: #157A55;--strong-b: rgba(21,122,85,.2);--strong-t: rgba(21,122,85,.09);--moderate: #B0832C;--moderate-b: rgba(176,131,44,.22);--moderate-t: rgba(176,131,44,.09);--weak: #C76E2C;--weak-b: rgba(199,110,44,.2);--weak-t: rgba(199,110,44,.08);--dismiss: #B23A33;--dismiss-b: rgba(178,58,51,.18);--dismiss-t: rgba(178,58,51,.08);--ff: "Hanken Grotesk", system-ui, -apple-system, sans-serif;--ff-mono: "DM Mono", ui-monospace, "SF Mono", Menlo, monospace;--ease: cubic-bezier(.22, 1, .36, 1);--duration-fast: .15s;--duration-normal: .25s;--primary: var(--ink);--primary-light: var(--graphite);--primary-gradient: var(--ink);--accent: var(--ink);--accent-ring: rgba(21,24,28,.12);--success: var(--strong);--danger: var(--dismiss);--warning: var(--moderate);--bg-page: var(--paper);--bg-card: var(--surface);--bg-subtle: var(--subtle);--bg-muted: var(--inset);--bg-hover: var(--hover);--bg-selected: rgba(21,24,28,.05);--text-primary: var(--ink);--text-secondary: var(--slate);--text-muted: var(--muted);--border: var(--line);--border-dark: var(--line-2);--score-high: var(--strong);--score-high-bg: var(--strong-t);--score-high-border: var(--strong-b);--score-medium: var(--moderate);--score-medium-bg: var(--moderate-t);--score-medium-border: var(--moderate-b);--score-low: var(--dismiss);--score-low-bg: var(--dismiss-t);--score-low-border: var(--dismiss-b);--font-sans: var(--ff);--font-mono: var(--ff-mono);--radius-card: 6px;--radius-input: 4px;--radius-btn: 3px;--radius-pill: 3px;--radius-compact: 2px;--radius-modal: 8px;--shadow-sm: 0 1px 2px rgba(21,24,28,.05);--shadow-md: 0 2px 10px -5px rgba(21,24,28,.14);--shadow-lg: 0 16px 40px -22px rgba(21,24,28,.32);--shadow-xl: 0 26px 64px -30px rgba(21,24,28,.42)}[data-band=strong]{color:var(--strong)}[data-band=moderate]{color:var(--moderate)}[data-band=weak]{color:var(--weak)}[data-band=dismiss]{color:var(--dismiss)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg-page);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}@keyframes gradientSlide{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes contentReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}::selection{background:#15181c24}.skeleton{background:linear-gradient(90deg,var(--bg-subtle) 25%,var(--bg-hover) 50%,var(--bg-subtle) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-compact)}.app{max-width:1600px;margin:0 auto;padding:32px 40px;animation:contentReveal .4s cubic-bezier(.25,1,.5,1) both}.app-header{display:flex;flex-direction:column;gap:16px;padding:20px 28px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);margin-bottom:24px;box-shadow:var(--shadow-md);position:sticky;top:16px;z-index:100}.header-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.app-header h1{font-size:20px;font-weight:700;letter-spacing:-.3px;color:var(--text-primary);display:flex;align-items:center;gap:10px;flex-shrink:0}.app-header h1:before{content:"";display:block;width:6px;height:22px;background:var(--primary-gradient);border-radius:3px;flex-shrink:0}.bucket-info{display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:12px;font-family:var(--font-mono);color:var(--text-secondary)}.bucket-label{font-family:var(--font-sans);font-weight:600;text-transform:uppercase;font-size:10px;letter-spacing:.5px;color:var(--text-muted)}.bucket-value{color:var(--text-primary);font-weight:500}.bucket-pipeline{padding:2px 8px;background:var(--accent-ring);border-radius:var(--radius-compact);color:var(--accent);font-size:11px;font-weight:600}.bucket-count{padding:2px 8px;background:var(--score-high-bg);border-radius:var(--radius-compact);color:var(--score-high);font-size:11px;font-weight:600}.job-loader{display:flex;align-items:center;gap:8px}.job-loader input[type=text]{width:220px}.job-loader .pipeline-field{width:120px}.show-all-toggle{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-secondary);white-space:nowrap;cursor:pointer;margin-left:auto}.history-wrapper{position:relative}.history-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:320px;max-height:300px;overflow-y:auto;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-input);box-shadow:var(--shadow-lg);z-index:200}.btn-history{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-card);color:var(--text-primary);border:1.5px solid var(--border);border-radius:var(--radius-pill);font-size:13px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.btn-history:hover{border-color:var(--border-dark);box-shadow:var(--shadow-sm)}.btn-history:disabled{opacity:.5;cursor:not-allowed}.btn-history svg{flex-shrink:0;color:var(--text-muted)}.history-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:var(--primary);color:#fff;border-radius:11px;font-size:11px;font-weight:700;line-height:1}.history-item{display:block;width:100%;padding:10px 14px;text-align:left;font-size:13px;font-family:var(--font-mono);color:var(--text-primary);background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;transition:background var(--duration-fast) var(--ease)}.history-item:last-child{border-bottom:none}.history-item:hover{background:var(--bg-hover)}.history-item{display:flex;justify-content:space-between;align-items:center;gap:12px}.history-count{font-size:11px;font-family:var(--font-sans);color:var(--score-high);background:var(--score-high-bg);padding:2px 8px;border-radius:var(--radius-compact);font-weight:600;white-space:nowrap}.history-empty{color:var(--text-muted);font-family:var(--font-sans);cursor:default}.history-empty:hover{background:none}.user-info{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.user-email{font-size:12px;color:var(--text-muted)}.btn-sign-out{background:none;border:1px solid var(--border);border-radius:var(--radius-compact);padding:4px 12px;font-size:11px;color:var(--text-secondary);cursor:pointer;transition:border-color var(--duration-fast) var(--ease)}.btn-sign-out:hover{border-color:var(--border-dark)}label{font-size:12px;font-weight:600;letter-spacing:.1px;color:var(--text-secondary)}input[type=text],select,textarea{background:var(--bg-card);color:var(--text-primary);border:1.5px solid var(--border);padding:10px 14px;border-radius:var(--radius-input);font-size:13px;font-family:var(--font-mono);transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}input[type=text]:hover,select:hover{border-color:var(--border-dark)}input[type=text]:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}input[type=text]::placeholder,textarea::placeholder{color:var(--text-muted);font-family:var(--font-sans)}input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary)}.manual-job-input,.pipeline-input,.job-selector{display:flex;align-items:center;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;border:none;border-radius:var(--radius-btn);font-size:14px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all .25s cubic-bezier(.25,1,.5,1);white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--ink);color:#fff;border:1px solid var(--ink);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:#000;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0) scale(.98);box-shadow:var(--shadow-sm);transition-duration:50ms}.btn-secondary{background:transparent;color:#374151;border:1.5px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-dark);transform:translateY(-1px)}.btn-secondary:active:not(:disabled){transform:translateY(0) scale(.97);transition-duration:50ms}.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line-2)}.btn-ghost:hover:not(:disabled){background:var(--hover);border-color:var(--ink);color:var(--ink);transform:translateY(-1px)}.btn-ghost:active:not(:disabled){transform:translateY(0) scale(.98);background:var(--inset);transition-duration:50ms}.btn-small{padding:6px 14px;font-size:13px}.dashboard-container{display:flex;flex-direction:column;gap:24px}.score-distribution{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);padding:28px 32px;box-shadow:var(--shadow-md);animation:contentReveal .5s cubic-bezier(.25,1,.5,1) .1s both}.score-distribution h3{font-size:14px;font-weight:600;letter-spacing:.1px;color:var(--text-secondary);margin-bottom:16px}.distribution-table{width:100%;border-collapse:collapse}.distribution-table th,.distribution-table td{padding:12px 16px;text-align:center;font-size:13px;font-variant-numeric:tabular-nums}.distribution-table th{background:var(--bg-subtle);color:var(--text-secondary);font-weight:600;font-size:13px;letter-spacing:.3px;text-transform:uppercase;border-bottom:1px solid var(--border)}.distribution-table th:first-child,.distribution-table td:first-child{text-align:left}.distribution-table td{border-bottom:1px solid var(--border);color:var(--text-secondary)}.distribution-table tbody tr:last-child td{border-bottom:none}.distribution-table tbody tr:hover{background:var(--bg-hover)}.distribution-table td.stage-name{font-weight:700;font-size:13px;color:var(--text-primary);font-family:var(--font-mono)}.distribution-table .bucket.low{color:var(--score-low);font-weight:600}.distribution-table .bucket.medium-low,.distribution-table .bucket.medium-high{color:var(--score-medium);font-weight:600}.distribution-table .bucket.high{color:var(--score-high);font-weight:600}.dashboard-table-container{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-md);animation:contentReveal .4s cubic-bezier(.25,1,.5,1) both}.dashboard-toolbar{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;border-bottom:1px solid var(--border);background:var(--bg-subtle)}.selection-controls{display:flex;align-items:center;gap:12px}.selection-count{font-size:13px;font-weight:500;color:var(--text-muted);min-width:130px;font-variant-numeric:tabular-nums}.action-buttons{display:flex;gap:8px}.dashboard-table{width:100%;border-collapse:collapse}.dashboard-table th{padding:12px 16px;text-align:left;background:var(--bg-subtle);color:var(--text-secondary);font-weight:600;font-size:13px;letter-spacing:.3px;text-transform:uppercase;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}.dashboard-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.dashboard-table tbody tr{transition:background var(--duration-fast) var(--ease),opacity var(--duration-normal) var(--ease)}.dashboard-table tbody tr:hover{background:var(--bg-hover)}.dashboard-table tbody tr:last-child td{border-bottom:none}.dashboard-table:has(tbody tr:hover) tbody tr:not(:hover):not(.row-selected){opacity:.55}.checkbox-col{width:44px;text-align:center}.checkbox-col input[type=checkbox]{accent-color:var(--primary)}.rank-cell{font-weight:600;font-size:14px;color:var(--text-muted);font-family:var(--font-mono)}.patent-info{display:flex;flex-direction:column;gap:2px}.patent-number{font-weight:600;font-size:13px;color:var(--text-primary);font-family:var(--font-mono)}.claim-number{font-size:11px;color:var(--text-muted)}.system-claim-badge{display:inline-block;margin-top:2px;font-size:9px;font-weight:700;letter-spacing:.5px;padding:1px 6px;border-radius:var(--radius-pill);background:#b4781429;color:#b47814;border:1px solid rgba(180,120,20,.35);cursor:help}.product-info{display:flex;flex-direction:column;gap:6px}.product-name{font-weight:500;font-size:13px;color:var(--text-primary)}.document-sources{display:flex;gap:4px;flex-wrap:wrap}.source-tag{font-size:10px;font-weight:500;padding:2px 8px;border-radius:var(--radius-pill);background:var(--bg-muted);color:var(--text-muted);border:1px solid var(--border)}.enrichment-cell{display:flex;align-items:center;gap:8px}.enrichment-count{font-weight:500;font-size:12px;color:var(--text-muted);font-family:var(--font-mono)}.enrichment-indicators{display:flex;gap:5px}.enrichment-dot{width:9px;height:9px;border-radius:50%;background:var(--border);transition:all var(--duration-fast) var(--ease)}.enrichment-dot.active{background:var(--success);box-shadow:0 0 0 2px #05966926}.score-cell{text-align:center;vertical-align:middle}.score-cell .score-pill,.score-pill{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:5px 12px;border-radius:var(--radius-compact);font-weight:700;font-size:13px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:center;border-width:1px;border-style:solid;transition:transform var(--duration-fast) var(--ease)}.score-cell .score-pill:hover{transform:scale(1.08)}.grade-cell{text-align:center;vertical-align:middle}.grade-badge{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:4px 10px;border-radius:var(--radius-compact);font-weight:700;font-size:13px;font-family:var(--font-sans);letter-spacing:.3px}.grade-a{background:var(--score-high-bg);color:var(--score-high);border:1px solid var(--score-high-border)}.grade-b{background:var(--strong-t);color:var(--strong);border:1px solid var(--strong-b)}.grade-c{background:var(--moderate-t);color:var(--moderate);border:1px solid var(--moderate-b)}.grade-d{background:var(--score-medium-bg);color:var(--score-medium);border:1px solid var(--score-medium-border)}.grade-f{background:var(--score-low-bg);color:var(--score-low);border:1px solid var(--score-low-border)}.grade-null{background:var(--bg-muted);color:var(--text-muted);border:1px solid var(--border)}.grade-dist-card{flex:1 1 120px;padding:20px 24px;background:var(--bg-card);border-radius:var(--radius-card);border:1px solid var(--border);text-align:center;box-shadow:var(--shadow-sm);transition:all .3s cubic-bezier(.25,1,.5,1)}.grade-dist-card:hover{transform:translateY(-2px);border-color:var(--line-2);box-shadow:var(--shadow-lg)}.score-high{color:var(--score-high)}.score-medium{color:var(--score-medium)}.score-low{color:var(--score-low)}.score-null{color:var(--text-muted)}.rec-cell{text-align:center}.rec-cell span{display:inline-block;padding:4px 12px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.rec-strong{color:var(--score-high);background:var(--score-high-bg);border:1px solid var(--score-high-border)}.rec-moderate{color:var(--score-medium);background:var(--score-medium-bg);border:1px solid var(--score-medium-border)}.rec-weak{color:var(--weak);background:var(--weak-t);border:1px solid var(--weak-b)}.rec-dismiss{color:var(--text-muted);background:var(--bg-muted);border:1px solid var(--border)}.actions-cell{display:flex;gap:8px;align-items:center}.row-selected{background:var(--bg-selected)!important;box-shadow:inset 3px 0 0 var(--accent)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:1000;padding:32px;animation:fadeIn .2s var(--ease)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-modal);max-width:1200px;max-height:88vh;width:100%;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);animation:slideUp .2s var(--ease)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;border-bottom:1px solid var(--border)}.modal-header h2{font-size:16px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px}.modal-close{background:transparent;border:1px solid var(--border);color:var(--text-muted);font-size:16px;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-compact);transition:all var(--duration-fast) var(--ease);line-height:1}.modal-close:hover{color:var(--text-primary);border-color:var(--border-dark);background:var(--bg-subtle)}.modal-body{padding:28px;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 28px;border-top:1px solid var(--border);background:var(--bg-subtle)}.claim-chart-header{margin-bottom:24px}.claim-chart-header h3{font-size:14px;font-weight:600;color:var(--primary);margin-bottom:12px}.claim-text{font-size:13px;color:var(--text-secondary);padding:16px 20px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-input);line-height:1.7;border-left:3px solid var(--primary)}.claim-chart-table{width:100%;border-collapse:collapse;margin-top:24px}.claim-chart-table th,.claim-chart-table td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.claim-chart-table th{background:var(--bg-subtle);color:var(--text-secondary);font-weight:600;font-size:13px;letter-spacing:.3px;text-transform:uppercase}.claim-chart-table th:first-child{width:30%}.claim-chart-table th:nth-child(2){width:72px;text-align:center}.claim-chart-table tbody tr:last-child td{border-bottom:none}.claim-chart-table tbody tr:hover{background:var(--bg-hover)}.element-text{font-size:13px;color:var(--text-primary);line-height:1.65}.element-id{font-size:10px;font-weight:600;font-family:var(--font-mono);color:var(--text-muted);margin-top:8px;text-transform:uppercase}.score-badge{display:inline-flex;align-items:center;justify-content:center;width:44px;height:36px;border-radius:var(--radius-btn);font-weight:600;font-size:14px;font-family:var(--font-mono)}.score-badge.high{background:var(--score-high-bg);color:var(--score-high);border:1px solid var(--score-high-border)}.score-badge.medium{background:var(--score-medium-bg);color:var(--score-medium);border:1px solid var(--score-medium-border)}.score-badge.low{background:var(--score-low-bg);color:var(--score-low);border:1px solid var(--score-low-border)}.analysis-section{margin-bottom:16px}.analysis-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted);margin-bottom:6px}.analysis-text{font-size:13px;color:var(--text-secondary);line-height:1.65}.analysis-section.role-defense,.analysis-section.role-plaintiff,.analysis-section.role-judgment{padding:11px 14px;border-radius:3px}.analysis-section.role-defense{border-left:3px solid var(--dismiss, #B23A33);background:#b23a330f}.analysis-section.role-plaintiff{border-left:3px solid var(--strong, #157A55);background:#157a5512}.analysis-section.role-judgment{border-left:3px solid var(--ink, #15181C);background:#15181c0a}.evidence-list{list-style:none;margin-top:8px;display:flex;flex-direction:column;gap:6px}.evidence-item{padding:12px 16px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-btn);font-size:12px;transition:border-color var(--duration-fast) var(--ease)}.evidence-item:hover{border-color:var(--accent)}.evidence-source{color:var(--primary);font-weight:600;margin-bottom:4px;display:flex;align-items:center;gap:8px}.evidence-quote{color:var(--text-muted);font-style:italic;line-height:1.5}.evidence-strength{display:inline-block;font-size:9px;font-weight:600;padding:2px 8px;border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.3px}.evidence-strength.high{background:var(--score-high-bg);color:var(--score-high);border:1px solid var(--score-high-border)}.evidence-strength.medium{background:var(--score-medium-bg);color:var(--score-medium);border:1px solid var(--score-medium-border)}.evidence-strength.low{background:var(--score-low-bg);color:var(--score-low);border:1px solid var(--score-low-border)}.gap-fill{font-size:13px;color:var(--text-secondary);line-height:1.65;padding:14px 16px;background:var(--subtle);border:1px solid var(--line);border-left:3px solid var(--line-2);border-radius:var(--radius-btn)}.export-actions{display:flex;gap:8px;margin-top:24px;padding-top:24px;border-top:1px solid var(--border)}.s2s3-modal{max-width:720px}.selected-candidates-section{margin-bottom:24px}.selected-candidates-section h3,.guidance-section h3,.progress-section h3{font-size:14px;font-weight:600;letter-spacing:.1px;color:var(--text-secondary);margin-bottom:12px}.candidates-list{max-height:200px;overflow-y:auto;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-input);padding:4px}.candidate-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-compact);transition:background var(--duration-fast) var(--ease)}.candidate-item:hover{background:var(--bg-hover)}.candidate-item .patent{font-weight:600;color:var(--text-primary);min-width:140px;font-size:13px;font-family:var(--font-mono)}.candidate-item .claim{color:var(--text-muted);font-size:12px;min-width:80px}.candidate-item .product{flex:1;color:var(--text-secondary);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-item .score{font-weight:600;font-size:11px;font-family:var(--font-mono);padding:3px 10px;border-radius:var(--radius-pill)}.candidate-item .score.high{background:var(--score-high-bg);color:var(--score-high);border:1px solid var(--score-high-border)}.candidate-item .score.medium{background:var(--score-medium-bg);color:var(--score-medium);border:1px solid var(--score-medium-border)}.candidate-item .score.low{background:var(--score-low-bg);color:var(--score-low);border:1px solid var(--score-low-border)}.more-candidates{padding:10px 14px;color:var(--text-muted);font-size:12px;text-align:center}.guidance-section{margin-bottom:24px}.guidance-hint{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.guidance-examples{font-size:12px;color:var(--text-muted);margin-bottom:12px;padding-left:20px}.guidance-examples li{margin-bottom:4px;font-style:italic}.guidance-input{width:100%;background:var(--bg-card);color:var(--text-primary);border:1.5px solid var(--border);border-radius:var(--radius-input);padding:12px 14px;font-size:13px;font-family:var(--font-sans);resize:vertical;min-height:100px;line-height:1.5}.guidance-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.char-count{text-align:right;font-size:11px;color:var(--text-muted);margin-top:4px}.progress-section{margin-bottom:24px}.progress-bar-container{height:6px;background:var(--bg-muted);border-radius:var(--radius-pill);overflow:hidden;margin-bottom:10px}.progress-bar{height:100%;background:var(--accent);border-radius:var(--radius-pill);transition:width .4s var(--ease)}.progress-info{display:flex;justify-content:space-between;font-size:12px}.progress-percent{font-weight:600;color:var(--accent);font-family:var(--font-mono)}.progress-message{color:var(--text-muted)}.completion-message{margin-top:12px;padding:12px 16px;border-radius:var(--radius-btn);font-size:13px;font-weight:500}.completion-message.success{background:var(--score-high-bg);color:var(--score-high);border:1px solid var(--score-high-border)}.completion-message.error{background:var(--score-low-bg);color:var(--score-low);border:1px solid var(--score-low-border)}.running-indicator{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:13px}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;color:var(--text-muted)}.loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.loading-spinner.small{width:18px;height:18px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.error{text-align:center;padding:64px 24px}.error h3{color:var(--danger);margin-bottom:8px;font-size:15px;font-weight:700}.error p{color:var(--text-secondary);font-size:13px}.empty-state{text-align:center;padding:80px 24px;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}.empty-state h3{margin-bottom:8px;color:var(--text-primary);font-size:16px;font-weight:700}.empty-state p{font-size:13px}.job-running-indicator{font-size:12px;font-weight:600;color:var(--warning);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c5cad3;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;pointer-events:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid var(--bg-card);box-shadow:var(--shadow-sm);cursor:pointer;pointer-events:auto;position:relative;z-index:3}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid var(--bg-card);box-shadow:var(--shadow-sm);cursor:pointer;pointer-events:auto}[style*="cursor: pointer"][style*="border-radius: 14px"]:hover,[style*="cursor: pointer"][style*="border-radius: 6px"]:hover{border-color:var(--ink)!important;box-shadow:var(--shadow-lg)!important;transform:translateY(-3px)}[style*="cursor: pointer"][style*="border-radius: 14px"]:active{transform:translateY(-1px);box-shadow:0 2px 4px #0000000a,0 4px 12px #0000000f!important}@media (max-width: 1200px){.header-controls{flex-wrap:wrap}.dashboard-table{display:block;overflow-x:auto}}@media (max-width: 768px){.app{padding:16px}.app-header{position:static;flex-direction:column;gap:12px}.header-controls{flex-direction:column;width:100%}}
