:root,[data-theme=dark]{--bg-primary:#16100f;--bg-secondary:#1f1513;--bg-card:#281a18;--bg-card-hover:#321f1d;--bg-input:#1a110f;--border:#4a2c28;--border-light:#5e3732;--text-primary:#f2e8e4;--text-secondary:#c9b0a8;--text-muted:#8a6b64;--accent:#8c1515;--accent-hover:#c0392b;--accent-glow:#8c15152e;--green:#27ae60;--green-bg:#27ae601f;--orange:#e67e22;--orange-bg:#e67e221f;--red:#e74c3c;--red-bg:#e74c3c1f;--blue:#006cb8;--blue-bg:#006cb81f;--cyan:#6fc3ff;--gold:#d4aa3a;--silver:#a0aec0;--bronze:#c27c2a;--palo-alto:#175e54}[data-theme=light]{--bg-primary:#f4f4f1;--bg-secondary:#e8e3dc;--bg-card:#fff;--bg-card-hover:#f0eae4;--bg-input:#ede7e0;--border:#c9c0b5;--border-light:#b8ada0;--text-primary:#2e2d29;--text-secondary:#4d4f53;--text-muted:#7a766e;--accent:#8c1515;--accent-hover:#6b1010;--accent-glow:#8c151514;--green:#175e54;--green-bg:#175e541a;--orange:#b26f16;--orange-bg:#b26f161a;--red:#8c1515;--red-bg:#8c15151a;--blue:#006cb8;--blue-bg:#006cb81a;--cyan:#005f8a;--gold:#b26f16;--silver:#64748b;--bronze:#8a5c1a;--palo-alto:#175e54}.skip-link{background:#8c1515;background:var(--accent);border-radius:0 0 6px 6px;color:#fff;font-size:14px;font-weight:600;left:8px;padding:8px 16px;position:absolute;text-decoration:none;top:-100%;transition:top .1s;z-index:9999}.skip-link:focus{top:0}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#16100f;background:var(--bg-primary);color:#f2e8e4;color:var(--text-primary);font-family:Source Sans\ 3,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.6}:focus{outline:none}:focus-visible{border-radius:3px;outline:2px solid #8c1515;outline:2px solid var(--accent);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:#8c1515!important;border-color:var(--accent)!important;box-shadow:0 0 0 3px #8c151526;outline:none}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#1f1513;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#4a2c28;background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#8a6b64;background:var(--text-muted)}.app-shell{margin:0 auto;max-width:1400px;padding:0 32px}.app-content,main.app-content{flex:1 1;min-height:0}.app-header{grid-gap:12px;border-bottom:2px solid #8c1515;border-bottom:2px solid var(--accent);display:grid;grid-template-columns:1fr auto 1fr;margin-bottom:16px;padding:14px 0}.app-header,.app-logo{align-items:center;gap:12px}.app-logo{display:flex;flex-shrink:0}.header-nav{justify-content:center}.header-controls,.header-nav{align-items:center;display:flex}.header-controls{gap:10px;justify-content:flex-end}.app-logo-icon{align-items:center;background:#8c1515;background:var(--accent);border-radius:8px;box-shadow:0 2px 8px #8c151559;color:#fff;display:flex;font-size:20px;font-weight:800;height:40px;justify-content:center;width:40px}.app-logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f2e8e4,#c0392b);background:linear-gradient(135deg,var(--text-primary),var(--accent-hover));-webkit-background-clip:text;font-family:"Source Serif 4",Georgia,serif;font-size:22px;font-weight:700;letter-spacing:-.3px}.app-logo span{color:#8a6b64;color:var(--text-muted);font-size:13px;font-weight:400}.tab-bar{background:#1f1513;background:var(--bg-secondary);border-radius:10px;display:flex;gap:4px;padding:4px;width:fit-content}.tab-btn{background:#0000;border:none;border-radius:7px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:all .2s}.tab-btn:hover{background:#281a18;background:var(--bg-card);color:#f2e8e4;color:var(--text-primary)}.tab-btn.active{background:#8c1515;background:var(--accent);box-shadow:0 2px 8px #8c151559;color:#fff}.stats-strip{display:flex;gap:8px;margin-bottom:12px}.stat-pill{align-items:center;background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:8px;display:flex;font-size:14px;gap:6px;padding:6px 14px}.stat-pill-value{font-size:16px;font-weight:700}.stat-pill-label{color:#8a6b64;color:var(--text-muted);font-size:13px;letter-spacing:.5px;text-transform:uppercase}.stat-pill.total .stat-pill-value{color:#c0392b;color:var(--accent-hover)}.stat-pill.received .stat-pill-value{color:#006cb8;color:var(--blue)}.stat-pill.processing .stat-pill-value{color:#e67e22;color:var(--orange)}.stat-pill.completed .stat-pill-value{color:#27ae60;color:var(--green)}.stat-pill.failed .stat-pill-value{color:#e74c3c;color:var(--red)}.list-toolbar{gap:12px;justify-content:space-between;margin-bottom:10px}.list-toolbar,.toolbar-left{align-items:center;display:flex}.toolbar-left{gap:10px}.toolbar-right{align-items:center;display:flex;gap:6px}.state-select{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:6px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;font-size:13px;min-height:32px;padding:5px 10px}.state-select:hover{border-color:#8c1515;border-color:var(--accent)}.total-count{background:#1f1513;background:var(--bg-secondary);border-radius:4px;color:#8a6b64;color:var(--text-muted);font-size:13px;font-weight:600;padding:3px 8px}.page-btn{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:5px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;font-size:13px;padding:4px 10px;transition:all .15s}.page-btn:hover:not(:disabled){border-color:#8c1515;border-color:var(--accent);color:#8c1515;color:var(--accent)}.page-btn:disabled{cursor:not-allowed;opacity:.3}.page-info{color:#8a6b64;color:var(--text-muted);font-size:13px;min-width:32px;text-align:center}.request-list-panel,.section-header{margin-bottom:16px}.section-header{align-items:center;display:flex;justify-content:space-between}.section-header h2{color:#f2e8e4;color:var(--text-primary);font-family:"Source Serif 4",Georgia,serif;font-size:18px;font-weight:600}.badge{align-items:center;border-radius:5px;display:inline-flex;font-size:13px;font-weight:700;letter-spacing:.5px;padding:3px 10px;text-transform:uppercase}.badge.received{background:#006cb81f;background:var(--blue-bg);color:#006cb8;color:var(--blue)}.badge.processing{background:#e67e221f;background:var(--orange-bg);color:#e67e22;color:var(--orange)}.badge.completed{background:#27ae601f;background:var(--green-bg);color:#27ae60;color:var(--green)}.badge.failed{background:#e74c3c1f;background:var(--red-bg);color:#e74c3c;color:var(--red)}.badge.paused{background:#64748b26;color:#475569}[data-theme=dark] .badge.paused{color:#94a3b8}.data-table-wrap{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:10px;overflow-x:auto;overflow-y:hidden}.data-table{border-collapse:collapse;font-size:14px;width:100%}.data-table thead th{background:#1f1513;background:var(--bg-secondary);color:#8a6b64;color:var(--text-muted);font-size:12px;font-weight:700;letter-spacing:.8px;padding:8px 12px;text-align:left;text-transform:uppercase}.data-table tbody tr,.data-table thead th{border-bottom:1px solid #4a2c28;border-bottom:1px solid var(--border)}.data-table tbody tr{cursor:pointer;transition:background .15s}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:#321f1d;background:var(--bg-card-hover)}.data-table tbody td{color:#c9b0a8;color:var(--text-secondary);padding:7px 12px}.data-table.compact{font-size:13px}.data-table.compact tbody td,.data-table.compact thead th{padding:6px 10px}.data-table .mono{color:#8a6b64;color:var(--text-muted);font-family:JetBrains Mono,Fira Code,monospace;font-size:13px}.filter-bar{align-items:center;display:flex;gap:10px;margin-bottom:16px}.filter-bar button,.filter-bar select{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:7px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;font-size:14px;padding:8px 16px;transition:all .15s}.filter-bar button:hover,.filter-bar select:hover{border-color:#8c1515;border-color:var(--accent);color:#f2e8e4;color:var(--text-primary)}.pagination{align-items:center;color:#8a6b64;color:var(--text-muted);display:flex;font-size:14px;gap:8px;justify-content:center;padding:16px}.pagination button{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:6px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;padding:6px 14px;transition:all .15s}.pagination button:hover:not(:disabled){border-color:#8c1515;border-color:var(--accent);color:#8c1515;color:var(--accent)}.pagination button:disabled{cursor:not-allowed;opacity:.3}.card{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:24px}.card-glass{background:linear-gradient(135deg,#8c15150d,#006cb808);border:1px solid #8c15151f}.detail-page{display:flex;flex-direction:column;height:calc(100vh - 90px);min-height:0}.detail-bar{align-items:center;border-bottom:1px solid #4a2c28;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:10px;margin-bottom:10px;padding:8px 0}.back-btn{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:6px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;font-size:13px;padding:5px 12px;transition:all .15s}.back-btn:hover{border-color:#8c1515;border-color:var(--accent);color:#8c1515;color:var(--accent)}.detail-toggle-btn{background:#1f1513;background:var(--bg-secondary);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:5px;color:#8a6b64;color:var(--text-muted);cursor:pointer;font-size:13px;margin-left:auto;padding:4px 10px;transition:all .15s}.detail-toggle-btn+.detail-toggle-btn{margin-left:0}.detail-toggle-btn:hover{border-color:#8c1515;border-color:var(--accent);color:#8c1515;color:var(--accent)}.processing-time{background:#1f1513;background:var(--bg-secondary);border-radius:5px;color:#8a6b64;color:var(--text-muted);font-size:13px;padding:3px 8px}.detail-results{display:flex;flex:1 1;flex-direction:column;min-height:0}.detail-panel-tabs{align-items:center;display:flex;flex-shrink:0;gap:4px;margin-bottom:8px}.detail-panel-tab{background:#1f1513;background:var(--bg-secondary);border:none;border-radius:6px;color:#8a6b64;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:600;padding:5px 14px;transition:all .15s}.detail-panel-tab:hover{color:#f2e8e4;color:var(--text-primary)}.detail-panel-tab.active{background:#8c1515;background:var(--accent);box-shadow:0 1px 6px #8c151559;color:#fff}.detail-panel{flex:1 1;min-height:0;overflow-y:auto}.row-expanded{background:#321f1d!important;background:var(--bg-card-hover)!important}.expanded-row td{border-bottom:2px solid #8c1515!important;border-bottom:2px solid var(--accent)!important;padding:0!important}.expanded-detail{background:#1f1513;background:var(--bg-secondary);padding:10px 14px}.rank-dot{align-items:center;border-radius:6px;color:#fff;display:inline-flex;font-size:13px;font-weight:800;height:22px;justify-content:center;width:22px}.rank-dot.gold{background:linear-gradient(135deg,#d4aa3a,#a87c1a)}.rank-dot.silver{background:linear-gradient(135deg,#a0aec0,#718096)}.rank-dot.bronze{background:linear-gradient(135deg,#c27c2a,#8a5c1a)}.rank-dot.default{background:linear-gradient(135deg,#8c1515,#6b1010);background:linear-gradient(135deg,var(--accent),#6b1010)}.timeline-dot-inline{border-radius:50%;display:inline-block;flex-shrink:0;height:8px;width:8px}.timeline-dot-inline.received{background:#006cb8;background:var(--blue)}.timeline-dot-inline.processing{background:#e67e22;background:var(--orange)}.timeline-dot-inline.completed{background:#27ae60;background:var(--green)}.timeline-dot-inline.failed{background:#e74c3c;background:var(--red)}.detail-header{align-items:center;display:flex;gap:16px;margin-bottom:28px}.detail-title{flex:1 1}.detail-title h2{font-family:"Source Serif 4",Georgia,serif;font-size:20px;font-weight:700}.detail-title .request-id{color:#8a6b64;color:var(--text-muted);font-family:monospace;font-size:14px;margin-top:2px}.detail-meta{align-items:center;display:flex;gap:16px}.section{margin-bottom:28px}.section-title{align-items:center;border-bottom:2px solid #8c1515;border-bottom:2px solid var(--accent);color:#f2e8e4;color:var(--text-primary);display:flex;font-family:"Source Serif 4",Georgia,serif;font-size:15px;font-weight:600;gap:8px;margin-bottom:16px;padding-bottom:10px}.section-title .icon{font-size:16px}.section-subtitle{color:#8a6b64;color:var(--text-muted);font-size:13px;margin-bottom:12px}.kv-grid{grid-gap:8px 24px;display:grid;gap:8px 24px;grid-template-columns:1fr 1fr}.kv-row{display:flex;font-size:14px;gap:8px;padding:4px 0}.kv-label{color:#8a6b64;color:var(--text-muted);flex-shrink:0;font-weight:600;min-width:140px}.kv-value{color:#c9b0a8;color:var(--text-secondary)}.award-card{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:12px;margin-bottom:16px;overflow:hidden;transition:all .2s}.award-card:hover{border-color:#8c1515;border-color:var(--accent)}.award-card-header{border-bottom:1px solid #4a2c28;border-bottom:1px solid var(--border);border-left:4px solid #8c1515;border-left:4px solid var(--accent);justify-content:space-between;padding:16px 20px}.award-card-header,.award-rank{align-items:center;display:flex}.award-rank{gap:12px}.rank-badge{align-items:center;border-radius:8px;color:#fff;display:flex;font-size:16px;font-weight:800;height:36px;justify-content:center;width:36px}.rank-badge.gold{background:linear-gradient(135deg,#d4aa3a,#a87c1a)}.rank-badge.silver{background:linear-gradient(135deg,#a0aec0,#718096)}.rank-badge.bronze{background:linear-gradient(135deg,#c27c2a,#8a5c1a)}.rank-badge.default{background:linear-gradient(135deg,#8c1515,#6b1010);background:linear-gradient(135deg,var(--accent),#6b1010)}.award-name{font-size:15px;font-weight:700}.award-number{color:#8a6b64;color:var(--text-muted);font-family:monospace;font-size:13px;margin-top:2px}.total-score{text-align:right}.total-score .score-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#c0392b,#8c1515);background:linear-gradient(135deg,var(--accent-hover),var(--accent));-webkit-background-clip:text;font-size:28px;font-weight:800;letter-spacing:-1px}.total-score .score-label{color:#8a6b64;color:var(--text-muted);font-size:13px;letter-spacing:.5px;text-transform:uppercase}.award-card-body{padding:20px}.score-breakdown{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.score-chip{align-items:center;background:#1f1513;background:var(--bg-secondary);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:7px;display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.score-chip .chip-label{color:#8a6b64;color:var(--text-muted)}.score-chip .chip-value{font-weight:700}.score-chip.positive{background:#27ae601f;background:var(--green-bg);border-color:#175e5459}.score-chip.positive .chip-value{color:#27ae60;color:var(--green)}.score-chip.zero .chip-value{color:#8a6b64;color:var(--text-muted)}.score-bar-wrap{margin-bottom:16px}.score-bar-label{display:flex;font-size:13px;justify-content:space-between;margin-bottom:4px}.score-bar-label span:first-child{color:#8a6b64;color:var(--text-muted)}.score-bar-label span:last-child{color:#c9b0a8;color:var(--text-secondary);font-weight:600}.score-bar{background:#1f1513;background:var(--bg-secondary);border-radius:3px;height:6px;overflow:hidden}.score-bar-fill{border-radius:3px;height:100%;transition:width .5s ease}.explanation-box{background:#1f1513;background:var(--bg-secondary);border:1px solid #4a2c28;border-left:3px solid #8c1515;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:0 8px 8px 0;color:#c9b0a8;color:var(--text-secondary);font-size:14px;line-height:1.6;margin-top:12px;padding:12px 16px}.explanation-box strong{color:#c0392b;color:var(--accent-hover)}.confidence-badge{border-radius:3px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;line-height:14px;padding:1px 5px;text-transform:uppercase;vertical-align:middle}.confidence-badge.high{background:#27ae601f;background:var(--green-bg);border:1px solid #175e544d;color:#27ae60;color:var(--green)}.confidence-badge.medium{background:#e67e221f;background:var(--orange-bg);border:1px solid #e67e224d;color:#e67e22;color:var(--orange)}.confidence-badge.low{background:#8a6b641a;border:1px solid #8a6b6440;color:#8a6b64;color:var(--text-muted)}.match-evidence-header{align-items:center;color:#8a6b64;color:var(--text-muted);display:flex;font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.match-reasons-list{counter-reset:reason-counter;display:flex;flex-direction:column;gap:3px;list-style:none;margin:0;padding:0}.match-reason-item{background:#1f1513;background:var(--bg-secondary);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:4px;color:#c9b0a8;color:var(--text-secondary);counter-increment:reason-counter;font-size:13px;line-height:1.45;padding:4px 8px 4px 26px;position:relative}.match-reason-item:before{background:#4a2c28;background:var(--border);border-radius:50%;color:#8a6b64;color:var(--text-muted);content:counter(reason-counter);font-size:11px;font-weight:700;height:14px;left:6px;line-height:14px;position:absolute;text-align:center;top:5px;width:14px}.matched-fields-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.field-tag{background:#8c15152e;background:var(--accent-glow);border:1px solid #8c151533;border-radius:4px;color:#c0392b;color:var(--accent-hover);font-size:13px;padding:2px 8px}.ranking-detail-table{border-collapse:collapse;font-size:14px;margin-top:12px;width:100%}.ranking-detail-table th{color:#8a6b64;color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:.5px;text-align:left;text-transform:uppercase}.ranking-detail-table td,.ranking-detail-table th{border-bottom:1px solid #4a2c28;border-bottom:1px solid var(--border);padding:8px 12px}.ranking-detail-table td{color:#c9b0a8;color:var(--text-secondary)}.ranking-detail-table tr:last-child td{border-bottom:none}.json-viewer{background:#1a110f;background:var(--bg-input);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:8px;font-family:JetBrains Mono,Fira Code,monospace;line-height:1.7;max-height:500px;overflow-x:auto;overflow-y:auto;padding:16px;white-space:pre-wrap;word-break:break-word}.json-toggle-btn,.json-viewer{color:#c9b0a8;color:var(--text-secondary);font-size:13px}.json-toggle-btn{align-items:center;background:#1f1513;background:var(--bg-secondary);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:6px;cursor:pointer;display:inline-flex;gap:6px;padding:6px 14px;transition:all .15s}.json-toggle-btn:hover{border-color:#8c1515;border-color:var(--accent);color:#8c1515;color:var(--accent)}.submit-editor{background:#1a110f;background:var(--bg-input);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:10px;color:#c9b0a8;color:var(--text-secondary);font-family:JetBrains Mono,Fira Code,monospace;font-size:13px;line-height:1.7;padding:16px;resize:vertical;transition:border-color .15s;width:100%}.submit-editor:focus{border-color:#8c1515;border-color:var(--accent)}.submit-btn{background:#8c1515;background:var(--accent);border:none;border-radius:8px;box-shadow:0 2px 10px #8c151559;color:#fff;cursor:pointer;font-size:14px;font-weight:700;letter-spacing:.3px;padding:10px 28px;transition:all .2s}.submit-btn:hover{background:#c0392b;background:var(--accent-hover);box-shadow:0 4px 16px #8c151573;transform:translateY(-1px)}.submit-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.submit-result{background:#27ae601f;background:var(--green-bg);border:1px solid #175e5440;border-radius:8px;color:#27ae60;color:var(--green);font-size:14px;margin-top:12px;padding:14px 18px}.submit-error{font-size:14px;margin-top:12px}.error-box,.submit-error{background:#e74c3c1f;background:var(--red-bg);border:1px solid #8c151540;border-radius:8px;color:#e74c3c;color:var(--red);padding:14px 18px}.error-box{margin-bottom:16px}.warning-box{background:#e67e221f;background:var(--orange-bg);border:1px solid #e67e2233;border-radius:10px;color:#e67e22;color:var(--orange);font-size:14px;padding:14px 18px}.processing-indicator{align-items:center;color:#8a6b64;color:var(--text-muted);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:48px}.spinner{animation:spin .8s linear infinite;border:3px solid #4a2c28;border-top-color:#8c1515;border:3px solid var(--border);border-radius:50%;border-top-color:var(--accent);height:36px;width:36px}@keyframes spin{to{transform:rotate(1turn)}}.state-timeline{display:flex;flex-direction:column;gap:0;position:relative}.state-timeline:before{background:#4a2c28;background:var(--border);bottom:12px;content:"";left:15px;position:absolute;top:12px;width:2px}.timeline-item{align-items:flex-start;display:flex;gap:16px;padding:10px 0;position:relative}.timeline-dot{border:2px solid #16100f;border:2px solid var(--bg-primary);border-radius:50%;flex-shrink:0;height:12px;margin-top:4px;position:relative;width:12px;z-index:1}.timeline-dot.received{background:#006cb8;background:var(--blue);box-shadow:0 0 8px #006cb866}.timeline-dot.processing{background:#e67e22;background:var(--orange);box-shadow:0 0 8px #e67e2266}.timeline-dot.completed{background:#27ae60;background:var(--green);box-shadow:0 0 8px #175e5466}.timeline-dot.failed{background:#e74c3c;background:var(--red);box-shadow:0 0 8px #8c151566}.timeline-content{flex:1 1}.timeline-state{font-size:14px;font-weight:700}.timeline-msg,.timeline-time{color:#8a6b64;color:var(--text-muted);font-size:13px}.timeline-msg{margin-top:2px}.summary-box{background:linear-gradient(135deg,#175e5414,#006cb80d);border:1px solid #175e5433;border-radius:10px;color:#27ae60;color:var(--green);font-size:15px;font-weight:600;margin-top:16px;padding:16px 20px}.info-table{border-collapse:collapse;font-size:14px;width:100%}.info-table th{background:#1f1513;background:var(--bg-secondary);color:#8a6b64;color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:.5px;text-align:left;text-transform:uppercase}.info-table td,.info-table th{border-bottom:1px solid #4a2c28;border-bottom:1px solid var(--border);padding:10px 14px}.info-table td{color:#c9b0a8;color:var(--text-secondary)}.info-table tr:last-child td{border-bottom:none}.empty-state{color:#8a6b64;color:var(--text-muted);font-size:14px;padding:32px;text-align:center}.badge.vector-mode{background:#006cb81f;color:#006cb8}.badge.llm-mode{background:#8c15151f;color:#c0392b}.badge.hybrid-mode{background:#b26f161f;color:#b26f16}.badge.vector-llm-mode{background:#175e541f;color:#175e54}.badge.hybrid-os-mode{background:#48299c24;color:#5b3fb1}.mode-filter-tabs{background:#1f1513;background:var(--bg-secondary);border-radius:7px;display:flex;gap:2px;padding:3px;width:fit-content}.mode-filter-tab{background:#0000;border:none;border-radius:5px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;font-size:13px;font-weight:600;padding:4px 12px;transition:all .2s}.mode-filter-tab:hover{background:#281a18;background:var(--bg-card);color:#f2e8e4;color:var(--text-primary)}.mode-filter-tab.active{background:#8c1515;background:var(--accent);box-shadow:0 2px 8px #8c151559;color:#fff}.result-mode-tabs{background:#1f1513;background:var(--bg-secondary);border-radius:10px;display:flex;gap:4px;padding:4px;width:fit-content}.result-mode-tab{align-items:center;background:#0000;border:none;border-radius:7px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:8px 20px;transition:all .2s}.result-mode-tab:hover{background:#281a18;background:var(--bg-card);color:#f2e8e4;color:var(--text-primary)}.result-mode-tab.active{background:#8c1515;background:var(--accent);box-shadow:0 2px 8px #8c151559;color:#fff}.tab-active-indicator{font-size:12px;font-weight:400;opacity:.7}.theme-toggle{align-items:center;background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:8px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:6px 14px;transition:all .2s}.theme-toggle:hover{border-color:#8c1515;border-color:var(--accent);color:#f2e8e4;color:var(--text-primary)}.theme-toggle-icon{font-size:16px;line-height:1}[data-theme=light] .app-logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f2e8e4,#8c1515);background:linear-gradient(135deg,var(--text-primary),var(--accent));-webkit-background-clip:text}[data-theme=light] .badge.vector-mode{background:#005f8a1a;color:#005f8a}[data-theme=light] .badge.llm-mode{background:#e74c3c1f;background:var(--red-bg);color:#8c1515;color:var(--accent)}[data-theme=light] .badge.hybrid-mode{background:#e67e221f;background:var(--orange-bg);color:#e67e22;color:var(--orange)}[data-theme=light] .badge.vector-llm-mode{background:#27ae601f;background:var(--green-bg);color:#175e54;color:var(--palo-alto)}[data-theme=light] .badge.hybrid-os-mode{background:#5b3fb11a;color:#5b3fb1}[data-theme=light] .rank-dot.gold{background:linear-gradient(135deg,#b26f16,#8a5210)}[data-theme=light] .rank-dot.silver{background:linear-gradient(135deg,#64748b,#475569)}[data-theme=light] .data-table tbody tr:hover{background:#321f1d;background:var(--bg-card-hover)}[data-theme=light] .submit-btn{box-shadow:0 2px 10px #8c151540}[data-theme=light] .timeline-dot{border-color:#16100f;border-color:var(--bg-primary)}[data-theme=light] ::-webkit-scrollbar-track{background:#1f1513;background:var(--bg-secondary)}[data-theme=light] ::-webkit-scrollbar-thumb{background:#4a2c28;background:var(--border)}.login-container{align-items:center;background:#16100f;background:var(--bg-primary);display:flex;justify-content:center;min-height:100vh}.login-card{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border-top:4px solid #8c1515;border:1px solid var(--border);border-radius:14px;border-top:4px solid var(--accent);box-shadow:0 8px 32px #0003;max-width:400px;padding:40px;width:100%}.login-header{margin-bottom:32px;text-align:center}.login-header .app-logo-icon{margin:0 auto 16px}.login-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#f2e8e4,#c0392b);background:linear-gradient(135deg,var(--text-primary),var(--accent-hover));-webkit-background-clip:text;font-family:"Source Serif 4",Georgia,serif;font-size:22px;font-weight:700;margin-bottom:4px}.login-header p{color:#8a6b64;color:var(--text-muted);font-size:14px}.login-form{display:flex;flex-direction:column;gap:16px}.login-field label{color:#8a6b64;color:var(--text-muted);display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.login-field input{background:#1a110f;background:var(--bg-input);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:8px;color:#f2e8e4;color:var(--text-primary);font-size:14px;outline:none;padding:10px 14px;transition:border-color .15s;width:100%}.login-field input:focus{border-color:#8c1515;border-color:var(--accent)}.login-error{background:#e74c3c1f;background:var(--red-bg);border:1px solid #8c151533;border-radius:6px;color:#e74c3c;color:var(--red);font-size:14px;padding:8px 12px}.file-upload-zone{margin-bottom:16px}.file-upload-label{color:#8a6b64;color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.file-drop-area{background:#1f1513;background:var(--bg-secondary);border:2px dashed #4a2c28;border:2px dashed var(--border);border-radius:12px;cursor:pointer;padding:24px;text-align:center;transition:all .2s}.file-drop-area.drag-over,.file-drop-area:hover{background:#8c15152e;background:var(--accent-glow);border-color:#8c1515;border-color:var(--accent)}.file-drop-area.drag-over{transform:scale(1.01)}.file-drop-area.uploaded{background:#27ae601f;background:var(--green-bg);border-color:#27ae60;border-color:var(--green);border-style:solid}.file-upload-status{align-items:center;color:#8a6b64;color:var(--text-muted);display:flex;font-size:14px;gap:10px;justify-content:center}.file-upload-status.uploaded{justify-content:flex-start;text-align:left}.file-upload-icon{font-size:20px}.file-upload-status.uploaded .file-upload-icon{color:#27ae60;color:var(--green);font-weight:800}.file-upload-name{color:#f2e8e4;color:var(--text-primary);font-size:14px;font-weight:600}.file-upload-meta{color:#8a6b64;color:var(--text-muted);font-size:13px;margin-top:2px}.file-upload-unmapped{color:#e67e22;color:var(--orange);font-size:12px;margin-top:2px}.file-preview{margin-top:10px}.file-upload-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.file-submit-options{align-items:flex-start;background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:10px;display:flex;gap:24px;margin-top:16px;padding:14px 16px}.file-option-group label{color:#8a6b64;color:var(--text-muted);display:block;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.mode-checkboxes{display:flex;gap:12px}.mode-checkbox{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:6px}.mode-checkbox input[type=checkbox]{accent-color:#8c1515;accent-color:var(--accent)}.top-n-input{background:#1a110f;background:var(--bg-input);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:6px;color:#f2e8e4;color:var(--text-primary);font-size:14px;padding:6px 10px;width:60px}.top-n-input:focus{border-color:#8c1515;border-color:var(--accent)}.expenditure-list{display:flex;flex-direction:column;gap:2px}.expenditure-row{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:all .15s}.expenditure-row.expanded{border-color:#8c1515;border-color:var(--accent);box-shadow:0 2px 10px #8c15152e;box-shadow:0 2px 10px var(--accent-glow)}.expenditure-row-header{align-items:center;border-left:3px solid #0000;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:8px 14px;transition:background .15s,border-left .15s}.expenditure-row.expanded .expenditure-row-header{background:#8b000012;border-left-color:#8b000059}.expenditure-row-header:hover{background:#321f1d;background:var(--bg-card-hover)}.batch-exp-row{align-items:center;cursor:pointer;display:flex;gap:8px;outline:none;padding:7px 10px;transition:background .12s,border-left-color .12s,box-shadow .12s}.batch-exp-row:hover:not(.batch-exp-row--open){background:#321f1d!important;background:var(--bg-card-hover)!important;border-left-color:#8b00002e!important}.batch-exp-row:focus-visible{background:#8b00001c!important;border-left-color:#8b00008c!important;box-shadow:inset 0 0 0 2px #8b000059}.batch-exp-row--open:focus-visible{box-shadow:inset 0 0 0 2px #8b000080}.exp-collapse-icon{color:#8a6b64;color:var(--text-muted);flex-shrink:0;font-size:11px;width:12px}.exp-id{font-size:13px;min-width:60px}.exp-amount,.exp-id{color:#f2e8e4;color:var(--text-primary);font-weight:700}.exp-amount{min-width:80px}.exp-category{color:#c9b0a8;color:var(--text-secondary);font-size:13px;max-width:200px;min-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exp-award{color:#8a6b64;color:var(--text-muted);font-size:13px;min-width:90px}.exp-match-summary{align-items:center;display:flex;font-size:13px;margin-left:auto}.expenditure-row-body{background:#1f1513;background:var(--bg-secondary);border-top:1px solid #4a2c28;border-top:1px solid var(--border);padding:10px 14px 14px}.exp-detail-grid{grid-gap:4px 20px;border-bottom:1px solid #4a2c28;border-bottom:1px solid var(--border);display:grid;font-size:13px;gap:4px 20px;grid-template-columns:1fr 1fr;margin-bottom:8px;padding-bottom:8px}.score-legend-wrap{align-items:center;display:inline-flex;position:relative}.score-legend{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border-top:3px solid #8c1515;border:1px solid var(--border);border-radius:10px;border-top:3px solid var(--accent);box-shadow:0 8px 24px #0003;margin-top:6px;min-width:280px;padding:14px 16px;position:absolute;right:0;top:100%;z-index:100}.score-legend-item{margin-bottom:10px}.score-legend-item:last-of-type{margin-bottom:12px}.score-legend-header{align-items:center;display:flex;gap:8px;margin-bottom:2px}.score-legend-abbr{color:#c0392b;color:var(--accent-hover);font-size:13px;font-weight:700;min-width:28px}.score-legend-label{color:#f2e8e4;color:var(--text-primary);flex:1 1;font-size:13px;font-weight:600}.score-legend-max{font-family:monospace;font-size:13px}.score-legend-desc,.score-legend-max{color:#8a6b64;color:var(--text-muted)}.score-legend-desc{font-size:12px;line-height:1.4;margin-bottom:4px}.score-legend-bar{border-radius:2px;display:flex;gap:1px;height:4px;overflow:hidden}.score-legend-bar-segment{border-radius:2px;height:100%}.score-legend-bar-segment.high{background:#27ae60;background:var(--green)}.score-legend-bar-segment.mid{background:#e67e22;background:var(--orange)}.score-legend-bar-segment.low{background:#4a2c28;background:var(--border)}.score-legend-colors{border-top:1px solid #4a2c28;border-top:1px solid var(--border);display:flex;font-size:13px;gap:16px;padding-top:8px}.score-legend-color-item{align-items:center;color:#8a6b64;color:var(--text-muted);display:flex;gap:5px}.score-color-dot{border-radius:50%;height:8px;width:8px}.score-color-dot.high{background:#27ae60;background:var(--green)}.score-color-dot.mid{background:#e67e22;background:var(--orange)}.score-color-dot.low{background:#4a2c28;background:var(--border)}.submit-section{background:#281a18;background:var(--bg-card);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:10px;margin-bottom:12px;padding:14px 16px}.submit-section-label{color:#c0392b;color:var(--accent-hover);font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.submit-section-row{align-items:center;display:flex;gap:10px}.file-select{background:#1a110f;background:var(--bg-input);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:6px;color:#f2e8e4;color:var(--text-primary);cursor:pointer;flex:1 1;font-size:14px;outline:none;padding:7px 12px}.file-select:focus{border-color:#8c1515;border-color:var(--accent)}.upload-inline-btn{background:#1f1513;background:var(--bg-secondary);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:6px;color:#c9b0a8;color:var(--text-secondary);cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px;transition:all .15s;white-space:nowrap}.upload-inline-btn:hover{border-color:#8c1515;border-color:var(--accent);color:#8c1515;color:var(--accent)}.award-picker{background:#1f1513;background:var(--bg-secondary);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:8px;overflow:hidden}.award-picker-header{align-items:center;background:#281a18;background:var(--bg-card);border-bottom:1px solid #4a2c28;border-bottom:1px solid var(--border);display:flex;gap:12px;padding:8px 12px}.award-search{background:#1a110f;background:var(--bg-input);border:1px solid #4a2c28;border:1px solid var(--border);border-radius:5px;color:#f2e8e4;color:var(--text-primary);font-size:13px;margin-left:auto;outline:none;padding:4px 10px;width:160px}.award-search:focus{border-color:#8c1515;border-color:var(--accent)}.award-picker-list{max-height:240px;overflow-y:auto;padding:4px 0}.award-picker-item{align-items:center;cursor:pointer;display:flex;font-size:13px;gap:8px;padding:4px 12px;transition:background .1s}.award-picker-item:hover{background:#321f1d;background:var(--bg-card-hover)}.award-picker-item input[type=checkbox]{accent-color:#8c1515;accent-color:var(--accent);flex-shrink:0}@media (pointer:coarse){.back-btn,.detail-panel-tab,.detail-toggle-btn,.expenditure-row-header,.json-toggle-btn,.mode-filter-tab,.page-btn,.result-mode-tab,.submit-btn,.tab-btn,.theme-toggle,.upload-inline-btn{min-height:44px}}@media (min-width:769px) and (max-width:1024px){.app-shell{padding:0 20px}.app-header{gap:8px;grid-template-columns:auto 1fr auto}.app-logo h1{font-size:18px}.app-logo span{font-size:13px}.tab-btn{font-size:14px;padding:8px 12px}.kv-grid{grid-template-columns:1fr 1fr}.stats-strip{flex-wrap:wrap;gap:6px}.score-legend{left:0;min-width:260px;right:auto}}@media (max-width:768px){.app-shell{padding:0 12px}.app-header{gap:10px;grid-template-columns:1fr;padding:10px 0}.app-logo h1{font-size:17px}.app-logo span{font-size:13px}.header-controls,.header-nav,.tab-bar{justify-content:flex-start}.tab-bar{flex-wrap:wrap;width:100%}.tab-btn{flex:1 0 auto;font-size:14px;padding:8px 14px;text-align:center}.mode-filter-tabs{flex-wrap:wrap;width:100%}.mode-filter-tab{flex:1 0 auto;text-align:center}.list-toolbar{align-items:stretch;flex-direction:column;gap:8px}.toolbar-left{flex-wrap:wrap;gap:8px}.toolbar-right{justify-content:flex-end}.data-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{min-width:600px}.data-table.compact{min-width:520px}.stats-strip{flex-wrap:wrap;gap:6px}.stat-pill{flex:1 0 40%}.file-upload-grid,.kv-grid{grid-template-columns:1fr}.file-submit-options,.submit-section-row{flex-direction:column}.submit-section-row{align-items:stretch}.expenditure-row-header{flex-wrap:wrap}.exp-category{max-width:120px}.score-legend{bottom:12px;left:12px;min-width:0;min-width:auto;position:fixed;right:12px;top:auto}.detail-bar{gap:6px}.detail-bar,.detail-panel-tabs{flex-wrap:wrap}.award-card-header{flex-direction:column;gap:10px}.award-rank{align-items:flex-start}.total-score{text-align:left}.login-card{margin:16px;padding:24px 20px}.exp-detail-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}
/*# sourceMappingURL=main.bf5c48d4.css.map*/