
.fis-lab-tool{width:100%;min-width:0}
.flt-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.flt-head>button{padding:8px 11px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-panel);color:var(--ui-panel-fg)}.flt-head h1{margin:0;font-size:23px}.flt-head p{margin:4px 0 0;color:var(--ui-muted)}
.flt-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:14px;align-items:start}.flt-grid.batch .span2{grid-column:1/-1}.flt-card{background:var(--ui-card);color:var(--ui-card-fg);border:1px solid var(--ui-border);border-radius:16px;padding:17px;box-shadow:var(--ui-shadow-soft);min-width:0}.flt-card h2{margin:0 0 8px}.flt-card h3{margin:16px 0 7px}.flt-card p{color:var(--ui-muted)}
.flt-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.flt-section-head p{margin:2px 0 0}.flt-total{text-align:right}.flt-total span{display:block;font-size:10px;color:var(--ui-muted)}.flt-total strong{font-size:22px}
.flt-fields{display:grid;gap:10px;margin:12px 0}.flt-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.flt-fields.three{grid-template-columns:repeat(3,minmax(0,1fr))}.flt-fields.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.flt-fields label,.flt-label,.upload-card label{display:flex;flex-direction:column;gap:5px;font-size:11px}.flt-fields input,.flt-fields select,.flt-label textarea,.upload-card input,.upload-card select{width:100%;padding:9px}.flt-label textarea{min-height:250px;resize:vertical;line-height:1.45;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.flt-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.flt-actions button,.flt-card button{padding:8px 11px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-panel);color:var(--ui-panel-fg)}.flt-card button.gold{background:var(--ui-secondary)!important;color:var(--ui-secondary-fg)!important;font-weight:700}
.spf-table-wrap{overflow:auto;max-height:660px;border:1px solid var(--ui-border);border-radius:10px}.spf-table{width:100%;border-collapse:collapse;min-width:900px}.spf-table th,.spf-table td{padding:8px;border-bottom:1px solid var(--ui-divider);font-size:11px;text-align:left;vertical-align:middle}.spf-table th{position:sticky;top:0;background:var(--ui-table-header);z-index:2}.spf-table td:nth-child(2) strong{display:block}.spf-table td:nth-child(2) small{display:block;color:var(--ui-muted);margin-top:2px}.spf-table input[type=number]{width:85px}.spectrum{display:inline-block;padding:3px 6px;border-radius:999px;background:var(--ui-badge);font-size:9px}.spf-status.good{color:var(--ui-success)}.spf-status.bad{color:var(--ui-danger);font-weight:700}
.spf-spectrum{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.spf-spectrum div,.metric{border:1px solid var(--ui-divider);border-radius:10px;padding:10px;background:var(--ui-panel)}.spf-spectrum span,.metric span{display:block;font-size:10px;color:var(--ui-muted)}.spf-spectrum b,.metric strong{display:block;font-size:17px;margin-top:3px}.removed{display:flex;flex-direction:column;gap:7px}.removed div{padding:8px;border:1px solid var(--ui-divider);border-radius:9px}.removed b,.removed small{display:block}.removed small{color:var(--ui-muted);margin-top:2px}.flt-warning{margin-top:12px;padding:10px;border-left:3px solid var(--ui-warning);background:var(--ui-panel);font-size:11px;line-height:1.45}
.batch-summary{display:flex;flex-direction:column;gap:8px}.flt-note{padding:10px;border-radius:9px;background:var(--ui-panel);color:var(--ui-muted);font-size:11px;line-height:1.4}.batch-results{overflow:auto}.batch-results table{width:100%;border-collapse:collapse}.batch-results th,.batch-results td{padding:8px;border-bottom:1px solid var(--ui-divider);text-align:left;font-size:11px}
.knowledge-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.knowledge-count{text-align:right}.knowledge-count strong{font-size:26px;display:block}.knowledge-count span,.knowledge-count small{display:block;color:var(--ui-muted);font-size:10px}.knowledge .flt-section-head input{min-width:300px;padding:8px}.knowledge-list{display:flex;flex-direction:column;gap:8px}.knowledge-list article{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--ui-divider);border-radius:10px;background:var(--ui-panel)}.paper-icon{width:42px;height:42px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--ui-secondary);color:var(--ui-secondary-fg);font-size:10px;font-weight:800}.knowledge-list h3{font-size:13px;margin:0}.knowledge-list p,.knowledge-list small{margin:2px 0 0;font-size:10px;color:var(--ui-muted)}.paper-actions{display:flex;gap:6px;align-items:center}.paper-actions a,.paper-actions button{font-size:10px}.knowledge-empty{padding:32px;text-align:center;border:1px dashed var(--ui-border);border-radius:10px}.upload-card{display:flex;flex-direction:column;gap:10px}
.dilution .metric{margin-bottom:8px}
.empty{color:var(--ui-muted)}
@media(max-width:1100px){.flt-grid{grid-template-columns:1fr}.flt-fields.four{grid-template-columns:repeat(2,minmax(0,1fr))}.knowledge-head{display:block}.knowledge-count{text-align:left;margin-top:10px}}
@media(max-width:700px){.flt-fields.two,.flt-fields.three,.flt-fields.four{grid-template-columns:1fr}.knowledge-list article{grid-template-columns:40px minmax(0,1fr)}.paper-actions{grid-column:1/-1}.knowledge .flt-section-head{display:block}.knowledge .flt-section-head input{min-width:0;width:100%;margin-top:8px}}
