*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;padding:20px;background:#f5f5f5;color:#333}.container{max-width:1400px;margin:0 auto;background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 8px #0000001a}h1{color:#2c3e50;margin-bottom:10px}.description{color:#666;margin-bottom:30px;line-height:1.6}.upload-section{margin-bottom:30px;padding:40px;background:#f8f9fa;border:2px dashed #ddd;border-radius:8px;text-align:center;cursor:pointer;transition:all .2s}.upload-section:hover{border-color:#3498db;background:#f0f7ff}.upload-section.drag-over{border-color:#3498db;background:#e3f2fd}.upload-icon{font-size:48px;margin-bottom:15px;color:#999}.upload-text{font-size:18px;font-weight:600;color:#555;margin-bottom:5px}.upload-subtext{font-size:14px;color:#999}#fileInput{display:none}.stats-section{display:none;margin-bottom:30px;padding:20px;background:#f8fbff;border-radius:6px;border-left:3px solid #3498db}.stats-section h3{color:#2c3e50;margin-bottom:15px;font-size:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.stat-box{padding:10px 15px;background:#fff;border-radius:4px;border-left:3px solid #3498db}.stat-label{font-size:12px;color:#666;text-transform:uppercase}.stat-value{font-size:20px;font-weight:600;color:#2c3e50}.unique-models{margin-top:8px;display:flex;flex-wrap:wrap;gap:5px}.model-tag{display:inline-block;background:#e3f2fd;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;color:#1976d2}.bulk-edit-section{display:none;margin-bottom:30px;padding:20px;background:#f8f9fa;border-radius:6px}.bulk-edit-section h3{color:#2c3e50;margin-bottom:15px;font-size:18px}.button-group{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}button{padding:10px 18px;border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}button:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.btn-primary{background:#3498db;color:#fff}.btn-primary:hover{background:#2980b9}.btn-secondary{background:#95a5a6;color:#fff}.btn-secondary:hover{background:#7f8c8d}.btn-success{background:#27ae60;color:#fff}.btn-success:hover{background:#229954}.btn-warning{background:#e67e22;color:#fff}.btn-warning:hover{background:#ca6510}.btn-info{background:#9b59b6;color:#fff}.btn-info:hover{background:#8e44ad}.btn-download{background:#8e44ad;color:#fff}.btn-download:hover{background:#7d3c98}.operations-section{margin-top:20px;padding-top:20px;border-top:2px solid #e0e0e0}.operations-section h4{color:#2c3e50;margin-bottom:15px;font-size:16px}.operation-group{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:15px}.input-group{display:flex;flex-direction:column}.input-group label{font-weight:600;margin-bottom:6px;font-size:14px;color:#2c3e50}.input-group input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;min-width:150px}.input-group input:focus{outline:none;border-color:#3498db}.params-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:15px}.lines-section{display:none}.lines-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.lines-header h3{color:#2c3e50;font-size:18px}.lines-container{max-height:600px;overflow-y:auto;padding-right:10px}.line-item{border:2px solid #e0e0e0;border-radius:6px;padding:15px;margin-bottom:15px;transition:all .2s;background:#fff}.line-item:hover{background:#f9fafb}.line-item.selected{border-color:#3498db;background:#f0f7ff}.line-content{display:flex;gap:15px;align-items:flex-start}.line-checkbox{width:18px;height:18px;margin-top:2px;cursor:pointer}.line-details{flex:1}.line-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.line-id{font-weight:600;font-size:14px;color:#2c3e50}.line-method{font-size:12px;color:#999;margin-left:10px}.line-model{font-size:12px;background:#e3f2fd;padding:4px 10px;border-radius:4px;font-weight:600;color:#1976d2;font-family:Monaco,Courier New,monospace}.line-params{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.param-badge{font-size:11px;padding:4px 8px;border-radius:4px;font-weight:600}.param-temp{background:#fff9e6;color:#f39c12}.param-tokens{background:#e8f5e9;color:#27ae60}.param-topp{background:#f3e5f5;color:#9b59b6}.line-json{margin-top:10px}.line-json summary{cursor:pointer;font-size:12px;color:#666;user-select:none;padding:5px 0}.line-json summary:hover{color:#2c3e50}.line-json pre{margin-top:10px;padding:12px;background:#f8f9fa;border-radius:4px;font-size:12px;overflow-x:auto;border:1px solid #e0e0e0}.hidden{display:none!important}
